我遇到了很多问题,因为 SOAP 类有不同的 SAAJ 包:
com/sun/xml/internal/messaging/saaj/soap/
在 rt.jarcom/sun/xml/messaging/saaj/soap/
在 saaj-impl.jar 中
当 WebLogic 使用来自 的类com/sun/xml/internal/messaging/saaj/soap/
并使用来自 的类创建应用程序时com/sun/xml/messaging/saaj/soap/
,它会在部署应用程序时引发如下异常:
com.sun.xml.internal.messaging.saaj.soap.LocalStrings != com.sun.xml.messaging.saaj.soap.LocalStrings
或者
java.lang.NoClassDefFoundError: com/sun/xml/internal/messaging/saaj/soap/SAAJMetaFactoryImpl
我的解决方案是创建一个带有 saaj 引用的 weblogic.xml 描述符,并将 saaj-impl.jar 包含到战争中。问题是:我能知道 WebLogic Server 中使用的是什么 SAAJ 包吗?