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

webService 开发

第一步:

下载axis1.4,解压后把以下jar包

axis.jar
axis-ant.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
jaxrpc.jar
log4j-1.2.8.jar
saaj.jar
wsdl4j-1.5.1.jar

放到工程的lib目录下,导入到工程里面。

第二步:

web.xml文件配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>webservice</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
 
   <servlet> 
    <servlet-name>axis</servlet-name> 
    <servlet-class> 
        org.apache.axis.transport.http.AxisServlet 
    </servlet-class> 
    <load-on-startup>2</load-on-startup> 
</servlet> 
<servlet-mapping
    <servlet-name>axis</servlet-name> 
    <url-pattern>/services/*</url-pattern> 
</servlet-mapping>  

</web-app>

第三步:

在WEB-INF文件夹下建文件server-config.wsdd,文件内容

<deployment xmlns="http://xml.apache.org/axis/wsdd/
       xmlns:java="
http://xml.apache.org/axis/wsdd/providers/java"> 
       <handler name="URLMapper" 
              type="java:org.apache.axis.handlers.http.URLMapper" />    
       <!-- 系统服务 --> 
       <service name="AdminService" provider="java:MSG"> 
              <parameter name="allowedMethods" value="AdminService" /> 
              <parameter name="enableRemoteAdmin" value="false" /> 
              <parameter name="className" value="org.apache.axis.utils.Admin" /> 
              <namespace>http://xml.apache.org/axis/wsdd/</namespace> 
       </service> 
 
       <service name="Version" provider="java:RPC"> 
              <parameter name="allowedMethods" value="getVersion" /> 
              <parameter name="className" value="org.apache.axis.Version" /> 
       </service>   
           
       <service name="TestService" provider="java:RPC"> 
              <parameter name="className" value="com.service.TestService" /> 
              <parameter name="allowedMethods" value="*" /> 
       </service> 
        
       <transport name="http"> 
            <requestFlow> 
                <handler type="URLMapper" /> 
            </requestFlow> 
       </transport> 
 
</deployment> 

第四步:

服务端开发:

package com.service;

public class TestService {

 public String hello(String name) {
  System.out.println("server -->hello " + name);
  return "hello " + name;
 }
}

第五步:

客户端开发:

package com.client;

 

import javax.xml.namespace.QName;

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

public class TestClient {

 /**
  * @param args
  */
 public static void main(String[] args) throws Exception{
  String wsdlUrl = "
http://localhost:8080/webservice/services/TestService?wsdl";
  String namespaceUri = "com.service";
  Service service = new Service();
  Call call = (Call)service.createCall();
  call.setTargetEndpointAddress(wsdlUrl);
  call.setoperationName(new QName(namespaceUri,"hello"));
  String result = (String)call.invoke(new Object[]{"ppt"});
  System.out.println("client: ->" + result);
 }

}

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

相关推荐