拿到现成的wsdl. 用java开发webService服务端

来源:互联网 发布:家庭预算软件 编辑:程序博客网 时间:2024/06/05 08:30

java 使用axis1.4开发webService重新整理  2013/3/19

第一步:配置AXIS_LIB环境变量,指向axis的lib目录;

第二步:配置java环境变量
classpath环境变量设置:
.\;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib;%AXIS_LIB%\axis.jar;%AXIS_LIB%\activation.jar;%AXIS_LIB%

\axis-ant.jar;%AXIS_LIB%\commons-discovery-0.2.jar;%AXIS_LIB%\commons-logging-1.0.4.jar;%AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%

\log4j-1.2.8.jar;%AXIS_LIB%\mail.jar;%AXIS_LIB%\saaj.jar;%AXIS_LIB%\wsdl4j-1.5.1.jar;%AXIS_LIB%\xmlsec-1.4.0.jar;%AXIS_LIB%

\dom4j-1.6.1.jar;

第三步:把activation.jar、mail.jar拷到tomcat的lib目录

第四步:把axis1.4中的webapp中的axis拷到tomcat的webApp中;并且运行tomcat,用http://127.0.0.1:8080/axis 看axis项目是否正常。


第五步:编写.bat文件,通过wsdl生成java及wsdd发布文件
set MY_PATH=.;axis.jar;commons-logging-1.0.4.jar;commons-discovery-0.2.jar;wsdl4j-1.5.1.jar;jaxrpc.jar;saaj.jar

java -classpath %MY_PATH% org.apache.axis.wsdl.WSDL2Java -s -S  true -t -p com.feifeiyu.smartwaveorder.axis

SmartWaveOrder.wsdl

 

第六步:把编译好的java文件拷到web工程的src中,把wsdd文件拷到WEB-INF目录中

第七步:在新建java web工程,在web.xml中添加:axis 1.4监听
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
 xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name></display-name> 
 
  <!-- **** axis 1.4监听 **** -->
   <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>
    <url-pattern>/servlet/AdminServlet</url-pattern>
  </servlet-mapping>
 -->

    <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;
    http://www.w3.org/TR/2003/WD-wsdl12-20030303/#ietf-draft
    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>
 
 
 
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>


第七步:发布
 java org.apache.axis.client.AdminClient -lhttp://192.168.7.93:8080/RSOP/services/RSOP deploy.wsdd

第八步:http://127.0.0.1:8080/yourselfProjName/services 就可以看到你发布的新接口了

第九步:到源码中找,有一个*impl.java文件,就是你要写服务端程序位置啦

The End.

原创粉丝点击