很简单的小例子,适合初学者理解

1,JavaFlex.java

view plaincopy to clipboardprint​​​


package flex;
public class JavaFlex { public String helloJavaFlex(String name) { return name; } }

package flex; public class JavaFlex { public String helloJavaFlex(String name) { return name; } }

2,remoting-config.xml

view plaincopy to clipboardprint​​​


  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <service id="remoting-service" class="flex.messaging.services.RemotingService">

  3. <adapters>
  4. <adapter-definition id="java-object"
  5. class="flex.messaging.services.remoting.adapters.JavaAdapter"
  6. default="true" />
  7. </adapters>

  8. <default-channels>
  9. <channel ref="my-amf" />
  10. </default-channels>
  11. <destination id="firstJavaFlex">
  12. <properties>
  13. <source>flex.JavaFlex
  14. </source>
  15. </properties>
  16. </destination>
  17. </service>

<?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="firstJavaFlex"> <properties> <source>flex.JavaFlex </source> </properties> </destination> </service>

3,testflex.mxml

view plaincopy to clipboardprint​​​


  1. <?xml version="1.0" encoding="utf-8"?>
  2. <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
  3. xmlns:s="library://ns.adobe.com/flex/spark"
  4. xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
  5. <fx:Declarations>
  6. <!-- 将 非可视元素(例如服务、值对象)放在此处 -->
  7. <s:RemoteObject id="selectHello" destination="firstJavaFlex" fault="error(event)"/>
  8. </fx:Declarations>
  9. <fx:Script>
  10. <!--[CDATA[
  11. import mx.collections.ArrayCollection;
  12. import mx.controls.Alert;
  13. import mx.events.ResizeEvent;
  14. import mx.rpc.events.FaultEvent;
  15. import mx.rpc.events.ResultEvent;

  16. [Bindable]
  17. private var arraylist:ArrayCollection = new ArrayCollection([
  18. {name:"你好",data:"你好!"},
  19. {name:"你们好",data:"你们 好!"},
  20. {name:"大家好",data:"大家 好!"},
  21. ]);
  22. private function changehandler(event:Event):void{
  23. selectHello.helloJavaFlex(selected.selectedItem.data);
  24. selectHello.addEventListener(ResultEvent.RESULT,remoteResult);
  25. }
  26. private function remoteResult(event:ResultEvent):void{
  27. Alert.show(event.result.toString());
  28. resultmess.text = event.result.toString();
  29. }
  30. private function error(event:FaultEvent):void{
  31. Alert.show(event.message.body.toString());
  32. resultmess.text = event.message.body.toString();
  33. }
  34. ]]-->
  35. </fx:Script>
  36. <s:DropDownList x="113" y="83" id="selected" labelField="name" dataProvider="{arraylist}" change="changehandler(event)"/>
  37. <s:RichText x="321" y="227" id="resultmess" text="RichText"/>
  38. </s:Application>

<?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 id="selectHello" destination="firstJavaFlex" fault="error(event)"/> </fx:Declarations> <fx:Script> <!--[CDATA[ import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.events.ResizeEvent; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; [Bindable] private var arraylist:ArrayCollection = new ArrayCollection([ {name:"你好",data:"你好!"}, {name:"你们好",data:"你们好!"}, {name:"大家好",data:"大家好!"}, ]); private function changehandler(event:Event):void{ selectHello.helloJavaFlex(selected.selectedItem.data); selectHello.addEventListener(ResultEvent.RESULT,remoteResult); } private function remoteResult(event:ResultEvent):void{ Alert.show(event.result.toString()); resultmess.text = event.result.toString(); } private function error(event:FaultEvent):void{ Alert.show(event.message.body.toString()); resultmess.text = event.message.body.toString(); } ]]--> </fx:Script> <s:DropDownList x="113" y="83" id="selected" labelField="name" dataProvider="{arraylist}" change="changehandler(event)"/> <s:RichText x="321" y="227" id="resultmess" text="RichText"/> </s:Application>