加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

flex_02 java 和 flex 通信

发布时间:2020-12-15 01:13:11 所属栏目:百科 来源:网络整理
导读:? 这个demo 是flex 和 java 结合使用的,即新建一个flex 项目,再添加web支持,目录如下 四个文件 : ①fx.mxml ? ?xml version="1.0" encoding="utf-8"? s:Application xmlns:fx=" http://ns.adobe.com/mxml/2009 " ????? xmlns:s="library://ns.adobe.com/flex

?

这个demo 是flex 和 java 结合使用的,即新建一个flex 项目,再添加web支持,目录如下

四个文件 :

①fx.mxml

? <?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>
??<!-- 将非可视元素(例如服务、值对象)放在此处 -->
??<mx:RemoteObject id="remoteob" destination="helloword" endpoint="
http://localhost/fx/messagebroker/amf" result="resultHandler(event)" fault="faultHandler(event)">
???
??</mx:RemoteObject>
?</fx:Declarations>
?<fx:Script>
??<![CDATA[
???import mx.controls.Alert;
???import mx.rpc.events.FaultEvent;
???import mx.rpc.events.ResultEvent;
???
???private function resultHandler(event:ResultEvent):void{
????Alert.show(event.result.toString(),"成功!");
???}
???private function faultHandler(event:FaultEvent):void{
????Alert.show(event.fault.toString(),"失败!");
???}
??]]>
?</fx:Script>
?
?<s:Button? label="发送" click="remoteob.sayHi()" x="300" y="200"/>
</s:Application>

②HelloWord.java

package com.java;

public class HelloWord {
?public String sayHi(){
??return "hello kitty !!!";
?}
}

③remoting-config.xml

<?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="helloword" >
????????? <properties>
?????????? <source>com.java.HelloWord</source>
????????? </properties>
??? </destination>
</service>

④web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
?
?<!-- Http Flex Session attribute and binding listener support -->
?<listener>
??<listener-class>flex.messaging.HttpFlexSession</listener-class>
?</listener>

?<!-- MessageBroker Servlet -->
?<servlet>
??<servlet-name>MessageBrokerServlet</servlet-name>
??<servlet-class>flex.messaging.MessageBrokerServlet</servlet-class>
??<init-param>
???<param-name>services.configuration.file</param-name>
???<param-value>/WEB-INF/flex/services-config.xml</param-value>
??</init-param>
??<!--<init-param>
???<param-name>flex.write.path</param-name>
???<param-value>/WEB-INF/flex</param-value>
??</init-param>
??--><load-on-startup>1</load-on-startup>
?</servlet>

?<servlet-mapping>
??<servlet-name>MessageBrokerServlet</servlet-name>
??<url-pattern>/messagebroker/*</url-pattern>
?</servlet-mapping>
? <welcome-file-list>
??? <welcome-file>index.html</welcome-file>
??? <welcome-file>index.htm</welcome-file>
??? <welcome-file>index.jsp</welcome-file>
??? <welcome-file>default.html</welcome-file>
??? <welcome-file>default.htm</welcome-file>
??? <welcome-file>default.jsp</welcome-file>
? </welcome-file-list>

?<!-- for WebSphere deployment,please uncomment -->
?<!--
??<resource-ref>
??<description>Flex Messaging WorkManager</description>
??<res-ref-name>wm/MessagingWorkManager</res-ref-name>
??<res-type>com.ibm.websphere.asynchbeans.WorkManager</res-type>
??<res-auth>Container</res-auth>
??<res-sharing-scope>Shareable</res-sharing-scope>
?</resource-ref>
?-->
</web-app>

flex 服务配置如图:

?

?

注:fx.mxml 还可以修改为:

<?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[
???import mx.controls.Alert;
???import mx.rpc.events.FaultEvent;
???import mx.rpc.events.ResultEvent;
???
???protected function show():void
???{
????// TODO Auto-generated method stub
????var myva :String = myname.text;
????StuServices.addEventListener(FaultEvent.FAULT,faultHandler);
????StuServices.addEventListener(ResultEvent.RESULT,resultHandler);
????StuServices.sayHI(myva);
???}
???
???protected function resultHandler(event:ResultEvent):void
???{
????// TODO Auto-generated method stub
????Alert.show(event.result.toString(),"成功");
???}
???
???protected function faultHandler(event:FaultEvent):void
???{
????// TODO Auto-generated method stub
????trace(event);
???}
???
??]]>
?</fx:Script>
?
?<fx:Declarations>
??<!-- 将非可视元素(例如服务、值对象)放在此处 -->
??<mx:RemoteObject id="StuServices" destination="StuServices"
?????? endpoint="
http://localhost/te/messagebroker/amf" > ??? ??</mx:RemoteObject> ?</fx:Declarations> ?<mx:Panel x="200" y="200" width="300" height="300" accentColor="blue"> ??<mx:TextInput id="myname" width="100"> ??? ??</mx:TextInput> ??<mx:Button x="150" y="150" label="哈 哈" click="show()"> ??? ??</mx:Button> ?</mx:Panel> </s:Application>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读