一、编写webservice服务端程序(此部分引用http://blog.csdn.net/duanml61/article/details/8281512的博客)
第一步,新建webservice project,如图所示,选择JAX-WS【注:本例使用IDE为MyEclipse】
第二步,创建服务类
- package com.xjtu.webservice;
- /**
- *
- *
- * <p>
- * Title: 测试代码 /p>
- *
- * <p>
- * Description: 示例 业务类
- * </p>
- *
- * <p>
- * Copyright: Copyright (c) 2012
- * </p>
- *
- * @author dml@2012-12-11
- * @version 1.0
- */
- public class MobileNumInfo {
- public String getMobileNum() {
- return "13888888888";
- }
- }
第三步,发布Web Service,工程选刚刚新建的那个,strategy选Create Web service from Java class
第四步,生成WSDL
第五步,添加库文件【JAX-WS*】
第六步,启动Tomcat
第七步,打开浏览器,输入地址http://127.0.0.1:8080/MobileNumService/MobileNumInfoPort?wsdl
查看到如下页面,说明服务发布成功
二、编写webservice客户端程序(不同于客户端测试程序,以下为自己开发)
第一步、File-New-Web Project
第二步、生成ws
所需的类库文件
注:这里的步骤为参考,所以名字未改groupTest
注:wsdl地址根据具体情况而定
AlarmServiceClient类需要自己编写:
package com.cusi.cnms.inter.group;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.net.MalformedURLException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.xml.datatype.DatatypeConfigurationException;
import javax.xml.datatype.DatatypeFactory;
import javax.xml.datatype.XMLGregorianCalendar;
import javax.xml.namespace.QName;
import common.DBConnection;
import java.net.URL;
public class AlarmServiceClient {
public static void main(String[] args) {
URL url;
try {
url = new URL("http://localhost:8288/group/AlarmService?wsdl");
String srvName = "http://group.inter.cnms.cusi.com/";
javax.xml.ws.Service service = javax.xml.ws.Service.create(url,new QName(srvName,"AlarmService"));
AlarmService alarmSvr = service.getPort(new QName(srvName, "AlarmServicePort"), AlarmService.class);
//TODO add by yyp具体逻辑根据情况编写
int return_GetProvinceCircuitResponse = alarmSvr.onProvinceAlarmArrived("140000", alarminfo);
System.out.println("结果:" + return_GetProvinceCircuitResponse);
}
}
然后完成测试,结束。