我有一个基于Axis2的Web服务,我在Tomcat中部署了它,首先我下载了axis2.war并将其放置在Tomcat的webapps文件夹中,然后创建了axis2文件夹及其子文件夹。在services
子文件夹中,放置.aar文件。然后在浏览器中,转到http://localhost:8080/axis2。它有一个链接服务,列出了所有服务。假设我的服务是HelloWorldService。因此可访问的路径是
但是我不想向世界透露我的Web服务是由Axis2驱动的。假设我希望路径为
该怎么做?我是否必须将axis2
文件夹重命名为abc
。我还在同一个Tomcat中部署了一个Web应用程序abc
。我是否将axis2
子文件夹的内容复制到abc
。我尝试过,没有用。
答案 0 :(得分:0)
我还在同一个Tomcat中部署了一个Web应用程序
abc
。是否将axis2子文件夹的内容复制到abc。
您正在考虑正确的方向,是的,您必须将Axis2.war
到abc
的所有内容(不需要100%,但最好从此开始) web.xml
。
您必须将axis2.war/WEB-INF/web.xml
的内容与abc/WEB-INF/web.xml
合并,方法是分别将以下内容分别复制到<web-app>
XML标签中。
<servlet>
<display-name>Apache-Axis Servlet</display-name>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>
<!--<init-param>-->
<!--<param-name>axis2.xml.path</param-name>-->
<!--<param-value>/WEB-INF/conf/axis2.xml</param-value>-->
<!--<param-name>axis2.xml.url</param-name>-->
<!--<param-value>http://localhost/myrepo/axis2.xml</param-value>-->
<!--<param-name>axis2.repository.path</param-name>-->
<!--<param-value>/WEB-INF</param-value>-->
<!--<param-name>axis2.repository.url</param-name>-->
<!--<param-value>http://localhost/myrepo</param-value>-->
<!--</init-param>-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<display-name>Apache-Axis AxisAdmin Servlet (Web Admin)</display-name>
<servlet-name>AxisAdminServlet</servlet-name>
<servlet-class>org.apache.axis2.webapp.AxisAdminServlet</servlet-class>
</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>AxisAdminServlet</servlet-name>
<url-pattern>/axis2-admin/*</url-pattern>
</servlet-mapping>
希望它对您有用!如果不起作用,请更新您的问题,我可以重新调整答案。