Migrando o JBoss 5.1.0 para o JDK 7 - fornece erro jaxb SOAP

1

estamos trabalhando em um grande projeto e estamos em processo de migrar a instalação do JBoss para usar o JDK7, atualmente ele está usando o JDK6 e tudo funciona bem, mas precisamos usar o JDK7, mas não podemos usar o JBOSS 6 como alternativa.

Ao iniciar o JBOSS se a depuração do jaxb estiver ativada, receberemos os seguintes erros:

 [java] 11:57:28,477 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE: Trying to locate org/jboss/security/xacml/jaxb/jaxb.properties
 [java] 11:57:28,480 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE:   not found
 [java] 11:57:28,480 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE: Checking system property javax.xml.bind.context.factory
 [java] 11:57:28,481 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE:   not found
 [java] 11:57:28,481 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE: Checking system property javax.xml.bind.JAXBContext
 [java] 11:57:28,481 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE:   not found
 [java] 11:57:28,482 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE: Unable to find from OSGi: javax.xml.bind.JAXBContext
 [java] 11:57:28,482 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE: Checking META-INF/services
 [java] 11:57:28,482 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE: Reading jar:file:/D:/Product/jboss-5.1.0.GA/lib/endorsed/jaxb-impl.jar!/META-INF/services/javax.xml.bind.JAXBContext
 [java] 11:57:28,483 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE: Trying to load com.sun.xml.bind.v2.ContextFactory
 [java] 11:57:28,483 ERROR [STDERR] ????. 15, 2012 11:57:28 AM javax.xml.bind
 [java] FINE: loaded com.sun.xml.bind.v2.ContextFactory from jar:file:/D:/Product/jboss-5.1.0.GA/lib/endorsed/jaxb-impl.jar!/com/sun/xml/bind/v2/ContextFactory.class

O erro é produzido quando uma solicitação SOAP está sendo processada na parte de não-comprometimento.

O próximo conjunto de erros, além disso, está sendo produzido em uma solicitação SOAP:

     [java] javax.xml.ws.WebServiceException: java.lang.IllegalArgumentException: prefix xs is not bound to a namespace
     [java]     at org.jboss.ws.core.jaxws.JAXBDeserializer.handleUnmarshallException(JAXBDeserializer.java:110)
     [java]     at org.jboss.ws.core.jaxws.JAXBDeserializer.deserialize(JAXBDeserializer.java:78)
     [java]     at org.jboss.ws.core.binding.DeserializerSupport.deserialize(DeserializerSupport.java:58)
     [java]     at org.jboss.ws.core.soap.XMLContent.unmarshallObjectContents(XMLContent.java:179)
     [java]     at org.jboss.ws.core.soap.XMLContent.transitionTo(XMLContent.java:96)
     [java]     at org.jboss.ws.core.soap.DOMContent.transitionTo(DOMContent.java:74)
     [java]     at org.jboss.ws.core.soap.SOAPContentElement.transitionTo(SOAPContentElement.java:140)
     [java]     at org.jboss.ws.core.soap.SOAPBodyElementDoc.transitionTo(SOAPBodyElementDoc.java:85)
     [java]     at org.jboss.ws.core.soap.SOAPContentElement.getObjectValue(SOAPContentElement.java:172)
     [java]     at org.jboss.ws.core.EndpointInvocation.transformPayloadValue(EndpointInvocation.java:261)
     [java]     at org.jboss.ws.core.EndpointInvocation.getRequestParamValue(EndpointInvocation.java:113)
     [java]     at org.jboss.ws.core.EndpointInvocation.getRequestPayload(EndpointInvocation.java:133)
     [java]     at org.jboss.ws.core.server.DelegatingInvocation.getArgs(DelegatingInvocation.java:80)
     [java]     at org.jboss.wsf.container.jboss50.invocation.InvocationHandlerEJB3.invoke(InvocationHandlerEJB3.java:93)
     [java]     at org.jboss.ws.core.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:222)
     [java]     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:474)
     [java]     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:295)
     [java]     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:205)
     [java]     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:131)
     [java]     at org.jboss.wsf.common.servlet.AbstractEndpointServlet.service(AbstractEndpointServlet.java:85)
     [java]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
     [java]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
     [java]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     [java]     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
     [java]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
     [java]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     [java]     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
     [java]     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
     [java]     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
     [java]     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
     [java]     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
     [java]     at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
     [java]     at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
     [java]     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
     [java]     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
     [java]     at org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:460)
     [java]     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
     [java]     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
     [java]     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
     [java]     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
     [java]     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
     [java]     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
     [java]     at java.lang.Thread.run(Thread.java:722)

Nós tentamos substituir as bibliotecas distribuídas originais do JBoss 5.1.0 do diretório do cliente pela versão mais nova do jaxws 2.2.7, porque algumas delas, por exemplo, jaxb estavam dando alguns erros (esqueci de registrá-las, desculpe).

Mas o SOAP ainda não está funcionando.

Se qualquer outra informação for necessária, por favor, comente abaixo.

Obrigado.

    
por Damjan Dimitrioski 15.11.2012 / 13:00

1 resposta

2

infelizmente o JBoss 5.1 não é suportado para rodar no JDK7, então uma parte dos problemas visíveis que você está experimentando, pode ser perigoso rodar esta configuração em ambientes de produção.

Veja as configurações compatíveis para o JBoss EAP 5.1 (deve ser o mesmo para o GA - versões da comunidade). E nos fóruns do jboss.org você tem mais informações sobre a incompatibilidade .

Por que você realmente precisa atualizar para o JDK7? Lembre-se de que você pode ter várias versões do JDK no mesmo servidor e escolher com qual delas deseja executar o JBoss.

    
por 16.11.2012 / 08:40

Tags