编写Web Serviceclient訪问www.webxml.com.cn提供的服务
好久没更新博客了,近期各种忙。
之前做Web Service课程的作业,当中有一个实验。实验内容如题所看到的。
以下简单说下怎样编写Web Serviceclient訪问webxml.com.cn里的Web Service。
1.使用wsimport依据wsdl生成client程序
假设你已经下载好JDK,那么能够在JDK文件夹下看到一个wsimport的程序:
注意要把JDK的bin路径加入到系统环境变量中。
打开www.webxml.com.cn。选择一个你想要使用的Web Service。找到其wsdl文件地址,比如:
然后随便进入一个文件夹,比如src,执行例如以下命令:
wsimport -keep -p client WSDL文件所在网址
当中-p client表示生成的java文件输入到src/client文件夹下。后面的网址为Web Service的wsdl文件地址。
执行结果例如以下:
注意上面可能会出现一些WARNING。这与SOAP的版本号有关,其实这并不会影响到后面程序的执行。
能够看到在src/client文件夹下生成了一大堆.java和.class文件:
2.配置Eclipseproject
java -jar JAXWS2.1.2-20070917.jar
将解压后lib文件夹下的全部jar文件拷贝到project的WebContent/WEB-INF/lib文件夹下。
按F5刷新,project文件夹大致例如以下:
3.编写调用Web Service的client程序
在Client Package中新建一个WSClient类。该类用于调用已经生成的Web Service客户端程序,代码例如以下:
package client; import client.QqOnlineWebService; import client.QqOnlineWebServiceSoap; public class WSClient { public static String main(String qq) { QqOnlineWebService service = new QqOnlineWebService(); QqOnlineWebServiceSoap soap = service.getQqOnlineWebServiceSoap(); String isOnline = soap.qqCheckOnline(qq); return (qq + "是否在线?" + isOnline); } }
新建一个Check.jsp,该页面用于收集用户的输入,代码例如以下:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Welcome</title> </head> <body> <form action="Result.jsp" method="get"> <p>请输入您的扣扣号: <input type="text" name="qq" /></p> <input type="submit" value="查询" /> </form> </body> </html>
另外再新建一个Result.jsp,该页面用于显示用户输入的扣扣的在线状态。代码例如以下:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="client.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>查询结果</title> </head> <body> <% String qq = request.getParameter("qq"); out.println(WSClient.main(qq)); %> </body> </html>
最后在WEB-INF中新建一个web.xml文件,该文件配置Web App的初始页面。主要代码例如以下:
<welcome-file-list> <welcome-file>Check.jsp</welcome-file> </welcome-file-list>
执行结果例如以下:
有兴趣的能够部署下程序。输入自己的扣扣玩下。
posted on 2017-05-09 10:52 cynchanpin 阅读(244) 评论(0) 编辑 收藏 举报