欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Weblogic下部署axis的问题总结

程序员文章站 2022-04-16 23:29:56
...
    网上看过很多关于tomcat下的axis部署,却很少有weblogic的详细介绍,现把本人实际部署时遇到的问题及解决办法记录下来以供日后查阅。
     在tomcat下需要将axis/webapps/目录下的axis应用copy到tomcat下的webapps目录下,然后通过命令:
    java -Djava.ext.dirs=lib org.apache.axis.client.AdminClient deploy.wsdd部署(该命令需要注意端口问题,默认为8080,如果web应用不是该端口,则需要通过-p 8088参数指定,否则报401错误)
     而在weblogic服务器下,直接通过该命令再指定个端口如:
    java -Djava.ext.dirs=lib org.apache.axis.client.AdminClient -p 7001肯定是无法通过的,此时会报404错误,因为此时该命令会通过默认路径http://localhost:7001/axis/WEB-INF生成server-config.wsdd文件,而该应用在weblogic下不存在。
    第一种办法:在该域下部署个axis
    第二种办法通过-l参数指定路径
    即:-lhttp://localhost:7001/frameweb/services/EOMSProcessSheet
    如果采用第二种方法,则需要在web.xml中进行如下设置:
<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>