图文详解Java编写Webservice程序

一、编写webservice服务端程序(此部分引用http://blog.csdn.net/duanml61/article/details/8281512的博客)

第一步,新建webservice project,如图所示,选择JAX-WS【注:本例使用IDE为MyEclipse】

第二步,创建服务类

[java]  view plain copy
  1. package com.xjtu.webservice;  
  2.   
  3. /** 
  4.  *  
  5.  *  
  6.  * <p> 
  7.  * Title: 测试代码 /p> 
  8.  *  
  9.  * <p> 
  10.  * Description: 示例 业务类 
  11.  * </p> 
  12.  *  
  13.  * <p> 
  14.  * Copyright: Copyright (c) 2012 
  15.  * </p> 
  16.  *  
  17.  * @author dml@2012-12-11 
  18.  * @version 1.0 
  19.  */  
  20. public class MobileNumInfo {  
  21.     public String getMobileNum() {  
  22.         return "13888888888";  
  23.     }  
  24. }  

第三步,发布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);

   }
}

然后完成测试,结束。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值