1

我有一个带有 DispatcherServlet 和一些 REST web 服务的 spring webapp。这工作正常。

当添加一些 JAX WS 端点 ( @WebService) 并使用它导出时,SimpleJaxWsServiceExporter这似乎接管了 servlet 的整个命名空间。我无法再访问静态资源或 REST 服务。

我尝试将 baseAddress 属性设置为,http://example.com:8080/soap/但它仍然为 /* 提供 404。

我可以做些什么来将 JAX WS 服务导出到某个路径下吗?

编辑:上述服务部署为 webapp,在 /* 上配置了 DispatcherServlet。

4

2 回答 2

0

确保<mvc:default-servlet-handler />在您的调度程序 servlet 配置中有,当您将调度程序 servlet 映射到 /* 时,这是必需的。

于 2013-03-09T15:31:30.880 回答
0

为 Web 服务定义单独的 servlet

来自 Spring 文档的示例。请注意,您必须为此 servlet 定义一个配置文件。http://static.springsource.org/spring-ws/site/reference/html/server.html参见第 5.3.1 节

<servlet>
    <servlet-name>spring-ws</servlet-name>
    <servlet-class>org.springframework.ws.transport.http.MessageDispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>spring-ws</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

于 2013-03-13T14:17:08.130 回答