gpt4 book ai didi

java - Tomcat 中的 JaxWS 应用程序 URL

转载 作者:行者123 更新时间:2023-11-28 23:56:10 25 4
gpt4 key购买 nike

我不知道如何在 Tomcat 上更改我的 JAX-WS WebService 的 URL。

localhost:8080/WSCalc/WSCalc?wsdl 运行正常,但我想将 URL 更改为 localhost:8080/ws/WSCalc/WSCalc?wsdl

使用下面的配置我可以运行 localhost:8080/ws/WSCalc/(它是 index.jsp)但是我不能运行 WebService localhost:8080/ws/WSCalc/WSCalc?wsdl(它返回 404)

目录 webapps/包括:

WSCalc.war
WSCalc/
-index.jsp
-META-INF/context.xml
-WEB-INF/web.xml
-WEB-INF/sun-jaxws.xml
-WEB-INF/classes/*
-WEB-INF/lib/*

web.xml:

<web-app version="3.0" 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_3_0.xsd">
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>
<servlet>
<servlet-name>WSCalc</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>WSCalc</servlet-name>
<url-pattern>/WSCalc</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>

太阳-jaxws.xml:

<endpoints version="2.0" xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime">
<endpoint implementation="cz.vrana.WSCalc" name="WSCalc" url-pattern="/WSCalc"/>
</endpoints>

服务器.xml:

<Host name="localhost" appBase="webapps" unpackWars="true" autodeploy=""true">
<Context path="/ws" docBase="." />
</Host>

最佳答案

您需要做的第一件事是更改应用程序部署的上下文。为此,请参阅 The Context Container .

另一方面,对于模式映射,您可以在 web.xml 中更改所有以 /WSCalc/ 开头的路径

<servlet-mapping>
<servlet-name>WSCalc</servlet-name>
<url-pattern>/WSCalc/*</url-pattern>
</servlet-mapping>

或者如果你想要一个单一的模式

<servlet-mapping>
<servlet-name>WSCalc</servlet-name>
<url-pattern>/WSCalc/WSCalc</url-pattern>
</servlet-mapping>

在sun-jaxws.xml中改成

<endpoint ... url-pattern="/WSCalc/WSCalc" />

关于java - Tomcat 中的 JaxWS 应用程序 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15406842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com