jBoss 4.2.3 to jBoss 5.0.0... Quebra Tree!

1 resposta
Arthas

Oi Galera,

Pessoal seguinte temos uma aplicação que funciona normalmente com Seam 2.2.0, Jboss 4.2.3, RichFaces 3.3.1 e PrimeFaces 1.0.0.RC… O cliente precisa que rode no jBoss 5.0.0.

Temos uma tela que usa o rich:tree e rich:recursiveTreeNodesAdaptor esta funciona normalmente no 4.2.3 mas no Jboss 5.0.0, até carrega a tree porém ao clicar em algum node dá o seguinte erro:
Caused by: java.lang.ClassCastException: org.richfaces.component.html.HtmlTree cannot be cast to org.richfaces.component.html.HtmlTree

Com a arvore do primefaces acontece:
Caused by: java.lang.ClassCastException: org.primefaces.model.TreeNode cannot be cast to org.primefaces.model.TreeNode

O erro é exatamente o mesmo, então imagino que seja alguma configuração do JBoss. Mas não encontro nada no tio google.

Alguém daria uma luz?

1 Resposta

Arthas

Consegui resolver:

Na propriedade nodeSelectListener onde por default é passado um evento para o método do bean eu passo o item selecionado ficando assim:

<a4j:outputPanel id="panelTree">
			<rich:tree style="width:300px" 
				nodeSelectListener="#{modal.processSelection(item)}" ajaxSubmitSelection="true" ajaxSingle="true"
				switchType="client" value="#{modal.treeNode}" var="item" ajaxKeys="#{null}" onselected="Richfaces.hideModalPanel('panel#{modal.name}')">
			</rich:tree>
		</a4j:outputPanel>

e no bean

public void processSelection(final Unidade unidade) {
		this.unidade = unidade;
		this.setInstance(this.unidade);
	}

Na documentação do richfaces fala que deveriamos receber no método processSelection um org.richfaces.event.NodeSelectedEvent… Mas por algum motivo razão ou circunstancia… funcionou fazendo desta forma que coloquei acima.

Criado 30 de junho de 2011
Ultima resposta 4 de jul. de 2011
Respostas 1
Participantes 1