zoukankan      html  css  js  c++  java
  • tomcat+webservice实现简单的web服务远程调用接口

    1,准备工作:
        ①需要使用到jaxws的一系列架包,网址:http://jax-ws.java.net,我下的是比较新的一个版本(下载好以后吧架包发在lib下),②webservice的一个工具:soapUI,这个在网上都有③开发web项目的IDE
    我使用的是myEclipse6.5,④生成客户端代码的axis,我用的是1.4。

    2工具都准备好了,接下来就是写代码了,webservice就是将接口发布给别的程序调用,所以我们对外只能暴露我们的接口。
      创建两个包,一个是com.itf.test,另外一个是com.impl.test,看得出来一个是放接口的,一个是放实现类

    package com.impl.test;
    
    import javax.jws.WebService;
    
    import nc.itf.test.IHelloWorld;
    
    //targetnamespace指的是wsdl的namespace
    @WebService(targetNamespace="http://demo.webservice",name="Hello")
    public class HelloWorldImpl implements IHelloWorld{
    
    	@Override
    	public String sayHelloWorld() {
    		return "Hello World";
    	}
    
    }
    

     

    package com.itf.test;
    
    import javax.jws.WebService;
    
    @WebService
    public interface IHelloWorld {
    	
    	public String sayHelloWorld();
    
    }
    

      注意的是对于webservice的类来说,都需要用@Webservice来注释,注释还有很多的参数,具体的可以去doc下面看.

    3写好代码以后,我们就可以写配置文件了:配置文件在WEB-INF下面

    <?xml version="1.0" encoding="UTF-8"?>
    <endpoints xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime" version="2.0">
    	<endpoint name="IHelloWorld" implementation="nc.impl.test.HelloWorldImpl" url-pattern="/hello">
    		
    	</endpoint>
    </endpoints>
    

    配置文件的详细写法也可以从文档中看
    写好这些东西以后,就可以启动tomcat,如果不出意外的话,就会看到

    点进去就可以看到详细的信息了,然后把soapUI打开,新建一个项目,将这个上面的URL复制到soapUI中,tools->Axis1.XArtifacts,tools-tools  

    点击缺点,就可以选择生成了,需要选择目标地址。

    忘记了,还有web.xml文件需要添加:

        <!-- ws -->
         <listener>  
            <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>  
           </listener>  
      <servlet>  
        <servlet-name>blog</servlet-name>  
        <servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>  
        <load-on-startup>1</load-on-startup>  
      </servlet>
  • 相关阅读:
    【35.39%】【hdu 3333】Turing Tree
    【???】【???】小麦亩产一百八
    【心情】NOIP2014记忆
    【???】【???】了不起的郁杨
    【45.61%】【codeforces 701D】As Fast As Possible
    js如何找到方法在哪个js文件
    sql报句柄无效。 (异常来自 HRESULT:0x80070006 (E_HANDLE))
    webform的页面缓存
    KindleEditor上传文件报404
    什么是publickeytoken及publickeytoken的作用
  • 原文地址:https://www.cnblogs.com/zr520/p/4834211.html
Copyright © 2011-2022 走看看