Problema com richfaces (modalPanel e extendedDataTable) e javascript

0 respostas
E

Boa Tarde,

Estou desenvolvendo uma tela utilizando RichFaces (JSF) e estou tendo um problema sério ao utlizar uma ModalPanel com extendedDataTable.
Vamos aos fatos, possuo uma tela que tem um campo de pesquisa (nome) e um botão consultar, tela principal. Se o usuário do sistema digitar um nome e tiver mais de uma referência dele na base de dados (busca com LIKE) o sistema abre uma modalpanel, com o extendedDataTable, tela secundária, para que desta forma o usuário selecione o nome desejado na lista que abriu. Este nome que o usuário selecionou irá retornar para o campo de pesquisa da tela principal. Porém ao abrir a modal panel está dando a mensagem de erro javascript "this.selectionManager é nulo ou não é um objeto", já vasculhei a internet inteira e não achei uma solução para o problema. Gostaria de uma ajuda do pessoal do fórum.
tela_principal.xhtml

<a:commandButton 
	 id="consultar"
	 styleClass="button" 
	 value="Consultar"
	 action="#{posVenda.consultarAtendimentos}"
                 oncomplete="{posVenda.pesquisaPessoa eq true }) Richfaces.showModalPanel('posVendaClientes')"
                   reRender="pesquisaPessoaDataTable"
	eventsQueue="posVendaQueue"
	onkeypress="return disableEnterKey(event)"
 />

-----------------------------------------------------------------------

tela_secundaria.xhml (modal com extendedDataTable)

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:s="http://jboss.com/products/seam/taglib"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:a="http://richfaces.org/a4j"
                xmlns:rich="http://richfaces.org/rich">
                	
    <rich:modalPanel reRenderAfterComplete="pesquisaPessoaDataTable" id="posVendaClientes" 
    				autosized="true" 
    				width="498"
    				height="290"
    				>
    				
    				<a:loadScript src="resource://jquery.js"/>	
					<a:loadScript src="/javascript/util.js"/>
	 				<a:loadScript src="/javascript/jquery.maskedinput-1.2.2.min.js"/>
	 				<a:loadScript src="/javascript/jquery.number_format.js"/>
	 				<a:loadScript src="/javascript/jquery.numeric.js"/>
    				
			<rich:messages id="infoMessageAtendimentosClientesPopup" styleClass="message" style="position: fixed; left: 15px; width: 100%; z-index: 1; bottom: 0px; margin-left: 0px; text-align: left;"/>
    				    			
    		<f:facet name="header">
				<h:panelGroup style="text-align: left;">
					<h:outputText value="#{messages['panel.tela.atendimento.pessoa']}"/>
				</h:panelGroup>
			</f:facet>
			
	<div>
	
	 	<rich:extendedDataTable
			 id="pesquisaPessoaDataTable" 
			 value="#{posVenda.listaPessoa}"
			 var="pessoas"
			 width="100%" 
			 height="250px"
			 styleClass="veiculos-table"
			 selectionMode="single"
			 >
	<a:support event="onRowClick"
	      eventsQueue="posVendaQueue"
	 >
	               <f:setPropertyActionListener value="#{pessoas}" target="#{posVenda.selectedPessoa}"/>				</a:support>
			<rich:column id="cpfCnpjPopup" width="180px" sortable="false">
				<f:facet name="header">
					<h:outputText value="CPF / CNPJ" styleClass="form-label"/>
				</f:facet>
				<s:decorate id="cpfCnpjDecorate" template="layout/display.xhtml">
					<h:outputText    id="cpfCnpj"	
							      value="#{pessoas.cpfCnpj()}" 
					  	     styleClass="form-label"
						   />
				</s:decorate>
			</rich:column> 
		
			<rich:column id="nomePesquisaPopup" width="280px" sortable="false">
				<f:facet name="header">
					<h:outputText value="Nome" styleClass="form-label"/>
				</f:facet>
				<h:outputText value="#{pessoas.nome}" style="color:#FFFFFFF" styleClass="form-label"/>
			</rich:column>
		</rich:extendedDataTable>

	</div>
		    <div style="clear: both" align="right">
				<a:commandButton id="selecionar"
					 styleClass="button" 
					 action="#{posVenda.selecionarCliente}"
					 value="Selecionar"
					 oncomplete="#{rich:component('posVendaClientes')}.hide();"
					 eventsQueue="posVendaQueue"
	 	 		 	 onkeypress="return disableEnterKey(event)"
	 	 		 	 reRender="atendimentoDataTable"/>	 
	 	 		<a:commandButton id="sair"
					 styleClass="button" 
					 value="Sair"
					 onclick="#{rich:component('posVendaClientes')}.hide();"
					 eventsQueue="posVendaQueue"
	 	 		 	 onkeypress="return disableEnterKey(event)"
	 	 		 	 />	 
			
			</div>    
			
    </rich:modalPanel>
    <script>
    </script>
</ui:composition>

Atenciosamente,

Eduardo

Criado 7 de junho de 2010
Respostas 0
Participantes 1