jws+webservice

来源:互联网 发布:网络语555… 编辑:程序博客网 时间:2024/05/20 23:38

简述:JWS-WebService.JWS是java语言实现的一种webservice,
用来开发和发布服务,它是一个轻量级的WS框架,

一、服务器项目(注一定要建成java project,不要建成web project)

1、编写方法类

?
1
2
3
4
5
6
7
8
9
10
11
12
13
packagecom.boonya.jaw.ws;
 
importjavax.jws.WebService;
@WebService
publicclass HelloWebserviceImpl
{
    publicString sayHello(String message)
    {
        System.out.println(message);
        return"Hello,"+message;
    }
 
}

2、编写发布类

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
packagecom.boonya.jaw.ws;
 
importjavax.xml.ws.Endpoint;
 
publicclass HelloWebservicePublish
{
    publicstatic void main(String[] args)
    {
        try
        {
            Endpoint.publish("http://192.168.20.48/webservice/hello",newHelloWebserviceImpl());
            System.out.println("webservice发布成功!");
        }catch(Exception e)
        {
            System.out.println("webservice发布失败!"+e.getMessage());
            ;
        }
    }
}

浏览器输入:http://192.168.20.48/webservice/hello可以看到发布成功后的页面以及wsdl文件。

二、调用服务器工程

1.wsimport命令简述:

-d 表示输出的目录,目录必须事先存在,否则导出失败。

 -keep表示导出webservice的class文件时是否也导出源代码java文件。

-verbose表示详细信息。

看我们的导出命令。我们直接导在d盘中。

先通过wsimport命令编译,再把编译成的文件拷贝到相应的目录下


2.客户端程序

Qname 简述

1.Qnameqname是qualified name 的简写  
2.构成:由名字空间(namespace)前缀(prefix)以及冒号(:),还有一个元素名称构成  

3.qname无非是有着特定格式的xml元素

package com.msq.client;


import java.net.MalformedURLException;
import java.net.URL;


import javax.xml.namespace.QName;
import javax.xml.ws.Service;


import com.msq.server.HelloWebserviceImpl;
import com.msq.server.HelloWebserviceImplService;


public class TelentService {
public static void main(String args[]){


   //第一种   
   //服务WSDL Document的地址  
URL url = new URL("http://127.0.0.1/webservice/hello?wsdl");
//1.Qnameqname是qualified name 的简写  
   //2.构成:由名字空间(namespace)前缀(prefix)以及冒号(:),还有一个元素名称构成  
QName qname =new QName("http://server.msq.com/", "HelloWebserviceImplService");
Service service = Service.create(url, qname);
HelloWebserviceImpl hei=service.getPort(HelloWebserviceImpl.class);
hei.sayHello("给力");

//第二种
HelloWebserviceImplService hsis = new HelloWebserviceImplService();
HelloWebserviceImpl hei =hsis.getHelloWebserviceImplPort();
hei.sayHello("给力");
}
}

三服务器端console显示





0 0
原创粉丝点击