六、FLEX与WebService的通信,
在MyEclipse新建一个Web Service Project,MyEclipse5.5自己就会建立一个用XFire实现WEB SERVICE的工程。
1)新建接口文件IWeather.java
package ws;
public interface IWeather {
public String getWeatherState(String city);
}
2)新建实现文件Weather.java
package ws;
import java.util.HashMap;
import java.util.Map;
public class Weather implements IWeather{
//http://localhost:8080/wsp1/services/getWeatherState?wsdl
static Map map = new HashMap();
static { //输入shanghai 或beijing
map.put("beijing","sunning");
map.put("shanghai","cloud");
}
public String getWeatherState(String city){
return (String)map.get(city);
}
}
3)修改配置文件WebServices/services.xml
<?xml version="1.0" encoding="UTF-8"?>
< beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>getWeatherState</name><!-- 服务名称 -->
<namespace>ws/getWeatherState</namespace><!-- 指定命名空间 -->
<serviceClass>ws.IWeather</serviceClass><!-- 指定服务的接口 -->
<implementationClass>ws.Weather</implementationClass><!-- 指定接口的实现类 -->
</service>
< /beans>
Web Services Project工程目录纵览。
七、部署,测试
启动TOMCAT6,并如下图部署WEB SERVICE工程wsp1到TOMCAT上,
浏览器里输入http://localhost:8080/wsp1/services/getWeatherState?wsdl,测试下,如果出现XML格式的,就OK。
七、与Web Service通信的FLEX部分
1)src/ui/dp/ws.mxml
<?xml version="1.0" encoding="utf-8"?>
< mx:Canvas xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" width="100%" height="100%">
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
<mx:WebService id="ws1" wsdl="http://localhost:8080/wsp1/services/getWeatherState?wsdl"> <!--声明一个WebService对象ws1,指明WSDL路径-->
<mx:operation name="getWeatherState" result="showInfo(event)" fault="Alert.show('error');">
</mx:operation>
</mx:WebService>
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import mx.rpc.events.FaultEvent;
function showInfo(event:ResultEvent):void{
mx.controls.Alert.show(event.result.toString());
}
function getWeather():void{
ws1.getWeatherState(ti.text);
}
]]>
</fx:Script>
<mx:Panel width="100%" height="100%">
<mx:TextInput text="" id="ti"/>
<mx:Button label="getWeatherstate" click="getWeather()" /><!--在TextInput里输入shanghai 或beijing,点击按钮调用Web Service的方法ws1.getWeatherState()-->
</mx:Panel>
< /mx:Canvas>
相关工程代码请下载 http://download.csdn.net/detail/iamyzs/4284826
相关推荐
博文链接:https://hacker47.iteye.com/blog/215521
练习涉及到FLEX常用控件,与后台交互的数据服务(RemoteObject,WebService),FLEX的几种导航,FLEX事件。 详见作者博客 http://blog.csdn.net/iamyzs/article/details/7540962; ... ...
纯java调用ws-security+CXF实现的webservice安全接口
soapui-4.5.1-windows-bin webservice 测试
05-ApacheCamel-CXF-WebService Apache Camel 集成 CXF组件,包含服务端、测试客户端
flex通过Http和WebService与服务器通信交互,交互后台采用java的Struts2做为处理后台.
--flex与webservice交互这里调用一个天气预报的webservice--> <s:WebService id="ws" wsdl="http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl" fault="ws_faultHandler(event)" result="ws_...
flex4出来一段时间了,去年看了一段时间flex3... 功能描述:分别用代码实现了三种flex4与Java通信 三种方式: 1 flex 与普通java类通信RemoteObject 2 flex 与服务器交互HTTPService 3 flex与webservice交互WebService
android开发--使用ksoap2调用webservice.rar
android开发--使用ksoap2调用webservice.pdf
CXF入门 -- 第一个简单webService文章对应的代码;原文链接http://blog.csdn.net/neareast/article/details/7714778
android开发--使用ksoap2调用webservice借鉴.pdf
NULL 博文链接:https://idoveu.iteye.com/blog/1575849
android开发--使用ksoap2调用webservice[借鉴].pdf
Flex与[1].NET互操作:基于WebService的数据访问
纯flex网站前台,通过httpservice、webservice进行数据交互
Flex调用Webservice及java程序