java - OpenSAML 3 解码器为空

标签 java unmarshalling opensaml

您好,我目前正在将应用程序移植到 opensaml3 并遇到以下问题:

InitializationService.initialize();
...
Unmarshaller unmarshaller = Configuration.getUnmarshallerFactory().getUnmarshaller(qName);

我已经用初始化函数替换了 opensaml2 和之前的 DefaultBootstrap。工厂仍然将我作为编码器返回 null。 知道这里出了什么问题吗?

这是初始化进度的输出:

[main] INFO org.opensaml.core.config.InitializationService - Initializing OpenSAML using the Java Services API
[main] INFO org.opensaml.xmlsec.algorithm.AlgorithmRegistry - Algorithm failed runtime support check, will not be usable: http://www.w3.org/2001/04/xmlenc#ripemd160
[main] INFO org.opensaml.xmlsec.algorithm.AlgorithmRegistry - Algorithm failed runtime support check, will not be usable: http://www.w3.org/2001/04/xmldsig-more#hmac-ripemd160
[main] INFO org.opensaml.xmlsec.algorithm.AlgorithmRegistry - Algorithm failed runtime support check, will not be usable: http://www.w3.org/2001/04/xmldsig-more#rsa-ripemd160

最佳答案

我想您使用的是 opensaml v3 所以你应该像这样用 XMLObjectProviderRegistrySupport 类创建 UnmarshallerFactory 对象,它工作得很好

UnmarshallerFactory umFactory=XMLObjectProviderRegistrySupport.getUnmarshallerFactory();
    Unmarshaller unmarshaller=umFactory.getUnmarshaller(element);

关于java - OpenSAML 3 解码器为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40508448/

相关文章:

java - 添加到 X509Data 的证书列表时 X509Certificates 重复

java - 将 findbugs-slf4j 插件与 Maven 一起使用

java - Android webview - 在后台保持 Activity 状态并在页面更新时创建通知?

JavaFX 场景在 Windows 10 上的场景构建器和运行时中的缩放比例不同

json - 无法将对象解码为 []uint8 类型的 Go 值

c++ - 部分特化可变参数模板类的方法

java - ArrayAdapter 中带有按钮的自定义 View

go - 如何将两个 json 值解码到同一个变量中?

saml - 如何从 SAML 消息字符串构造 SAMLObject?

saml - 如何向 IdP 询问 SAML 中的用户属性