最近由于工作需要开始看Flex的书籍,下面讲讲Flex作为UI然后后台使用Java作为服务器的三种方式,
(1)安装JDK,Tomcat,MyEclipse
(2)安装Flex Builder
(3)在MyEclipse中新建一个Java Web工程,这个工程可以使用SSH架构
(4)代开Flex Builder新建一个Web工程,注意在选择地下的服务器的时候,我们选择”J2EE“服务器,然后选择打出文件的包,导出到原先建的那个java Web工程目录下,这样Flex和Java的工程就搭建好了,下面介绍如何通信
1.使用remoteObject来通信,这种通信适合于Flex和Java之间有很大的数据交互,首先我们需要下载BlazeDS,然后将解压的文件放到WEB-INF文件夹覆盖Java Web工程下的WEB-INF文件夹
(1)新建一个Java类 FlexToJava
public class FlexToJava{
public String pritStr(String felxParam){
return “I am Java Server,Flex Input parameters is”+flexParam ;
}
}
(2)在WEB-INF文件夹的remoting-config.xml文件添加
<destination id=”javaObject”>
<properties>
<source>com.test.FlexToJava</source> <!–这个类得路径–>
</properties>
</destination>
(3)在Flexbuilder中新建一个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:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
protected function myFlex_resultHandler(event:ResultEvent):void{
var name:String=event.result as String;
Alert.show(name);
}
protected function button1_clickHandler(event:MouseEvent):void
{
flexObject.pritStr(txtName.text);
}
]]>
</fx:Script>
<fx:Declarations>
<!– 将非可视元素(例如服务、值对象)放在此处 –>
<s:RemoteObject id=”flexObject” destination=”javaOvject” result=”myFlex_resultHandler(event)”/>
</fx:Declarations>
<s:Button x=”209″ y=”135″ label=”按钮” click=”button1_clickHandler(event)”/>
<s:TextInput x=”166″ y=”81″ id=”txtName”/>
<s:Label x=”10″ y=”81″ text=”请输入内容:” fontSize=”15″ fontWeight=”bold” fontFamily=”中易黑体”/>
</s:Application>
2.使用HTTPService使得Flex和Java进行通信
(1)首先我在Java端写一个Servlet
public class JavaServlet extends HttpServlet{
public void doPost(requst,response){
response.getWriter.print(“I am Java Server”) ;
}
public void doGet(request,response){
doPost(request,response) ;
}
}
(2)在Web.xml中配置Servlet的访问路径,比如说是/java_servlet
(3)在Flex中新建一个application
<!–flex 与java交互–>
<s:HTTPService id=”service” fault=”service_faultHandler(event)” result=”service_resultHandler(event)” url=”http://localhost:8080/flexdemo/java_servlet”>
</s:HTTPService>
result:是处理返回的函数,faul: 是处理出错的函数。
3.Flex与WebService进行交互
<!–flex与webservice交互这里调用一个天气预报的webservice–>
<s:WebService id=”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}
</theCityName>
</s:request>
</s:operation>
</s:WebService>
今天的文章Flex 与java通信的三种方式分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/27771.html