title: Grails/groovy empty strings converted to null - invalid byte sequence for encoding "UTF8": 0x00
body: <p>i'm using hibernate to persist my data into database, bug i keep getting this error <code>invalid byte sequence for encoding "UTF8": 0x00</code> </p>
  
  <p>with a quick search i found that postgresql doesn't support storing null characters in text fields, and that this can be desabled in Config.groovy 
  <code>"grails.databinding.convertEmptyStringsToNull"</code>
  but i don't have this file in my project, so, i'm kinda lost..
  what can i do to solve this?
  package beans</p>
  
  <p>Controller:</p>
  
  <pre><code>class AlunoController {
      def index() { 
          def listaCidade = Cidade.list()
          def listaProfissao = Profissao.list()
          def listaEscolaridade = Escolaridade.list()
          def listaCurso = Curso.list()
          def listaUnidade = Unidade.list()
          render(view:"/aluno/index", model:[listaCidade:listaCidade,
                  listaProfissao:listaProfissao, listaEscolaridade:listaEscolaridade, 
                  listaCurso:listaCurso, listaUnidade:listaUnidade])        
      }
  
      def salvar(){
          Aluno aluno = new Aluno()
          println params.escolaridade 
          println params.escolaridade != "none"
          println params.escolaridade != 'none' 
          aluno.nome = params.nome
          aluno.rg = params.rg
          aluno.cpf = params.cpf
          aluno.ra = params.ra
          aluno.turma = params.turma.toInteger()       
          aluno.genero = params.genero
          aluno.cod_barras = params.cod_barras
          aluno.nascimento = Date.parse("yyyy-MM-dd", params.nascimento)
          aluno.curso = Curso.get(params.curso)
          aluno.endereco = params.endereco               
          if (params.nroendereco != ''){
              aluno.nroendereco = Integer.parseInt(params.nroendereco)
          }           
          aluno.telefone = params.telefone            
          aluno.bairro = params.bairro
          aluno.complemento = params.complemento          
          aluno.cidade = Cidade.get(params.cidade)         
          aluno.profissao = Profissao.get(params.profissao)     
  
              aluno.escolaridade = Escolaridade.get(params.escolaridade)        
  
          aluno.unidade = Unidade.get(params.unidade)
  
          if (!aluno.validate()) {
              render(view:"/layouts/message", model:[mensagem:"Ops, algo deu errado!"])
              aluno.errors.allErrors.each {
                  println it
              }           
          }else{
              aluno.save (flush: true)
              render(view:"/layouts/message", model:[mensagem:"Aluno salvo com sucesso!"])
          }      
      }
  
      def mostrar(){
          Aluno aluno = new Aluno()
          render(template:"/aluno/form", model: [aluno:aluno])
      }
  }
  </code></pre>
  
  <p>Form:</p>
  
  <pre><code>&lt;g:form controller="aluno" action="salvar"&gt;    
      &lt;label&gt;Nome:&lt;/label&gt;
      &lt;g:textField name="nome" required="true"/&gt;&lt;br&gt;
      &lt;label&gt;RG:&lt;/label&gt;
      &lt;g:textField  name="rg" onkeypress="validate(event)"/&gt; &lt;br&gt;
      &lt;label&gt;CPF:&lt;/label&gt;
      &lt;g:textField name="cpf" onkeypress="validate(event)"/&gt; &lt;br&gt;
      &lt;label&gt;RA:&lt;/label&gt;
      &lt;g:textField  name="ra" required="true" onkeypress="validate(event)"/&gt;&lt;br&gt;
      &lt;label&gt;Turma:&lt;/label&gt;
      &lt;g:textField name="turma" required="true" onkeypress="validate(event)"/&gt;&lt;br&gt;
      &lt;label&gt;Genero: &lt;/label&gt;
      &lt;select name="genero"&gt;
          &lt;option value="M"&gt;Masculino&lt;/option&gt;
          &lt;option value="F"&gt;Feminino&lt;/option&gt;
      &lt;/select&gt;&lt;br&gt;
      &lt;label&gt;Código de Barras:&lt;/label&gt;
      &lt;g:textField name="cod_barras" required="true"/&gt;&lt;br&gt;
      &lt;label&gt;Data de Nascimento:&lt;/label&gt;
      &lt;input type="date" name="nascimento" required="true"&gt;&lt;br&gt;
      &lt;label&gt;Unidade Universitaria:&lt;/label&gt;
      &lt;g:select name="unidade" from="${listaUnidade}" optionValue="nome" optionKey="id" required="true"/&gt;&lt;br&gt;
      &lt;label&gt;Curso:&lt;/label&gt;
      &lt;g:select name="curso" from="${listaCurso}" optionValue="nome" optionKey="id" required="true"/&gt;&lt;br&gt;         
      &lt;label&gt;Endereço:&lt;/label&gt;
      &lt;g:textField  name="endereco"/&gt;&lt;br&gt;    
      &lt;label&gt;Número:&lt;/label&gt;
      &lt;g:textField name="nroendereco" onkeypress="validate(event)"/&gt;&lt;br&gt;
      &lt;label&gt;Telefone:&lt;/label&gt;
      &lt;g:textField name="telefone" onkeypress="validate(event)"/&gt;&lt;br&gt;
      &lt;label&gt;Bairro:&lt;/label&gt;
      &lt;g:textField  name="bairro"/&gt;&lt;br&gt;
      &lt;label&gt;Complemento:&lt;/label&gt;
      &lt;g:textField name="complemento"/&gt;&lt;br&gt;        
      &lt;label&gt;Cidade:&lt;/label&gt;
      &lt;g:select name="cidade" from="${listaCidade}" optionValue="nome" optionKey="id" required="true"/&gt;&lt;br&gt;         
      &lt;label&gt;Profissão:&lt;/label&gt;
      &lt;g:select name="profissao" from="${listaProfissao}" optionValue="nome" optionKey="id" required="true"/&gt;&lt;br&gt;     
      &lt;label for="escolaridade"&gt;Escolaridade:&lt;/label&gt;
      &lt;g:select name="escolaridade" from="${listaEscolaridade}" optionValue="nome" optionKey="id"  noSelection="${["none":'Selecione...']}" required="true"/&gt;&lt;br&gt;         
      &lt;input type="submit" value="Salvar"/&gt;
      &lt;input type="button" name="btnCancelar" value="Cancelar"/&gt; 
      &lt;input type="hidden" name="id" value=""&gt;
  &lt;/g:form&gt;
  </code></pre>