JAVA Webservice

来源:互联网 发布:短域名批量生成 编辑:程序博客网 时间:2024/04/25 13:58

简介

  1. WebService学习笔记

  2. Java 实现调用WebService的几种方式

  3. 使用wsimport根据WSDL自动生成客户端代码

  4. java 调用webservice的各种方法总结

cmd->wsimport -keep -d 存放class文件的路径 -s 存放Java文件的路径 -p 类的包名 具体的WSDL地址


发布WebService

注解的方式

package com.webservice;import javax.jws.WebMethod;import javax.jws.WebParam;import javax.jws.WebResult;import javax.jws.WebService;import javax.xml.ws.Endpoint;/** * WebService * 将 Java 类标记为实现 Web Service,或者将 Java 接口标记为定义 Web Service 接口 */@WebService(serviceName="MyService",targetNamespace="http://www.baidu.com")public class HelloService implements IHelloService{    @WebMethod(operationName="AliassayHello")//默认为SayHello    @WebResult(name="myReturn")//默认为 return    //@WebParam 默认为 arg0,arg1    public String sayHello(@WebParam(name="myname") String name){        return  "hello: " + name;    }    public String sayGoodbye(String name){        return  "goodbye: " + name;    }    @WebMethod(exclude=true)//当前方法不被发布出去, 默认为 false    public String sayHello2(String name){        return "hello " + name;    }    public static void main(String[] args) {        /**         * 参数1:服务的发布地址         * 参数2:服务的实现者         *  Endpoint  会重新启动一个线程         */        Endpoint.publish("http://localhost:8088/test", new HelloService());        System.out.println("Server ready...");    }}

用wsdd(Web Services Deployment Descriptor)发布 Webservice

wsdd+Axis发布Webservice


客户端访问

1.wsimport 自动生成客户端代码,通过代理的模式实现访问

2.通过URL直接发送SOAP报文访问(Java 应用程序,jsp+ajax)


示例源码

基于注解方式发布的Webservice的具体实现

download

WSDD形式的Webservice的具体实现

download


常见问题

1.Eclipse 的Webservice Explorer 打不开,报500错误的原因,把jre8改成jre7就可以解决了。

2.Java应用程序通过 HttpURLConnection访问网址,因为服务器的安全设置不接受Java程序作为客户端访问,解决方案是设置客户端的User Agent,要手工设置安全性

  conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");

3.项目要设置WEB.XM中的的servlet,否则会报错;

0 0
原创粉丝点击