Ошибка выполнения после экспорта веб-службы в другую среду - PullRequest
0 голосов
/ 07 ноября 2011

Я уже некоторое время занимаюсь разработкой веб-службы в своей Eclipse IDE, и после ее завершения я экспортировал ее на сервер под управлением Windows Server 2008 R2. После успешного развертывания я сталкиваюсь с ошибками во время выполнения:

16: 03: 39,358 ОШИБКА [STDERR] java.lang.ClassCastException: org.jboss.ws.core.jaxrpc.client.ServiceFactoryImpl нельзя привести к javax.xml.rpc.ServiceFactory 16: 03: 39,358 ОШИБКА [STDERR] в javax.xml.rpc.ServiceFactory.newInstance (ServiceFactory.java:63) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.jsp.GetDocuments_jsp._jspService (GetDocuments_jsp.java:86) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:70) 16: 03: 39,358 ОШИБКА [STDERR] на javax.servlet.http.HttpServlet.service (HttpServlet.java:717) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:369) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:322) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.jasper.servlet.JspServlet.service (JspServlet.java:249) 16: 03: 39,358 ОШИБКА [STDERR] на javax.servlet.http.HttpServlet.service (HttpServlet.java:717) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:290) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206) 16: 03: 39,358 ОШИБКА [STDERR] в org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter (ReplyHeaderFilter.java:96) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:235) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:235) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:191) 16: 03: 39,358 ОШИБКА [STDERR] в org.jboss.web.tomcat.security.SecurityAssociationValve.invoke (SecurityAssociationValve.java:183) 16: 03: 39,358 ОШИБКА [STDERR] в org.jboss.web.tomcat.security.JaccContextValve.invoke (JaccContextValve.java:95) 16: 03: 39,358 ОШИБКА [STDERR] в org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process (SecurityContextEstablishmentValve.java:126) 16: 03: 39,358 ОШИБКА [STDERR] в org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke (SecurityContextEstablishmentValve.java:70) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:127) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:102) 16: 03: 39,358 ОШИБКА [STDERR] в org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke (CachedConnectionValve.java:158) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:109) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:330) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:829) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:599) 16: 03: 39,358 ОШИБКА [STDERR] в org.apache.tomcat.util.net.JIoEndpoint $ Worker.run (JIoEndpoint.java:451) 16: 03: 39,358 ОШИБКА [STDERR] на java.lang.Thread.run (неизвестный источник)

Это происходит, когда я пытаюсь получить доступ к веб-методам, в этом примере GetDocuments - это веб-метод.Клиент использует JSP для создания Binding Stubs для связи с Сервисом.Эти заглушки генерируются автоматически в Eclipse IDE.Я не слишком много знаю о веб-сервисах или о том, как разобраться в этих проблемах, поскольку ошибки не указывают на какой-либо реальный класс в моем проекте.

Мой большой вопрос заключается в том, почему я не получил ошибок, пока не экспортировал проект.Я думал, что это может быть проблема с JRE или компилятором, но они одинаковы на обеих платформах.Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 08 ноября 2011

javax.xml.rpc.ServiceFactory, скорее всего, содержится либо в jboss-jaxrpc.jar, либо в javaee-api-*.jar (* является версией).

org.jboss.ws.core.jaxrpc.client.ServiceFactoryImpl содержится в библиотеке jbossws.

Таким образом, вы должны убедиться, что ваш JBoss использует совместимые версии этих библиотек, что, как кажется, имеет место в вашей настройке Eclipse.

Для будущих читателей: решение состояло в том, чтобы убедиться, что библиотеки, используемые JBoss, соответствуют библиотекам, используемым Eclipse, которые, по-видимому, имеют совместимые версии.

...