为Flash构建 Java WebService
在看这文章之前,如果你对WebService还不是很了解,或者还不知道那是什么东东的话,请你先看看花火写的一些关于WebService的基本概述
其实,在F2K4(Flash 2004的简称,下同)下调用Java的WebService其实跟调用Cf的WebService是一样的,也没有什么区别。下面就开始我们的Java For F2K4 WebService的旅程吧。所用到的工具有:
JBuilder 9 、Flash 2004 Professional
Example : sayHello()
1. 在JB9里面新建一个Project。File->New->(Project)选择Project; 如图:
Name: 你这个Project的名字(按照你喜欢的去填写吧)
Directory: 你储存这个Project的路径
Template: 我们暂不讨论
2. 建立一个WebApplication。File->New->(Web)选择WebApplication;
如图:
Name: 你WebApplication的名字(自己喜欢写什么就什么)
Directory: 你储存这个WebApplication的路径
BuildWAR: 暂时不讨论,默认即可。
3. 建立一个JavaBean。File->New->(General)选择JavaBean;
Package: 你这个JavaBean所属于的Project
Class name: 你这个JavaBean的名字(任意)
Base class: 请选择Java.lang.Object,因为我们现在的JavaBean只是一个Object而已。没有必要用到其他的什么面版等等。
Generate main method: 在这里,我们也不需要用到。
当你完成这步后,你的树形结构应该是这样的。
如图:
[SplitPage]
4. 打开 toFlash.java 文件,对代码进行编辑。输入以下代码:
package f2k4;
/**
* <p>Title: Java For F2K4 WebService</p>
* <p>Description: 这是一个非常简单的例子,希望能用这简单的例子带出大家更好更多的Idea</p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: moonfun</p>
* @author Littlejie
* @version 1.0
*/
public class toFlash {
//声明一个str的字符私有变量;
private String str;
//声明一个名叫 sayHello 的公开函数;
//参数:字符串;
//返回:字符串;
public String sayHello(String str){
this.str="你好阿"+str;
return this.str;
}
}
5. 选中 toFlash.java ,右键选择菜单,发布 webService。
如图:
请选择 Export as a Web Service ,进行对WebService的发布。然后他会出现下面这两个面版的。我们全部都使用默认的缺省设置,直接按Finish就可以了。
如图:
6. 好了,现在 WebService 已经成功发布了。那么他究竟在哪里呢??很多朋友都没有配置 tomcat 等等,这怎么办呢??别怕,JB9能够帮你很容易的完成这个测试任务。
" Baby! Follow me ! "
如图:
请选择 example1 -> Root directory -> index.html ,然后右键。选择菜单->Web Run using “Web Service Server”
发布后,你访问的应该是:
http://localhost:8080/example1/index.html 这个网址。
点击View the list of deployed web service 试试吧。
如果你的命名等等都跟我是一样的话,那么你的WSDL地址应该是:
http://localhost:8080/example1/services/toFlash?wsdl
好了,Java的部分就已经完成了。下面就到Flash部分了。
注意:别把现在JB9里面的东西关掉哦~~~[SplitPage]
. 新建一个Flash Document; File->New->Flash Document;
8. 把WebServiceCon组件,Label组件, TextInput组件都拖到场景上面。并且对他们分别命名为: myWebService , myLabel , myTextInput;
9. 然后对myWerService进行设置。如图:
WSDLURL: 就是WSDL服务描述的URL地址。我们写上刚刚我们获得的
http://localhost:8080/example1/services/toFlash?wsdl[url=http://localhost:8080/example1/services/toFlash?wsdl][/url]Operation: JavaBean里面的函数,你可以选择调用。当然拉,我们刚刚的JavaBean只有一个函数,所以这里只显示了sayHello();
其他选项,缺省为默认。
10. 对myLabel进行设置。如图:
选择myLabel后,打开 Component Inspector 面版,选择 Bindings。
11. 按
新增一个绑定。选择 text:String 后按 OK12. 选择面版中的 bound to,绑定为 WebServiceConnector->results:String;
如图:
13. 选择 myTextInput ,按照步骤10,11,新增一个绑定。
14. 同样也是选择 bound to , WebServiceConnector -> params:Object -> str:String
15. 打开 Action-Frame 面版,进行代码的编辑。输入以下代码:
//当myTextInput输入Enter的时候就发生事件响应。
inputClick = new Object();
inputClick.enter = function (evt){
myWebService.trigger();
myTextInput.text="";
}
myTextInput.addEventListener("enter", inputClick);
16. 效果如下:
当我在 TextInput 上面输入了内容后,按“Enter”确定,然后上面的Label就会有所改变,大家还记得我们JavaBean里面的那句 this.str="你好阿"+str; 吗?我想现在大家应该明白了吧