Como utilizar GrailsDomainBinder.getMapping
03/11/2014 20:25
0
Prezados membros,

Quero recupperar o atributo name da table num static mapping de um domínio.

  
...
static mapping = {
table name:"Estado"
sigla(unique:'pais')
sigla column: 'sigla', type:String, size:2
remotePaginate: true
}
...


Para meu propósito, estou usando a seguinte construção


def GrailsDomainBinder = getClass().classLoader.loadClass('org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinder')
def tableName = GrailsDomainBinder.newInstance().getMapping(domainClass)?.table?.name


Porém a variável tableName está voltando nula.

Poderiam lançar uma luz sobre esta questão?

Obrigado!
Tags: GrailsDomainBinder;getMapping;domainClass;mapping


0
Desta forma acredito que vai funcionar.

def binder = new org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinder().getMapping(DomainClass.class)
println binder.table.name


Abs e boa sorte com o projeto.


0
Olá Carlos Eduardo,

Ainda não funcionou... volta nulo.


if (contEntries == 1) {

def binder = new org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsDomainBinder().getMapping(domainClass.class)

%>
<li class="active">
<a data-toggle="tab" href="#home">
<i class="green ace-icon fa fa-home bigger-120"></i>
${binder?.table?.name}
</a>
</li>
<%
}


No mapeamento do domínio, declaro explicitamente [table name]:


static mapping = {
table name:"Estado"
sigla(unique:'pais')
sigla column: 'sigla', type:String, size:2
remotePaginate: true
}



Mas o resultado continua nulo:



Provavelmente eu esteja fazendo algo de errado. Se você puder verificar se funciona em seu ambiente, agradeço!

05/11/2014 12:20


0
No lugar do 'domainClass.class' você deve por o da sua Domain seja ele qual for. Ex.:

class Endereco {
static mapping = { //... }
}

domainClass.class == Endereco.class

Att,


0
Olá Carlos,

Com Estado.class também volta nulo. Como estou customizando as views do scaffolding, não posso fazer referência direta ao nome da classe.

Você consegue identificar meu erro?

Obrigado
05/11/2014 19:21


0
Pedro, você consegue disponibilizar seu projeto em algum repositório git? Da forma que está eu não consigo lhe ajudar muito mais.



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto