欢迎来到天天文库
浏览记录
ID:1238199
大小:67.50 KB
页数:6页
时间:2017-11-09
《用java开发web service(学习总结)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、用JAVA开发WEBService一学习前的准备开发环境JBOSS4.05+axis1.4+JDK1.5axis1.4下载地址:http://www.apache.org/dist/ws/axis/1_4/,选择axis-bin-1_4.zip所需要的JAR包:二部署axis以我们CreateGWS405产品为例,在产品serverdefaultdeploy目录下新建一个应用,比如叫myService.war。在里面新建文件夹“WEB-INF”,将axis1.4以下目录中的web.xml文件拷贝到“WEB-INF”下。“ax
2、is-bin-1_4axis-1_4webappsaxisWEB-INF“。然后将jar包拷贝到产品serverdefaultlib下。至此部署完毕。三开发webService服务端用编辑器编写一个简单的服务类,代码如下:importjava.util.*;importjava.text.*;publicclassSayHello{publicStringsay(Stringname){System.out.println("callwebservicesay.....");return"Hello"+name;}}
3、将该类复制到myService.war中与“WEB-INF”同级目录,然后更改其名字为”SayHello.jws”。启动CreateGWS405,在浏览器地址输入http://localhost:88/myService/SayHello.jws?wsdl打开页面后你会看到ClicktoseetheWSDL<--点击链接,如果你上面的步骤都正常,类也没有带其他包的话,那么就生成了wsdl了。至此webService服务端发布成功,接下来就是编写客户端了。四开发webService客户端。(DLL方式)这里为了方便测试,我们就以C
4、reateGWS405产品为客户端,在create.war下新建一个JSP页面,代码如下:Stringurlname="http://localhost:88/myService/SayHello.jws?wsdl";Services=newService();Callcall=(Call)s.createCall();//要调用的方法名称call.setOperationName("say");call.setTargetEndpointAddress(urlname);//方法传入一个String型参数,返回值也是Strin
5、gStringval=(String)call.invoke(newObject[]{"haha"});System.out.println(val);需要导入:importorg.apache.axis.client.Call;importorg.apache.axis.client.Service;至此一个简单的客户端就编写好了。上面服务端的方法参数是String,返回值也是String,而实际业务中可能还需要以int,boolean等类型做参数,而且参数不止一个。返回值有时是int有时又是集合ArrayList那该怎么做呢
6、,请看下面这个服务端代码importjava.util.*;importjava.text.*;publicclassSayHello{publicStringsay(Stringname){System.out.println("callwebservicesay.....");return"Hello"+name;}publicArrayListgetList(Stringstr){ArrayListstrs=newArrayList();System.out.println("callwebservicegetList..
7、...");strs.add("A");strs.add("B");strs.add("C");strs.add(str);returnstrs;}publicString[]getStrs(Stringstr,inta){System.out.println("callwebservicegetStrs.....");String[]abc=newString[a];abc[0]=str;returnabc;}publicintgetInt(Stringarg){System.out.println("callwebservi
8、cegetInt.....");returnarg.length();}}这个服务端有4个方法,分别返回不同类型的值。客户端就要改成Stringurlname="http://localhost:8080/aixs_proxy_demo/SayHello.jws
此文档下载收益归作者所有