Flex与后台(Java)交互
发布时间:2020-12-15 04:22:07 所属栏目:百科 来源:网络整理
导读:?软件环境:windows7+flex4+myeclipse8.5+blazeds ????????功能描述:分别用代码实现了三种flex4与Java通信 ????????三种方式: ???????????????????????1?flex 与普通java类通信RemoteObject ???????????????????????2 flex 与服务器交互HTTPService ?????????
?软件环境:windows7+flex4+myeclipse8.5+blazeds
????????功能描述:分别用代码实现了三种flex4与Java通信 ????????三种方式: ???????????????????????1?flex 与普通java类通信RemoteObject ???????????????????????2 flex 与服务器交互HTTPService ???????????????????????3 flex与webservice交互WebService ????????1?flex 与普通java类通信RemoteObject ???????普通Java类:????????
package
?com.flex.demo;
????????配置说明:配置remoting-config.xml
/** ?*?功能描述:该类用来实现flex与普通java类中的方法通信 ?*?@author?Administrator ?* ?*/ public ? class ?SimpleService? { ????public?String?sayHello(String?name){ ????????return?"Hello,?"+name; ????} } <
destination?
id
="myservice"
>
????????调用
???????? properties > ???????????? source > com.flex.demo.SimpleService </ > ???? destination > <!--
flex?与普通java类通信
-->
???????? s:RemoteObject? ="serv" ?destination ="myservice" ?fault ="serv_faultHandler(event)" ?result ="serv_resultHandler(event)" > ???????????? ???????? s:RemoteObject ????????2flex 与服务器交互HTTPService ????????servlet代码???????? package
?com.flex.demo;
?flex?与服务器交互
s:HTTPService?
="service"
="service_faultHandler(event)"
="service_resultHandler(event)"
?url
="http://localhost:8080/flexdemo/simpleServiceServlet"
s:HTTPService
????????3flex与webservice交互WebService
import ?java.io.IOException; import ?javax.servlet.ServletException; import ?javax.servlet.http.HttpServlet; import ?javax.servlet.http.HttpServletRequest; import ?javax.servlet.http.HttpServletResponse; ?*?功能描述:该servlet用来与flex进行交互 ?*?*/ @SuppressWarnings( " serial " ) class ?SimpleServiceServlet? extends ?HttpServlet? { ???? ????@Override ????protected?void?service(HttpServletRequest?request,?HttpServletResponse?response) ????????????throws?ServletException,?IOException?{ ????????request.setCharacterEncoding("utf-8"); ????????response.setCharacterEncoding("utf-8"); ????????response.getWriter().write("我是服务器"); ????} } flex与webservice交互这里调用一个天气预报的webservice
s:WebService?
="ws"
?
??????????????????????wsdl ="http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl" ? ??????????????????????fault ="ws_faultHandler(event)" ? ??????????????????????result ="ws_resultHandler(event)" ? ??????????????????????showBusyCursor ="true" ?第二种调用webservice的方法<s:operation> --> ???????????? ?<s:operation?name="getWeatherbyCityName">?webservice中的方法名 s:operation? name ="getWeatherbyCityName" > ???????????????? 传递的参数 --> ???????????????? s:request > ???????????????????? 参数名称必须与webservice中定义的参数名一致否则调用不成功报错 --> ???????????????????? theCityName > ????????????????????????{city.text} ???????????????????? s:operation s:WebService ????????三种方式完整的配置例子 <?
xml?version="1.0"?encoding="utf-8"
?>
????????初次接触flex的朋友,看上面的肯定很迷惑,因此这里录制了视频教程,视频的质量是蛮好的,该视频从头至尾演示了flex4整合Java的过程.为了方便在windows平台下播放,该视频默认导出格式为exe,在此说明该文件并非病毒,实乃视频文件,大家可放心观看.
点我下载flex4与Java交互演示视频
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" ???????????????creationComplete ="service.send()" ??????????????? fx:Script <![CDATA[ ????????????import?mx.controls.Alert; ????????????import?mx.rpc.events.FaultEvent; ????????????import?mx.rpc.events.ResultEvent; ????????????//错误处理函数 ????????????protected?function?serv_faultHandler(event:FaultEvent):void ????????????{ ????????????????Alert.show("调用失败了:"+event.fault.message?as?String,"提示"); ????????????} ????????????//成功调用函数 ????????????protected?function?serv_resultHandler(event:ResultEvent):void ????????????{ ????????????????Alert.show("调用成功了:"+event.result?as?String,"提示"); ????????????} ????????????protected?function?service_faultHandler(event:FaultEvent):void ????????????{ ????????????????Alert.show("调用失败了:"+event.fault.message?as?String,"提示"); ????????????} ????????????protected?function?service_resultHandler(event:ResultEvent):void ????????????{ ????????????????Alert.show("调用成功了:"+event.result?as?String,"提示"); ????????????} ????????????protected?function?ws_faultHandler(event:FaultEvent):void ????????????{ ????????????????Alert.show("调用失败了:"+event.fault.message?as?String,"提示"); ????????????} ???????????? ????????????//调用成功了 ????????????protected?function?ws_resultHandler(event:ResultEvent):void ????????????{ ????????????????trace(event.result); ????????????????lbl.text=(String)(event.result); ????????????} ????????????//第一种调用webservice的方法 ????????????//此方法调用webservice ????????????protected?function?btn_clickHandler(event:MouseEvent):void ????????????{ ????????????????//ws.getWeatherbyCityName(city.text); ????????????????//第二中调用webservice的方法 ????????????????ws.getWeatherbyCityName.send(); ????????????} ???????????? ???????????? ???????? ]]> ???? fx:Declarations ?将非可视元素(例如服务、值对象)放在此处? --> ???????? ???????? > ???????? ???????? > ???????? ???????? ???? s:TextInput? x ="488" ?y ="72" ?id ="city" /> ???? s:Button? ="633" ?label ="查看" ="btn" ?click ="btn_clickHandler(event)" s:Label? ="224" ="128" ="lbl" ?width ="820" ?height ="376" /> s:Application > ????????视频截图: ? ???????? 点我下载完整的项目文件 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |