微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

基于Axis的WebService简单实例

 

1 下载并安装Tomcat,确认http://localhost:8080可以访问。

2 下载Axis,解压,将webapps下的axis工程复制到tomcatwebapps下。确认http://localhost:8080/axis可以访问。

3 编写简单class如下。将编译之后的class文件拷贝axis工程的classes目录下,注意保持package的目录层次。重启tomcat

package server;

public class SayHello {
   public String getName(String name)
     {
       return "Hello "+name+" !";
     }
}

4 新建deploy.wsdd文件内容如下。

<deployment name="test" xmlns="http://xml.apache.org/axis/wsdd/"

    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">

  <service name="SayHello" provider="java:RPC">

    <parameter name="className" value="server.SayHello"/>

    <parameter name="allowedMethods" value="getName"/>

  </service>

</deployment>

5 新建deploy.bat,内容如下。放在deploy.wsdd同一目录运行,主要注意设置axis相关jar包的位置和文件名(jar包可以从axis工程中得到,可能缺少mail.jaractivation.jar可以从网上下载),笔者放在D:/lib/axis下。如果提示done processing就说明发布成功了。

set AXIS_LIB=D:/lib/axis

set AXISCLAsspATH=%AXIS_LIB%/axis.jar;%AXIS_LIB%/commons-discovery.jar;%AXIS_LIB%/commons-logging.jar;%AXIS_LIB%/jaxrpc.jar;%AXIS_LIB%/saaj.jar;%AXIS_LIB%/log4j-1.2.8.jar;%AXIS_LIB%/xml-apis.jar;%AXIS_LIB%/xercesImpl.jar

java -cp %AXISCLAsspATH% org.apache.axis.client.AdminClient -lhttp://localhost:8080/axis/services/AdminService deploy.wsdd

pause

6 访问http://localhost:8080/axis/services,如果服务发布成功,会出现在页面上。点击服务名称后的wsdl链接,将网页另存为xml格式,修改扩展名为wsdl

7 新建create.bat,内容如下。运行,会新建wsclient目录,自动生成客户端代码

set Axis_Lib=D:/lib/axis

set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%

set Output_Path=D:/wsclient

set Package=server.SayHello

%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% SayHello.wsdl

pause

8 新建测试类。

public class test {

      public static void main(String[] args) throws ServiceException,remoteexception {

           SayHelloService service = new SayHelloServiceLocator();

        SayHello_PortType client = service.getSayHello() ;

        String retValue = client.getName("World");

        System.out.println(retValue);

      }

}

如果看到打印出Hello World !那么恭喜你!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐