加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

axis1.4 WebService架构搭建

发布时间:2020-12-17 00:39:40 所属栏目:安全 来源:网络整理
导读:webservice的框架有很多种axis1 axis2 cfx......。 其中axis1.4是比较稳定和成熟的一种。。。 一。axis的下载 http://download.csdn.net/detail/mirenxiaoxiao/4513296 二,jdk和tomcat的配置 三,搭建环境 ??????? eclipse? Tomcat? 1 服务端: ? 新建工程s

webservice的框架有很多种axis1 axis2 cfx......。
其中axis1.4是比较稳定和成熟的一种。。。
一。axis的下载 http://download.csdn.net/detail/mirenxiaoxiao/4513296

二,jdk和tomcat的配置
三,搭建环境

??????? eclipse? Tomcat?
1 服务端:
? 新建工程server_axis,解压缩axis-bin-1_4.zip把 axis-1_4webappsaxisWEB-INFlib的包拷到server_axis工程的lib下面。

?2.web.xml文件

<display-name>Apache-Axis</display-name>  
       
    <listener>  
        <listener-class>org.apache.axis.transport.http.AxisHTTPSessionListener</listener-class>  
    </listener>  
       
  <servlet>  
    <servlet-name>AxisServlet</servlet-name>  
    <display-name>Apache-Axis Servlet</display-name>  
    <servlet-class>  
        org.apache.axis.transport.http.AxisServlet   
    </servlet-class>  
  </servlet>  
  
  <servlet>  
    <servlet-name>AdminServlet</servlet-name>  
    <display-name>Axis Admin Servlet</display-name>  
    <servlet-class>  
        org.apache.axis.transport.http.AdminServlet   
    </servlet-class>  
    <load-on-startup>100</load-on-startup>  
  </servlet>  
  
  <servlet>  
    <servlet-name>SOAPMonitorService</servlet-name>  
    <display-name>SOAPMonitorService</display-name>  
    <servlet-class>  
        org.apache.axis.monitor.SOAPMonitorService   
    </servlet-class>  
    <init-param>  
     <param-name>SOAPMonitorPort</param-name>  
      <param-value>5001</param-value>  
    </init-param>  
    <load-on-startup>100</load-on-startup>  
  </servlet>  
  
  <servlet-mapping>  
    <servlet-name>AxisServlet</servlet-name>  
    <url-pattern>/servlet/AxisServlet</url-pattern>  
  </servlet-mapping>  
  
  <servlet-mapping>  
    <servlet-name>AxisServlet</servlet-name>  
   <url-pattern>*.jws</url-pattern>  
  </servlet-mapping>  
  
  <servlet-mapping>  
    <servlet-name>AxisServlet</servlet-name>  
    <url-pattern>/services/*</url-pattern>  
  </servlet-mapping>  
  
  <servlet-mapping>  
    <servlet-name>SOAPMonitorService</servlet-name>  
   <url-pattern>/SOAPMonitor</url-pattern>  
  </servlet-mapping>  
  
 <!-- uncomment this if you want the admin servlet -->  
 <!--   
  <servlet-mapping>  
    <servlet-name>AdminServlet</servlet-name>  
67.    <url-pattern>/servlet/AdminServlet</url-pattern>  
68.  </servlet-mapping>  
69. -->  
  
    <session-config>  
        <!-- Default to 5 minute session timeouts -->  
        <session-timeout>5</session-timeout>  
    </session-config>  
  
    <!-- currently the W3C havent settled on a media type for WSDL;   
77.    http://www.w3.org/TR/2003/WD-wsdl12-20030303/#ietf-draft   
78.    for now we go with the basic 'it's XML' response -->  
  <mime-mapping>  
    <extension>wsdl</extension>  
     <mime-type>text/xml</mime-type>  
  </mime-mapping>  
     
  
  <mime-mapping>  
    <extension>xsd</extension>  
    <mime-type>text/xml</mime-type>  
  </mime-mapping> 
	 


3.

新建server-config.wsdd文件入在WEB-INF下面

内容为:

1.<?xml version="1.0" encoding="UTF-8"?>  
2.<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">  
3. <globalConfiguration>  
4.  <parameter name="adminPassword" value="admin"/>  
5.  <parameter name="attachments.implementation" value="org.apache.axis.attachments.AttachmentsImpl"/>  
6.  <parameter name="sendXsiTypes" value="true"/>  
7.  <parameter name="sendMultiRefs" value="true"/>  
8.  <parameter name="sendXMLDeclaration" value="true"/>  
9.  <parameter name="axis.sendMinimizedElements" value="true"/>  
10.  <requestFlow>  
11.   <handler type="java:org.apache.axis.handlers.JWSHandler">  
12.    <parameter name="scope" value="session"/>  
13.   </handler>  
14.   <handler type="java:org.apache.axis.handlers.JWSHandler">  
15.    <parameter name="scope" value="request"/>  
16.    <parameter name="extension" value=".jwr"/>  
17.   </handler>  
18.  </requestFlow>  
19. </globalConfiguration>  
20. <handler name="LocalResponder" type="java:org.apache.axis.transport.local.LocalResponder"/>  
21. <handler name="URLMapper" type="java:org.apache.axis.handlers.http.URLMapper"/>  
22. <handler name="Authenticate" type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>  
23.  
24. <service name="Version" provider="java:RPC">  
25.  <parameter name="allowedMethods" value="getVersion"/>  
26.  <parameter name="className" value="org.apache.axis.Version"/>  
27. </service>  
28.    
29.<!--   
30.  
31. <service name="HelloWorld" provider="java:RPC">  
32.  <parameter name="allowedMethods" value="*"/>  
33.  <parameter name="scope" value="Request"/>  
34.  <parameter name="className" value="anni.HelloWorld"/>  
35. </service>  
36.     <service name="OrderService" provider="java:RPC">    
37.        <parameter name="allowedMethods" value="*"/>  
38.        <parameter name="className" value="anni.OrderService"/>  
39.        <beanMapping languageSpecificType="java:anni.Order" qname="ns1:Order"    
40.            xmlns:ns1="urn:BeanService"/>  
41.    </service>  
42.    
43.    
44.    <service name="HandleredService" provider="java:RPC">  
45.        <parameter name="allowedMethods" value="*"/>  
46.        <parameter name="className" value="anni.handler.HandleredService"/>  
47.        <parameter name="allowedRoles" value="lingo,anni"/>  
48.        <requestFlow>  
49.            <handler name="authen" type="java:anni.handler.AuthenticationHandler"/>  
50.        <handler name="author" type="java:anni.handler.AuthorizationHandler"/>  
51.            <handler name="logging" type="java:anni.handler.LogHandler">  
52.                <parameter name="filename" value="/MyService.log"/>  
53.            </handler>  
54.        </requestFlow>  
55.    </service>  
56.  
57.  
58.-->  
59.  
60.  
61.  
62. <transport name="http">  
63.  <requestFlow>  
64.   <handler type="URLMapper"/>  
65.   <handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>  
66.  </requestFlow>  
67. </transport>  
68. <transport name="local">  
69.  <responseFlow>  
70.   <handler type="LocalResponder"/>  
71.  </responseFlow>  
72. </transport>  
73.</deployment>  


4.在浏览器中输入地址
?? http://localhost:8080/server_axis/services
?? 会显示你所发布的服务
5.

新建 HelloWorld.java?

内容为:

package com.hisun.itmms.webService;

public class HelloWorld {?? ??? public String sayHello() {?? ??????? return "hello world!xiaoxiao";?? ??? }?? }?

6.然后是在server-config.wsdd里面发布HelloWorld ,
<service name="HelloWorld" provider="java:RPC">  
       <parameter name="allowedMethods" value="*"/>  
       <parameter name="scope" value="Request"/>  
       <parameter name="className" value="com.hisun.itmms.webService.HelloWorld"/>  
     </service>  

?

7.客户端

?新建工程client_axis? 同样的把那些包拷过去。。。

新建HelloClient.java

?

package com.hisun.itmms.webService;
import org.apache.axis.client.Call;   
import org.apache.axis.client.Service;  

public class HelloClient {   
    public static void main(String [] args) throws Exception {   
        String endpoint = "http://localhost:8080/server_axis/services/HelloWorld";//注意!差别仅仅在这里!!   
        Service service = new Service();   
        Call    call    = (Call) service.createCall();   
        call.setTargetEndpointAddress(new java.net.URL(endpoint));   
        call.setOperationName("sayHello");   
        String res = (String) call.invoke(new Object[]{});   
        System.out.println(res);   
   }   
}  


8.运行client类,运行结果如下

hello world!xiaoxiao

整个过程完毕!!!!
?
参考:http://www.iteye.com/topic/571083
     http://www.blogjava.net/tangzurui/archive/2011/05/25/350988.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读