Weblogic中没有查找提供程序的Apache CXF的Java安全性异常:ApacheXMLDSig

时间:2015-05-26 14:25:59

标签: apache weblogic cxf ws-security bpmn

我在weblogic中部署了BPMN复合应用程序。我在同一个weblogic服务器中部署了一个Web服务。两者(复合应用程序和Web服务)都使用安全策略。 BPMN应用程序调用Web服务,并将安全标头传递给服务。该服务部署为使用Apache CXF和Spring构建的耳朵。当我直接调用Web服务(使用SoapUI)时,它会正确响应。

当我调用BPMN流程时,它会失败,将这些日志写入我的CXF服务日志文件中:

<?xml version = '1.0' encoding = 'windows-1252'?>
<weblogic-application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-application http://www.bea.com/ns/weblogic/weblogic-application/1.0/weblogic-application.xsd"
    xmlns="http://www.bea.com/ns/weblogic/weblogic-application">
    <application-param>
        <param-name>webapp.encoding.default</param-name>
        <param-value>UTF-8</param-value>
    </application-param>

    <prefer-application-packages>
        <package-name>org.hibernate.ejb.*</package-name>
        <package-name>org.springframework.*</package-name>
        <package-name>javax.jws.*</package-name>
        <package-name>cu.*</package-name>
        <package-name>javax.wsdl.*</package-name>
        <package-name>antlr.*</package-name>
        <package-name>javax.persistence.*</package-name>
        <package-name>javax.xml.crypto.dsig.*</package-name>
        <package-name>javax.xml.crypto.*</package-name>
        <package-name>org.apache.*</package-name>
        <package-name>org.apache.jcp.*</package-name>
        <package-name>org.apache.xerces.*</package-name>
        <package-name>org.apache.xalan.*</package-name>
        <package-name>org.apache.xml.*</package-name>
        <package-name>org.apache.wml.*</package-name>
        <package-name>org.apache.html.*</package-name>
        <package-name>org.apache.xpath.*</package-name>
        <package-name>org.apache.regexp.*</package-name>
        <package-name>org.apache.bcel.*</package-name>
        <package-name>org.apache.cxf.*</package-name>
        <package-name>org.apache.commons.*</package-name>
        <package-name>org.apache.ws.*</package-name>
        <package-name>org.hsqldb.*</package-name>
        <package-name>com.ctc.wstx.*</package-name>
    </prefer-application-packages>
</weblogic-application>

我无法理解的罐子有些麻烦。这是文件weblogic-application.xml的内容,位于ear文件的META-INF / weblogic-application.xml中:

extension PFUser {

    var picture:PFFile? {
        get {
            return self["picture"] as? PFFile
        }
        set {
            self["picture"] = newValue
        }
    }

    var name:String?{
        get {
            return self["name"] as? String
        }
        set {
            self["name"] = newValue
        }
    }

    var score:Int? {
        return self["score"] as? Int
    }
}

2 个答案:

答案 0 :(得分:0)

我在jre / lib / ext目录中复制了xmlsec.jar,它对我有用

答案 1 :(得分:0)

我们使用(关于技术)或多或少相同的东西,

在尝试解决应用程序的cxf部分时,我得到了相同的堆栈跟踪,并且(在我们的例子中)这是通过使用64位jvm而不是32位(客户端)来解决的;

希望它可以帮助某人...

S上。