E ai galera to com problemas para realizar a comunicacao entre o flex e o java por favor me ajudem vou postar os codigos que eu tenho para fazer a comunicacao
remoting-config.xml
[code]
<?xml version=“1.0” encoding=“UTF-8”?>
<service id="remoting-service"
class=“flex.messaging.services.RemotingService”>
<adapters>
<adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>
</adapters>
<default-channels>
<channel ref="my-amf"/>
</default-channels>
<destination id="conectaJava">
<properties>
<source>com.urbainski.SvcMensagem</source>
</properties>
</destination>
</service>[/code]
Classe SvcMensagem.java
package com.urbainski;
public class SvcMensagem {
public String getMensagem()
{
return "Primeira comunicacao flex com java via blase DS";
}
}
projetoWeb.xml
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Declarations>
<s:RemoteObject destination="conectaJava" id="conectJava" />
</fx:Declarations>
<mx:Canvas backgroundColor="red" width="100%" height="100%">
<s:Button x="322" y="186" label="bottao 1" click="conectJava.getMensagem()"/>
<s:Label x="146" y="227" width="504" text="{conectJava.getMensagem.lastResult}"/>
</mx:Canvas>
</s:Application>
o que sera que estou fazendo de errado?
Olha do modo como vc está fazendo concerteza vai dar erro, talvés eu esteja errado ao falar isto, mas vo te mandar o modo como faço e que para mim é o correto…
Se no caso eu estiver errado, me avise.
[code]
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx=“library://ns.adobe.com/flex/mx” minWidth=“955” minHeight=“600”>
fx:Script
<![CDATA[
protected function conectJava_resultHandler(event:ResultEvent):void
{
Alert.show(event.result + “”, “Sucesso!”);
mensagemLidaJava.text = event.result as String; // pega o resultado da minha consulta no java
}
protected function conectJava_faultHandler(event:FaultEvent):void
{
Alert.show("" + event.fault, "Erro!"); // caso de algum erro
}
private function clickConectJava():void {
conectJava.getMensagem(); // onde chamo meu remoting
}
]]>
</fx:Script>
<fx:Declarations>
<s:RemoteObject destination="conectaJava" id="conectJava" result="conectJava_resultHandler(event)" fault="conectJava_faultHandler(event)"/>
</fx:Declarations>
<mx:Canvas backgroundColor="red" width="100%" height="100%">
<s:Button x="322" y="186" label="bottao 1" click="clickConectJava"/>
<s:Label x="146" y="227" width="504" id="mensagemLidaJava" text="Ainda não fiz minha pesquisa, click no botao bottao 1"/>
</mx:Canvas>
</s:Application> [/code]
Acho que o andre ta certo!
Cara eu uso com PHP, mas é a mesma coisa, vamos lá…
<s:RemoteObject id="ro_registro" destination="zend" source="Registro">//destination eu uso o zend, source é o nome da Classe
<s:method name="atualizarOn" result="resultAtualizarOn(event)">//name é nome do metodo la na classe php, e o result é o que faço qnd obtenho o retorno
<s:arguments>//passo os argumentos pro php
<txt_id>{txt_id.text}</txt_id>
<txt_dtReg>{txt_dtReg.text}</txt_dtReg>
<txt_nomePac>{txt_nomePac.text}</txt_nomePac>
<txt_cirurgia>{txt_cirurgia.text}</txt_cirurgia>
</s:arguments>
</s:method>
</s:RemoteObject>
Espero ter te ajudado.
Ajudaram sim, obrigado
mas vcs naum teriam alguma classe que implementasse o RemoteObject por tras para agente naum precissar fazer isso todas as vezes, estou criando uma serie de componentes para usar nos trabalho final da faculdade e estou pensando em implementar alguma coisa assim para facilitar um pouco mais a programacao;
Cara eu faço sempre assim, não sei se alguém já implementou uma classe, nem sei se teria como.
Então, pra cada classe um RO e pra cada método um Method.
obs: se o problema for resolvido, não esquece de colocar RESOLVIDO, lá no topico, blz?!