2016-02-24 15 views
8

में "java.lang.AssertionError: UNIMPLEMENTED" अपवाद फेंक रहा है हम सीएक्सएफ-डब्ल्यूएस सुरक्षा और वेबलॉगिक 10.3 में तैनात आवेदन को शामिल करते हुए सीएक्सएफ फ्रेमवर्क का उपयोग कर एक webservice कॉल करने की कोशिश कर रहे हैं, लेकिन प्राप्त करना अपवाद के नीचे और ऐसा लगता है जैसे वेबलॉगिक विशिष्ट जार उठाए जाते हैं, हालांकि xercesimpl जार/WEB-INF/lib में एप्लिकेशन में मौजूद है।सीएक्सएफ 3.0.2 वेबलॉगिक 10.3

विकल्प कोशिश की, लेकिन मदद नहीं की:

  1. वेब inf वरीयताओं

सच के साथ weblogic कंटेनर वर्णनकर्ता स्थापना।

-Djavax.xml.soap.MessageFactory = com.sun.xml.internal.messaging.saaj.soap -

  1. JVM तर्क या के रूप में सिस्टम गुण को सेट .ver1_1.SOAPMessageFactory1_1Impl -Djavax.xml.soap.SOAPFactory = com.sun.xml.internal.messaging.saaj.soap.ver1_1.SOAPFactory1_1Impl -Djavax.xml.soap.SOAPConnectionFactory = weblogic.wsee.saaj.SOAPConnectionFactoryImpl

    1. mercesmpl jar को maven pom में जोड़ना।

      अपवाद

      ]] ServletException का मूल कारण। java.lang.AssertionError: org.apache.jcp.xml.dsig.internal.dom.XmlWriterToTree.writeAttribute (XmlWriterToTree.java पर weblogic.xml.domimpl.NodeImpl.setTextContent (NodeImpl.java:216) पर लागू नहीं किया गया: 137) org.apache.jcp.xml.dsig.internal.dom.XmlWriterToTree.writeNamespace (XmlWriterToTree.java:114) org.apache.jcp.xml.dsig.internal.dom.DOMXMLSignature.marshal (DOMXMLSignature) पर। जावा: 211) org.apache.jcp.xml.dsig.internal.dom.DOMXMLSignature.sign (DOMXMLSignature.java:329) org.apache.wss4j.dom.message.WSSecSignature.computeSignature (WSSecSignature.java: 578) org.apache.wss4j.dom.action पर .ignatureAction.execute (SignatureAction.java:151) org.apache.wss4j.dom.handler.WSHandler.doSend पर erAction (WSHandler.java2226) org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor.access $ 100 (WSS4JOutInterceptor.java:54) org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor $ WSS4JOutInterceptorInternal पर .handleMessageInternal (WSS4JOutInterceptor.java:282) org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor $ WSS4JOutInterceptorInternal.handleMessage (WSS4JOutInterceptor.java:154) पर org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor पर $ WSS4JOutInterceptorInternal.handleMessage (WSS4JOutInterceptor.java:141) org.apache.cxf.phase.PhaseInterceptorChain.doIntercept (PhaseInterceptorChain.java:307) पर enter code here org.apache.cxf.endpoint.ClientImpl.doInvoke (ClientImpl.java पर: 514) org.apache.cxf.endpoint.ClientImpl.invoke (ClientImpl पर) .java: 423) org.apache.cxf.endpoint.ClientImpl.invoke (ClientImpl.java:326) org.apache.cxf.endpoint.ClientImpl.invoke (ClientImpl.java779) org.apache पर .cxf.frontend.ClientProxy.invokeSync (ClientProxy.java:98) org.apache.cxf.jaxws.JaxWsClientProxy.invoke (JaxWsClientProxy पर।जावा: 138)

      धन्यवाद, सौम्या

+0

इस पोस्ट ने वास्तव में मेरी समस्या हल की है http://cxf.547215.n5.nabble.com/Running-CXF-WSS4J-on-Weblogic-td5626091.html लेकिन मैं अभी भी एक बेहतर उत्तर की प्रतीक्षा कर रहा हूं। लेखक ने कुछ चेतावनी का उल्लेख किया जो मुझे लगता है कि सड़क के नीचे एक मुद्दा हो सकता है –

उत्तर

2

मैं अंत में किसी भी weblogic स्टार्टअप स्क्रिप्ट को संशोधित किए बिना जवाब मिल गया (CXF 2.7.0 पर परीक्षण किया और weblogic 10.3.6

इस का कारण मुद्दा यह है कि CXF Saaj के weblogic कार्यान्वयन के साथ संगत नहीं है। http://cxf.apache.org/docs/application-server-specific-configuration-guide.html

1. Q: I have this error: javax.xml.ws.WebServiceException: Cannot create SAAJ factory instance. A: Please make sure you have the saaj-impl-1.3.jar in the classpath and make sure your app picks up this one instead of weblogic one.

एक ही मुद्दा भी लागू नहीं किया गया ई खड़ी कर रहा है प्रश्न

तो मेरा समाधान 1) क्लासपाथ में saaj-impl डाल दें। आप Maven का उपयोग कर रहे हैं, तो (weblogic.xml में pom.xml

2) पर निर्भरता डाल अपने संसाधनों फ़ोल्डर में)

<wls:container-descriptor> 
     <wls:prefer-application-packages> 
      <wls:package-name>com.sun.xml.messaging.saaj.*</wls:package-name> 
     </wls:prefer-application-packages> 
    </wls:container-descriptor> 

3 डाल) नोड प्रबंधक के माध्यम से और सही CXF द्वारा अपने सर्वर को पुनरारंभ करें डब्ल्यूएस-सुरक्षा काम करनी चाहिए

उम्मीद है कि यह मदद करता है!

संबंधित मुद्दे