与服务端通信 第二节   通过Web Service与服务端通信
        本节将为大家介绍如何用Flash Builder4调用WebService获得服务端信息。WebService在网络中运行十分广泛,我们可以获得天气预报、证券信息等等的各类信息。这里为了方便各位初学者理解,就由我们自己来编写一个简单的WebService来调用。
      

学习目标

在Flash Builder4中输入一个字符串,点击按钮调用WebService,返回:“XXX,Hello World!”

 

WebService端

首先我们要编写一个WebService来调用,本例中使用VisualStudio2008来编写一个WebService。

打开VS2008,新建一个项目,选择ASP.NET Web服务应用程序。选择好路径后确定。 (图七十七)

 

File:Flash Builder 4 7Z 2J CreateWebService.jpg

图七十八

WebService方法

图七十七

常用的非可视组件

写一个简单的WebService方法,接收一个string类型的字符串参数str,返回“str+'Hello World!'”。

方法如下:

 

File:Flash Builder 4 7Z 2J HelloWorldMethod.jpg

测试一下: (图七十九)

File:Flash Builder 4 7Z 2J TextWebService1.jpg

图七十九(组)

WebService

       可以看到已经测试成功,运行以后出现了HelloWorld方法,输入“小新”,返回了“小新 Hello World”。 至此WebService编写完成。

Flex端

接下来我们用Flash Builder4编写Flex端。

我们只需要按钮、输入框和一个文本框就可以了,布局如下: (图八十)

图八十

WebService FLEX断布局

接下来是重点,也是你看本章的目的所在。

选择菜单里的“数据--连接WebService”:(图八十一)

图八十一

连接WebService

在弹出的对话框中,服务器名称中输入HelloWorld,这个可以自定义,下方会自定生成包名。

在“WSDL URL:”中输入WebService的地址,然后在后面加上“?wsdl”以获得WebService的XML格式。(注意不要遗漏)

然后点击“下一步”:(图八十二)

图八十二

获得WebService的XML格式

如果没有列出你的WebService的方法,就换一下端口:(图八十三)

图八十三

Web服务操作

成功的列出了我们的HelloWorld()方法,勾选它点击完成:(图八十四)

图八十四

WebService配置代码生成

这时,系统会自动为我们生成一些as文件,同时你可以在“数据/服务”窗体看到HelloWorld方法的信息。

图八十五

WebService配置生成

接下来在设计视图选择按钮,在右边的属性窗体给按钮添加“单击时”的事件,选择“生成服务调用”(图八十六)

在弹出的“生成服务调用”对话框中,我们看到了HelloWorld方法,直接点击确定。 (图八十六)

图八十六

生成服务调用

成功以后,工程会自动引入WebService的命名空间,自动给按钮添加一个点击事件来调用我们的HelloWorld()方法。

方法需要传入一个参数,我们把输入框的text值放进去。

最后我们需要把返回的值放在文本框里。在设计视图选中文本框, 然后在右边的“属性”窗体里选择“文本”右边的“绑定数据”。

在弹出的“绑定到数据”对话框中,又看到了HelloWorld,直接确定:(图八十七)

图八十七

生成服务调用

好了,一切就绪,再来测试一下最终结果!

在输入框输入,点击按钮,服务端成功的返回了我们想要的!

图八十八

WebService返回成功

总结:

      至此你又学会了如何和WebService通信!在高级应用中,如果WebService返回一个泛型集合,在Flash Builder里

可以自动生成相应的AS实体类型来接受,相当于对象之间的传递,十分方便。