Opa blz…
"algo que deve lembrar o OpenLaszlo é apenas para VIEW,
sendo assim, qual é responsabilidade da camada VIEW de aplicações? "
cara quanto a isso eu sei, eu tenho uma action que vai me retornar um xml com o que eu quero montar, so que o problema é que não estou conseguindo tratar esse retorno…
Minha action…estou gerando um XML pra mim trabalhar com ele…
List<BeanItemContratacao> listItens = DAOItemContratacao.selectItemContratacaoSimples();
XStream stream = new XStream();
stream.alias( "listItem", BeanItemContratacao.class );
stream.setMode(XStream.ID_REFERENCES);
String xml = stream.toXML( listItens );
// request.setAttribute( "saida", xml );
response.setContentType("text/xml");
response.addHeader("Content-Disposition", "inline; filename=arq.xml");
// xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + xml;
response.getOutputStream().write(xml.getBytes());
response.getOutputStream().flush();
response.getOutputStream().close();
System.out.println( "[SAÍDA]\n" + xml );
Meu arquivo lzx
<canvas bgcolor="gray" width="100%" height="100%" debug="true">
<dataset name="dsSend" trimwhitespace="true" proxied="true" request="false" type="http" src="http://127.0.0.1:8080/Laszlo/index.do?method=carregaItens"/>
<datapointer xpath="dsSend:/" ondata="processData()">
<method name="processData">
this.selectChild(2);
do {
if (this.xpathQuery( '@id' ) == '3') {
Debug.write('Entrou 1');
Debug.write(this.xpathQuery('nm__variavel/text()'));
}else{
Debug.write('Entrou 2');
if(this.xpathQuery('nm__variavel/text()') == 'IEstacionamentoExclusivoPart'){
Debug.write(this.xpathQuery('nm__variavel/text()'));
Debug.write('Beleza');
}
Debug.write(this.xpathQuery('nm__variavel/text()'));
}
} while (this.selectNext());
</method>
</datapointer>
</canvas>
O retorno do meu XML da action (http://127.0.0.1:8080/Laszlo/index.do?method=carregaItens)
<list id="1">
<listItem id="2">
<cd__item__contratacao>1</cd__item__contratacao>
<cd__item__contratacao__superior>0</cd__item__contratacao__superior>
<cd__tipo__componente__negocio>0</cd__tipo__componente__negocio>
<cd__sub__grupo__comp__neg>0</cd__sub__grupo__comp__neg>
<cd__tipo__resposta></cd__tipo__resposta>
<cd__agrupador>0</cd__agrupador>
<ds__item__contratacao>Utiliza estacionamento exclusivo para o veiculo do Segurado (P)?</ds__item__contratacao>
<nm__variavel>IEstacionamentoExclusivoPart</nm__variavel>
<fl__imprime></fl__imprime>
<fl__obrigatorio></fl__obrigatorio>
<fl__parametrizacao></fl__parametrizacao>
<ds__eventos></ds__eventos>
<nu__ordem__visual>0</nu__ordem__visual>
<nu__ordem__impressao>0</nu__ordem__impressao>
<cd__integracao>0</cd__integracao>
<fl__help__online></fl__help__online>
<ds__eventos__help__online>abrirPopup(&apos;IEstacionamentoExclusivo&apos;,410,250)</ds__eventos__help__online>
</listItem>
<listItem id="3">
<cd__item__contratacao>2</cd__item__contratacao>
<cd__item__contratacao__superior>0</cd__item__contratacao__superior>
<cd__tipo__componente__negocio>0</cd__tipo__componente__negocio>
<cd__sub__grupo__comp__neg>0</cd__sub__grupo__comp__neg>
<cd__tipo__resposta></cd__tipo__resposta>
<cd__agrupador>0</cd__agrupador>
<ds__item__contratacao>Descricao 2</ds__item__contratacao>
<nm__variavel>variavel2</nm__variavel>
<fl__imprime></fl__imprime>
<fl__obrigatorio></fl__obrigatorio>
<fl__parametrizacao></fl__parametrizacao>
<ds__eventos></ds__eventos>
<nu__ordem__visual>0</nu__ordem__visual>
<nu__ordem__impressao>0</nu__ordem__impressao>
<cd__integracao>0</cd__integracao>
<fl__help__online></fl__help__online>
<ds__eventos__help__online>abrirPopup(&apos;variavel2&apos;,300,200)</ds__eventos__help__online>
</listItem>
<listItem id="4">
<cd__item__contratacao>3</cd__item__contratacao>
<cd__item__contratacao__superior>0</cd__item__contratacao__superior>
<cd__tipo__componente__negocio>0</cd__tipo__componente__negocio>
<cd__sub__grupo__comp__neg>0</cd__sub__grupo__comp__neg>
<cd__tipo__resposta></cd__tipo__resposta>
<cd__agrupador>0</cd__agrupador>
<ds__item__contratacao>Descricao3</ds__item__contratacao>
<nm__variavel>variavel3</nm__variavel>
<fl__imprime></fl__imprime>
<fl__obrigatorio></fl__obrigatorio>
<fl__parametrizacao></fl__parametrizacao>
<ds__eventos></ds__eventos>
<nu__ordem__visual>0</nu__ordem__visual>
<nu__ordem__impressao>0</nu__ordem__impressao>
<cd__integracao>0</cd__integracao>
<fl__help__online></fl__help__online>
<ds__eventos__help__online>abrirPopup(&apos;variavel3&apos;,300,200)</ds__eventos__help__online>
</listItem>
<listItem id="5">
<cd__item__contratacao>4</cd__item__contratacao>
<cd__item__contratacao__superior>0</cd__item__contratacao__superior>
<cd__tipo__componente__negocio>0</cd__tipo__componente__negocio>
<cd__sub__grupo__comp__neg>0</cd__sub__grupo__comp__neg>
<cd__tipo__resposta></cd__tipo__resposta>
<cd__agrupador>0</cd__agrupador>
<ds__item__contratacao>Descricao4</ds__item__contratacao>
<nm__variavel>variavel4</nm__variavel>
<fl__imprime></fl__imprime>
<fl__obrigatorio></fl__obrigatorio>
<fl__parametrizacao></fl__parametrizacao>
<ds__eventos></ds__eventos>
<nu__ordem__visual>0</nu__ordem__visual>
<nu__ordem__impressao>0</nu__ordem__impressao>
<cd__integracao>0</cd__integracao>
<fl__help__online></fl__help__online>
<ds__eventos__help__online>abrirPopup(&apos;variavel4&apos;,300,200)</ds__eventos__help__online>
</listItem>
</list>
So que ele mostra NULL…agora o mais intrigante…no lugar de fazer…
<dataset name="dsSend" trimwhitespace="true" proxied="true" request="false" type="http" src="http://127.0.0.1:8080/Laszlo/index.do?method=carregaItens"/>
eu crio um arquivo xml mesmo, coloco O MESMO RETORNO e faço assim…
<dataset name="dsSend" src="arq.xml"/>
ai ele funciona…porque ? não estou entendendo o por que disso…
aguardo retorno