天天看點

cxf部署到weblogic上遇到的問題

伺服器端問題

1.javax.jws.webService.portName 找不到的錯誤

打開bea/weblogic92/common/bin/commEnv.cmd或commEnv.sh

CLASSPATH後加入

%WL_HOME%\server\lib\geronimo-ws-metadata_2.0_spec-1.1.2.jar

并把geronimo-ws-metadata_2.0_spec-1.1.2.jar包放入bea/weblogic92/server/lib下

2.java.lang.UnsupportedOperationException: This class does not support SAAJ 1.1

javax.xml.ws.WebServiceException: java.lang.UnsupportedOperationException: This class does not support SAAJ 1.1

Caused by: java.lang.UnsupportedOperationException: This class does not support SAAJ 1.1

1)打開startWebLogic.cmd或startWebLogic.sh檔案

2)把saaj的相關包放入工程lib目錄,saaj-api-1.3.jar, saaj-impl-1.3.2.jar

3)在set JAVA_OPTIONS=%SAVE_JAVA_OPTIONS%的下一行加入以下語句

set JAVA_OPTIONS=%JAVA_OPTIONS% -Djavax.xml.soap.MessageFactory=com.sun.xml.messaging.saaj.soap.ver1_1.SOAPMessageFactory1_1Impl

在weblogic上調用cxf用戶端時可能出現的問題:

1.javax.xml.stream.supportDTD 找不到的錯誤

加入以下系統變量

static {    

    System.setProperty("javax.xml.stream.XMLInputFactory",    

      "com.ctc.wstx.stax.WstxInputFactory");    

    System.setProperty("javax.xml.stream.XMLOutputFactory",    

      "com.ctc.wstx.stax.WstxOutputFactory");    

    System.setProperty("javax.xml.stream.XMLEventFactory",    

      "com.ctc.wstx.stax.evt.WstxEventFactory");    

}

2、\bea\weblogic92\server\lib\consoleapp\META-INF\weblogic-application.xml 中加入:

     <!-- 2011-6-7 linjun -->

     <package-name>javax.jws.*</package-name>

  <package-name>javax.xml.soap.*</package-name>

  <package-name>javax.xml.stream.*</package-name>

  <package-name>javax.xml.stream.events.*</package-name>

  <package-name>javax.xml.stream.util.*</package-name>

3、java.lang.ClassCastException: com.ctc.wstx.stax.WstxInputFactory,經CH驗證,删去工程中引入的wstx-asl-3.2.9.jar即可。

本文轉自 winters1224 51CTO部落格,原文連結:http://blog.51cto.com/winters1224/797788,如需轉載請自行聯系原作者

繼續閱讀