A combo ajax de UF e municipio nao funciona no projeto rhtutorial(rh) Jaguar versão 6.1.3
Eis o codigo, o que acontece é que a uf é carregada, mas municipio não, e não da erro algum!
<plcf:celula >
<plcf:titulo tituloChave="label.endereco.uf"/>
<plcf:comboDinamico id="enderecoResidencial_uf" value="#{funcionario.enderecoResidencial.uf}"
dominio="UfEntity" exibeBranco="S" ajudaChave="ajuda.endereco.uf"
navegacaoParaCampos="enderecoResidencial.municipio"/>
</plcf:celula>
<plcf:celula>
<plcf:titulo tituloChave="municipio.titulo" />
<plcf:comboDinamico id="enderecoResidencial_municipio"
value="#{funcionario.enderecoResidencial.municipio}" dominio="MunicipioEntity"
exibeBranco="S" ajudaChave="ajuda.endereco.municipio" comboAninhado="S"/>
</plcf:celula>
Autor: Tom Rocha
88 comentários
<plcf:titulo tituloChave="label.endereco.uf"/>
<plcf:comboDinamico id="enderecoResidencial_uf" value="#{funcionario.enderecoResidencial.uf}"
dominio="UfEntity" exibeBranco="S" ajudaChave="ajuda.endereco.uf"
navegacaoParaCampos="enderecoResidencial.municipio">
<f:ajax event="valueChange" render="enderecoResidencial_municipio" immediate="true"/>
</plcf:comboDinamico>
</plcf:celula>
<plcf:celula>
<plcf:titulo tituloChave="municipio.titulo" />
<plcf:comboDinamico id="enderecoResidencial_municipio"
value="#{funcionario.enderecoResidencial.municipio}" dominio="MunicipioEntity"
exibeBranco="S" ajudaChave="ajuda.endereco.municipio" comboAninhado="S"/>
</plcf:celula>
#rhtutorial# DEBUG [AbstractTransactionImpl] begin 11:43:40,006 [http-8080-2]
#rhtutorial# DEBUG [LogicalConnectionImpl] Obtaining JDBC connection 11:43:40,006 [http-8080-2]
#rhtutorial# DEBUG [LogicalConnectionImpl] Obtained JDBC connection 11:43:40,006 [http-8080-2]
#rhtutorial# DEBUG [JdbcTransaction] initial autocommit status: true 11:43:40,006 [http-8080-2]
#rhtutorial# DEBUG [JdbcTransaction] disabling autocommit 11:43:40,006 [http-8080-2]
#rhtutorial# DEBUG [SQL ]
select
municipioe0_.id as id9_,
municipioe0_.data_ult_alteracao as data2_9_,
municipioe0_.usuario_ult_alteracao as usuario3_9_,
municipioe0_.versao as versao9_,
municipioe0_.nome as nome9_,
municipioe0_.uf as uf9_
from
municipio municipioe0_
where
municipioe0_.uf=? 11:43:40,008 [http-8080-2]
Hibernate:
select
municipioe0_.id as id9_,
municipioe0_.data_ult_alteracao as data2_9_,
municipioe0_.usuario_ult_alteracao as usuario3_9_,
municipioe0_.versao as versao9_,
municipioe0_.nome as nome9_,
municipioe0_.uf as uf9_
from
municipio municipioe0_
where
municipioe0_.uf=?
#rhtutorial# DEBUG [Loader ] Result set row: 0 11:43:40,011 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#18] 11:43:40,011 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 1 11:43:40,013 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#19] 11:43:40,013 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 2 11:43:40,013 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#20] 11:43:40,013 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 3 11:43:40,014 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#21] 11:43:40,014 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 4 11:43:40,014 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#22] 11:43:40,014 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 5 11:43:40,014 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#23] 11:43:40,014 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 6 11:43:40,015 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#24] 11:43:40,015 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 7 11:43:40,015 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#25] 11:43:40,015 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 8 11:43:40,016 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#26] 11:43:40,016 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 9 11:43:40,016 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#27] 11:43:40,016 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 10 11:43:40,017 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#28] 11:43:40,017 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result set row: 11 11:43:40,017 [http-8080-2]
#rhtutorial# DEBUG [Loader ] Result row: EntityKey[com.empresa.rhtutorial.entity.MunicipioEntity#29] 11:43:40,017 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#18] 11:43:40,018 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#18] 11:43:40,019 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#19] 11:43:40,019 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#19] 11:43:40,019 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#20] 11:43:40,019 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#20] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#21] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#21] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#22] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#22] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#23] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#23] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#24] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#24] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#25] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#25] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#26] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#26] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#27] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#27] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#28] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#28] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Resolving associations for [com.empresa.rhtutorial.entity.MunicipioEntity#29] 11:43:40,020 [http-8080-2]
#rhtutorial# DEBUG [TwoPhaseLoad] Done materializing entity [com.empresa.rhtutorial.entity.MunicipioEntity#29] 11:43:40,021 [http-8080-2]
#rhtutorial# DEBUG [StatefulPersistenceContext] Initializing non-lazy collections 11:43:40,021 [http-8080-2]
#rhtutorial# DEBUG [UnidadeOrganizacionalDAO] ########## ENTROU EM ROLLBACK PARA UNIDADE DE PERSISTENCIA DEFAULT! 11:43:40,021 [http-8080-2]
#rhtutorial# DEBUG [AbstractTransactionImpl] rolling back 11:43:40,021 [http-8080-2]
#rhtutorial# DEBUG [JdbcTransaction] rolled JDBC Connection 11:43:40,021 [http-8080-2]
#rhtutorial# DEBUG [JdbcTransaction] re-enabling autocommit 11:43:40,021 [http-8080-2]
#rhtutorial# DEBUG [LogicalConnectionImpl] Releasing JDBC connection 11:43:40,021 [http-8080-2]
#rhtutorial# DEBUG [LogicalConnectionImpl] Released JDBC connection 11:43:40,021 [http-8080-2]
#rhtutorial# DEBUG [ConnectionProxyHandler] HHH000163: Logical connection releasing its physical connection 11:43:40,021 [http-8080-2]
value="#{unidadeorganizacional.endereco.uf}"
dominio="UfEntity"
exibeBranco="S"
ajudaChave="ajuda.endereco.uf"
navegacaoParaCampos="endereco.municipio">
<f:ajax event="valueChange" render="endereco_municipio" onerror="plc.manipulaErroAjax"/>
</plcf:comboDinamico>
<plcf:comboDinamico id="endereco_municipio"
value="#{unidadeorganizacional.endereco.municipio}"
dominio="MunicipioEntity"
exibeBranco="S"
skipCacheControl="true"
ajudaChave="ajuda.endereco.municipio"
comboAninhado="S"> </plcf:comboDinamico>
Não se faz necessária nenhuma mudança no lado servidor, felizmente. Houve apenas um efeito colateral indesejado na camada de visão, que fica aumentando o espaço entre o componte combobox e o ícone de obrigatoriedade a cada vez que são recarregadas as cidades.