WebService 简单入门教程(Java)

项目目的:  
    程序A调用程序B中的方法C
  
  
首先申明:本次需要采用的JDK版本为jdk1.6+,也就是要java6+才能看到效果,java5没试过...我认为,升级一下JDK版本比起安装什么  
Axis以及导入一堆jar包和配置N多配置文件来说,java6的webservice无疑是简单的不能再简单!  
  
1.首先先创建两个java项目,可以使web项目也可以是普通项目,我这里是两个简单的普通工程,通过main方法来发布服务和测试调用服务
2.先写服务端项目名叫做java_webService然后创建一个ServiceTest类代码如下
package test;

import javax.jws.WebService;
import javax.xml.ws.Endpoint;

//别忘了引入webservice  
@WebService
public class ServiceTest {

     /**
     * 这是一个最简单的服务方法
     * 该方法就是要暴露给其他应用程序调用的方法
     */
    public String getUser(String words){
        return "成功接收到你的参数为-------->"+words;
    }

    /**
     * 这里我们使用main方法来发布我们的service
     * @param args
     */
    public static void main(String[] args) {
        Endpoint.publish("http://localhost:8081/ServiceTest/users",new ServiceTest());
        System.out.println("Publish Success~");
    }




}
3.打出"Publish Success~"后,说明我们消息发布成功,不成的话,注意:1.需要JDK1.6+,2.确定服务器端口没有被占用;成功后, 在浏览器地址栏输入:http://localhost:8081/ServiceTest/users?wsdl就可以看到该service的详细信息!
4.然后再创建一个调用方client,我这里创建了一个java_webClient项目作为调用方类的名字叫做ClientTest代码如下
package client;

import com.client.service.PublishTest;
import com.client.service.PublishTestService;

public class ClientTest {

    /**
     * 这里用main方法来测试调用
     * @param args
     */
    public static void main(String[] args) {
        //new服务对象,前提是先要用cmd根据服务方发布的wsdl文件来生成我们客户端需要的一些文件
        PublishTest pd = new PublishTestService().getPublishTestPort();
        //用对象调用服务方的方法,
        String success = pd.getUser("success");
        System.out.println(success);

    }


}

5.服务端已经发布好了,客户端也已经就绪,接下来就根据服务端发布的wsdl来生成客户端需要的一些文件

关键的来了,打开cmd输入以下命令:wsimport -s src的路径(客户端项目) -p 完整包名(客户端) -keep webservice的发布地址(服务端的发布地址) 然后回车就OK了

例如我这里是:
wsimport -s E:\WorkSpace\qijx_example_workSpace\java_webClient\src -p com.client.service -keep http://localhost:8081/ServiceTest/users?wsdl

(如果wsimport命令失效,请检查是否把jdk配入环境变量!JAVA_HOME:JDK所在位置,CLASSPATH:%JAVA_HOME%\lib\tools.jar)
 回车后,会出现: 
parsing WSDL...
generating code... 
compiling code... 
恭喜你,成功了,
然后刷新客户端java_webClient项目会看见多了一些需要的文件,这个时候就可以按照上面的步骤进行调用啦

 

6.想自己编写一个查询天气预报的接口可以参考(http://www.cnblogs.com/xdp-gacl/p/4260627.html)写的挺好,只不过上面的天气预报的wsdl访问不了了,新的是http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值