用java6自带工具,在eclipse3.3环境,初学WebService

环境是要jdk1.6

首先在eclipse中新建一个java项目

然后写个service类

 

package cn.com.wsm.service;


import javax.jws.WebService;

import javax.xml.ws.Endpoint;


@WebService

public class JavaService

{

    public String doSomething(String s)

    {

        System.out.println(s);

        return "Hello " + s +" !";

    }

 

    public static void main(String[] args)

    {

        Endpoint.publish("http://localhost:8888/javaWebservice/", new JavaService());

    }

}

 运行JavaService类,可以看成是服务端

然后再浏览器上打入 http://localhost:8888/javaWebservice/?wsdl   会出现一段xml

 

 <?xml version="1.0" encoding="UTF-8" ?>

 

<!--
 Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.6 in JDK 6. 
  -->
- < definitions xmlns:soap =" http://schemas.xmlsoap.org/wsdl/soap/ " xmlns:tns =" http://service.wsm.com.cn/ " xmlns:xsd =" http://www.w3.org/2001/XMLSchema " xmlns =" http://schemas.xmlsoap.org/wsdl/ " targetNamespace =" http://service.wsm.com.cn/ " name =" JavaServiceService ">
- < types >
- < xsd:schema >
  < xsd:import namespace =" http://service.wsm.com.cn/ " schemaLocation =" http://localhost:8888/javaWebservice/?xsd=1 " />
  </ xsd:schema >
  </ types >
- < message name =" doSomething ">
  < part name =" parameters " element =" tns:doSomething " />
  </ message >
- < message name =" doSomethingResponse ">
  < part name =" parameters " element =" tns:doSomethingResponse " />
  </ message >
- < portType name =" JavaService ">
- < operation name =" doSomething ">
  < input message =" tns:doSomething " />
  < output message =" tns:doSomethingResponse " />
  </ operation >
  </ portType >
- < binding name =" JavaServicePortBinding " type =" tns:JavaService ">
  < soap:binding transport =" http://schemas.xmlsoap.org/soap/http " style =" document " />
- < operation name =" doSomething ">
  < soap:operation soapAction ="" />
- < input >
  < soap:body use =" literal " />
  </ input >
- < output >
  < soap:body use =" literal " />
  </ output >
  </ operation >
  </ binding >
- < service name =" JavaServiceService ">
- < port name =" JavaServicePort " binding =" tns:JavaServicePortBinding ">
  < soap:address location =" http://localhost:8888/javaWebservice/ " />
  </ port >
  </ service >
  </ definitions >
 
说明你的service设置成功。
接着就是设置client,用client来调用service的方法
同时要运行JavaService类 ,开启服务端
运行cmd 进入到你的eclipse所在项目的src目录下
运行一段命令:
D:/workspaces/javaWebservice/src>wsimport -p cn.com.wsm.client -keep http://localhost:8888/javaWebservice/?wsdl
 会在你的wsm包下多出一个client包以及一些java类,说明客户端生成
 
新建一个client类测试
 
package cn.com.wsm.service;
 
public class Client {
  /**
     * @param args
     */
    public static void main(String[] args)
    {
        JavaService a = new JavaServiceService().getJavaServicePort();
        String s = a.doSomething("我来了");
        System.out.println(s);

    }
}

其中注意了,要包含
import cn.com.wsm.client.JavaServiceService;
import cn.com.wsm.client.JavaService;
这两个类
 运行client类
出现 hello,我来了
说明调试成功~
最基本的已说完~
 当然webservice很复杂,这是最最最基本的~自己也还刚开始学,希望对初学者有帮助~
注释:
wsimport
wsimport是在JDK的bin目录下的一个exe文件(Windows版),主要功能是根据服务端发布的wsdl文件生成客户端存根及框架,负责与Web Service 服务器通信,并在将其封装成实例,客户端可以直接使用,就像使用本地实例一样。对Java而言,wsimport帮助程序员生存调用web service所需要的客户端类文件.java和.class。要提醒指出的是,wsimport可以用于非Java的服务器端,如:服务器端也许是C#编写的web service,通过wsimport则生成Java的客户端实现。
命令参数说明:
  •  -d 生成客户端执行类的class文件的存放目录
  •  -s 生成客户端执行类的源文件的存放目录
  •  -p 定义生成类的包名
 
 
 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值