【发布时间】:2016-02-03 23:11:04
【问题描述】:
我正在通过 WAS7.0 发布 JAX-RPC Web 服务。我已经通过 RAD8.0 生成了骨架。 AFter 一代部署在本地,并且在我通过 Soap UI 收到所需响应时工作得非常好。
现在我在我们的测试服务器中部署了 EAR,它可以通过以下几行正常启动
[2/3/16 3:11:32:137 CST] 00000053 WebServicesSe W com.ibm.ws.webservices.engine.transport.http.WebServicesServlet setEndptMgrMBean WSWS4123E: Could not locate the Endpoint Manager MBean for com_service_mywebservices_MyServiceV1_0SOAPoHTTPImpl.
[2/3/16 3:11:32:137 CST] 00000053 ServletWrappe I com.ibm.ws.webcontainer.servlet.ServletWrapper init SRVE0242I: [TIIS_ADE] [/TIIS/eAgent/Ade] [com_service_mywebservices_MyServiceV1_0SOAPoHTTPImpl]: Initialization successful.
现在部署后,当我尝试访问 WSDL 或通过 Soap UI 发送请求时,我收到此错误:
SourceId: com.ibm.ws.webcontainer.servlet.ServletWrapper.service
ExtendedMessage: BBOO0220E: SRVE0014E: Uncaught service() exception root cause com_service_mywebservices_MyServiceV1_0SOAPoHTTPImpl: javax.servlet.ServletException: WSWS3142E: Error: Could not find Web services engine.
at com.ibm.ws.webservices.engine.transport.http.WebServicesServlet.doPost(WebServicesServlet.java:1105)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:595)
at com.ibm.ws.webservices.engine.transport.http.WebServicesServletBase.service(WebServicesServletBase.java:344)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1230)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
at com.mycompany.eagent.abc.app.service.CrossScriptingFilter.doFilter(CrossScriptingFilter.java:41)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:964
Service 端点通过 Data Power 访问,但 Data Power 不托管任何 WSDL,它只是传递请求。
知道可能出了什么问题......
我为解决的问题:
- 我检查了已部署 EAR 中的模式路径 (xsd)。该服务从我的本地运行
- 我检查了 Web.xml 和 WebService.xml 是否有任何可能丢失的链接。
Web.xml 条目:
<servlet>
<servlet-name>com_service_mywebservices_MyServiceV1_0SOAPoHTTPImpl</servlet-name>
<servlet-class>com.service.mywebservices.MyServiceV1_0SOAPoHTTPImpl</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>com_service_mywebservices_MyServiceV1_0SOAPoHTTPImpl</servlet-name>
<url-pattern>services/SOAPoHTTPEndpoint</url-pattern>
</servlet-mapping>
【问题讨论】:
-
我仍然找不到问题的根本原因,但是当我在本地部署测试服务器的 ear 文件时,我收到了创建的异常:javax.servlet.ServletException: WSWS3142E: 错误:找不到 Web 服务引擎。
-
请对此有所了解。
-
部署后您能否使用 ?wsdl 验证您的 wsdl?
-
当我尝试拉取 WSDL 时,我得到了同样的异常
标签: java web-services web ibm-was jax-rpc