我遇到了需要在我的服务器上部署的Web服务的问题。
当我在Tomcat和xercesImpl.jar上的本地环境中部署它时,我没有问题。
Tomcat 7,java 6,xercesImpl 2.9.1
当我在Weblogic上部署战争时,问题出现了。 我试图在没有xercesImpl.jar的情况下进行部署,因为我知道Weblogic有自己的实现,我回忆这个问题:
Weblogic 12g Java 6
<container-descriptor>
<servlet-reload-check-secs>-1</servlet-reload-check-secs>
<prefer-web-inf-classes>false</prefer-web-inf-classes>
<show-archived-real-path-enabled>true</show-archived-real-path-enabled>
</container-descriptor>
如果我使用xercesImpl.jar部署war文件并更改weblogic.xml,如下所示:
[2015-05-12 13:47:14,895] ERROR com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut {[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)' ff-sm-03, null, "null", PE:01000:0000012877, null, null, TaContext-2, 3, 0} - A marshalling exception occured for the type com.ciccio.reports.operationtypes.GetReportsResponse:
javax.xml.bind.MarshalException
- with linked exception:
[java.lang.IllegalArgumentException: Local name may not be null or empty]
at org.eclipse.persistence.jaxb.JAXBMarshaller.marshal(JAXBMarshaller.java:316)
at com.ciccio.ta.services2.validation.TaValidationHandler.validateMarshallerAgainstSchema(TaValidationHandler.java:103)
at com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut.toOM(ReportingServicesMessageReceiverInOut.java:1064)
at com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut.toEnvelope(ReportingServicesMessageReceiverInOut.java:1098)
at com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut.invokeBusinessLogic(ReportingServicesMessageReceiverInOut.java:157)
at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:341)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:238)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3366)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3333)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2220)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2146)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2124)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1564)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:254)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:295)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:254)
Caused by: java.lang.IllegalArgumentException: Local name may not be null or empty
at org.apache.axiom.om.impl.llom.OMAttributeImpl.<init>(OMAttributeImpl.java:56)
at org.apache.axiom.om.impl.llom.OMElementImpl.addAttribute(OMElementImpl.java:612)
at org.apache.axiom.om.impl.builder.SAXOMBuilder.startElement(SAXOMBuilder.java:111)
at org.eclipse.persistence.oxm.record.ContentHandlerRecord.openAndCloseStartElement(ContentHandlerRecord.java:186)
at org.eclipse.persistence.oxm.record.ContentHandlerRecord.openStartElement(ContentHandlerRecord.java:201)
at org.eclipse.persistence.oxm.record.ValidatingMarshalRecord.openStartElement(ValidatingMarshalRecord.java:170)
at org.eclipse.persistence.internal.oxm.XPathNode.startElement(XPathNode.java:395)
at org.eclipse.persistence.internal.oxm.XMLCompositeCollectionMappingNodeValue.marshalSingleValue(XMLCompositeCollectionMappingNodeValue.java:299)
at org.eclipse.persistence.internal.oxm.XMLCompositeCollectionMappingNodeValue.marshal(XMLCompositeCollectionMappingNodeValue.java:91)
at org.eclipse.persistence.internal.oxm.NodeValue.marshal(NodeValue.java:151)
at org.eclipse.persistence.internal.oxm.NodeValue.marshal(NodeValue.java:104)
at org.eclipse.persistence.internal.oxm.record.ObjectMarshalContext.marshal(ObjectMarshalContext.java:60)
at org.eclipse.persistence.internal.oxm.XPathNode.marshal(XPathNode.java:386)
at org.eclipse.persistence.internal.oxm.TreeObjectBuilder.buildRow(TreeObjectBuilder.java:488)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:1240)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:833)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:788)
at org.eclipse.persistence.jaxb.JAXBMarshaller.marshal(JAXBMarshaller.java:314)
... 28 more
[2015-05-12 13:47:14,899] ERROR remote.com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut {[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)' ff-sm-03, null, "null", PE:01000:0000012877, null, null, TaContext-2, 3, 0} - A marshalling exception occured for the type com.ciccio.reports.operationtypes.GetReportsResponse:
javax.xml.bind.MarshalException
- with linked exception:
[java.lang.IllegalArgumentException: Local name may not be null or empty]
at org.eclipse.persistence.jaxb.JAXBMarshaller.marshal(JAXBMarshaller.java:316)
at com.ciccio.ta.services2.validation.TaValidationHandler.validateMarshallerAgainstSchema(TaValidationHandler.java:103)
at com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut.toOM(ReportingServicesMessageReceiverInOut.java:1064)
at com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut.toEnvelope(ReportingServicesMessageReceiverInOut.java:1098)
at com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut.invokeBusinessLogic(ReportingServicesMessageReceiverInOut.java:157)
at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:341)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:238)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3366)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3333)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2220)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2146)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2124)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1564)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:254)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:295)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:254)
Caused by: java.lang.IllegalArgumentException: Local name may not be null or empty
at org.apache.axiom.om.impl.llom.OMAttributeImpl.<init>(OMAttributeImpl.java:56)
at org.apache.axiom.om.impl.llom.OMElementImpl.addAttribute(OMElementImpl.java:612)
at org.apache.axiom.om.impl.builder.SAXOMBuilder.startElement(SAXOMBuilder.java:111)
at org.eclipse.persistence.oxm.record.ContentHandlerRecord.openAndCloseStartElement(ContentHandlerRecord.java:186)
at org.eclipse.persistence.oxm.record.ContentHandlerRecord.openStartElement(ContentHandlerRecord.java:201)
at org.eclipse.persistence.oxm.record.ValidatingMarshalRecord.openStartElement(ValidatingMarshalRecord.java:170)
at org.eclipse.persistence.internal.oxm.XPathNode.startElement(XPathNode.java:395)
at org.eclipse.persistence.internal.oxm.XMLCompositeCollectionMappingNodeValue.marshalSingleValue(XMLCompositeCollectionMappingNodeValue.java:299)
at org.eclipse.persistence.internal.oxm.XMLCompositeCollectionMappingNodeValue.marshal(XMLCompositeCollectionMappingNodeValue.java:91)
at org.eclipse.persistence.internal.oxm.NodeValue.marshal(NodeValue.java:151)
at org.eclipse.persistence.internal.oxm.NodeValue.marshal(NodeValue.java:104)
at org.eclipse.persistence.internal.oxm.record.ObjectMarshalContext.marshal(ObjectMarshalContext.java:60)
at org.eclipse.persistence.internal.oxm.XPathNode.marshal(XPathNode.java:386)
at org.eclipse.persistence.internal.oxm.TreeObjectBuilder.buildRow(TreeObjectBuilder.java:488)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:1240)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:833)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:788)
at org.eclipse.persistence.jaxb.JAXBMarshaller.marshal(JAXBMarshaller.java:314)
... 28 more
[2015-05-12 13:47:14,930] ERROR org.apache.axis2.engine.AxisEngine {[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)' ff-sm-03, null, "null", PE:01000:0000012877, null, null, TaContext-2, 3, 0} - ValidationException
org.apache.axis2.AxisFault: ValidationException
at com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut.createAxisFault(ReportingServicesMessageReceiverInOut.java:1377)
at com.ciccio.reports.operationtypes.ReportingServicesMessageReceiverInOut.invokeBusinessLogic(ReportingServicesMessageReceiverInOut.java:187)
at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:341)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:238)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3366)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3333)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2220)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2146)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2124)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1564)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:254)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:295)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:254)
我收到了另一个错误:
local
任何帮助???
由于