`
alone11
  • 浏览: 58153 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

WS-Security: axis, cxf使用wss4j的中文处理问题

    博客分类:
  • Java
阅读更多
就我碰到的,中文问题主要是2个:
1) 传出的字符乱码
2) 出现如下异常:
引用
org.apache.ws.security.WSSecurityException: The signature or decryption was invalid; nested exception is:
org.apache.xml.security.encryption.XMLEncryptionException: An invalid XML character (Unicode: 0x10) was found in the element content of the document.
Original Exception was org.xml.sax.SAXParseException: An invalid XML character (Unicode: 0x10) was found in the element content of the document.
at org.apache.ws.security.processor.EncryptedKeyProcessor.decryptDataRef(EncryptedKeyProcessor.java:431)
at org.apache.ws.security.processor.EncryptedKeyProcessor.handleEncryptedKey(EncryptedKeyProcessor.java:342)
at org.apache.ws.security.processor.EncryptedKeyProcessor.handleEncryptedKey(EncryptedKeyProcessor.java:92)
at org.apache.ws.security.processor.EncryptedKeyProcessor.handleToken(EncryptedKeyProcessor.java:80)
at org.apache.ws.security.WSSecurityEngine.processSecurityHeader(WSSecurityEngine.java:311)

升级wss4j到1.5.5可解决问题,主要有2个jar包需要替换:以1.5.4到1.5.5为例
1) wss4j-1.5.4.jar -> wss4j-1.5.5.jar
2) xmlsec-1.4.0.jar -> xmlsec-1.4.2.jar

中文处理问题可能与xmlsec-1.4.0的一个问题有关:
引用
Xml canonization - UTF-8 encoding issue in Xml security 1.4.0.
       Committed by RB. Thanks to Karol Rewera. See Issue 41462

该问题在xmlsec-1.4.1中解决。

Apache XML Security History of Changes:
http://santuario.apache.org/changes.html
分享到:
评论

相关推荐

    ws-security 和wss4j的jar包

    而Apache WSS4J(Web Services Secure Utilities for Java)则是Apache软件基金会开发的一个实现WS-Security标准的开源库,它为Java开发者提供了处理和验证Web服务消息安全性的工具。 首先,我们来看一下标题提到的...

    ws-security 和 wss4j的jar包

    `ws-security`和`wss4j`就是两个关键的库,它们专注于为基于SOAP的Web服务提供安全支持。这两个组件主要涉及到WS-Security(Web Services Security)规范,该规范定义了一套标准来确保Web服务消息的机密性、完整性和...

    纯java调用ws-security+CXF实现的webservice安全接口

    本文将深入探讨如何使用CXF框架结合ws-security标准来实现对Java客户端调用Web服务的安全接口。CXF是一个开源的服务框架,它允许开发人员创建和消费各种Web服务,而ws-security(Web Services Security)则是用于...

    ws-security jar

    在Java中,通常使用Apache CXF、Axis2等Web服务框架,它们内置了对WS-Security的支持。 使用"ws-security jar"时,开发者可以配置Web服务客户端和服务器端的策略,设置签名和加密算法,指定认证方式,以及处理证书...

    axis2-1.8.0apache-cxf-3.4.4.rar

    3. **丰富的API和插件**:CXF提供了一套丰富的API供开发者使用,并且有众多插件,如Spring集成、JAXB绑定和WS-Security等。 4. **易于调试和测试**:CXF提供了内置的测试工具和调试功能,方便开发者对Web服务进行...

    Web 服务规范_第 4 部分:WS-Security源码

    在实际开发中,WS-Security的实现通常依赖于库,如Apache CXF、Axis2或Spring-WS,它们提供了API来简化WS-Security的集成。开发者可以通过这些库轻松地在SOAP消息中添加和验证安全元素。 为了实现WS-Security,...

    WebService:Axis客户端调用需要身份验证的CXF服务

    3. **WS-Security配置**:如果CXF服务使用了WS-Security,如UsernameToken或X.509 Token,那么在Axis客户端端也需要相应配置。这可能涉及到创建和添加WSS4JInInterceptor和WSS4JOutInterceptor,以处理安全令牌。 4...

    wss4j的JAR包

    1. **Web服务安全**:WSS4J实现了多种Web服务安全标准,如WS-Security(Web Services Security)、WS-SecureConversation、WS-Trust等,这些标准定义了如何在SOAP消息中添加安全信息,如用户名令牌、X.509证书、SAML...

    axis2+rampart实现ws-security

    【标题】:"axis2+rampart实现ws-security" 在WS-Security(Web Services Security)标准中,axis2和rampart是两个关键组件,用于在Web服务中实现安全功能。Axis2是Apache的一个开放源码Web服务引擎,它提供了一个...

    axis2-1.7.7-bin.zip下载

    4. **依赖库**:为了正常工作,Axis2依赖于一系列第三方库,如`wsdl4j.jar`, `neethi.jar`, `axiom-api.jar`, `axiom-impl.jar`等。这些库通常位于`lib`目录下,负责处理XML解析、WS-I兼容性以及WS-Policy等标准。 ...

    apache axis-1.7.9

    4. **消息引擎**:Axis2的消息引擎负责处理SOAP消息,包括解析、序列化以及处理WS-I(Web Services Interoperability)规范中的各种消息模式。 5. **服务组件模型**:Axis2支持多种服务组件模型,如AAR(Axis ...

    Axis2与CXF的对比

    Apache Axis2和CXF都是Java世界中非常知名的Web服务框架,它们主要用于...在性能方面,CXF在处理WS-Security时展现出更高的效率,但在无安全需求时,两者差异不大。因此,在决定框架时,应根据项目的具体需求进行权衡。

    cxf与axis2区别

    CXF支持WS-Addressing、WS-Policy、WS-RM、WS-Security和WS-I BasicProfile等webservices标准,Axis2支持WS-Addressing、WS-RM、WS-Security和WS-I BasicProfile,WS-Policy将在新版本中得到支持。 CXF的标准支持...

    apache-cxf-2.4.6.zip

    4. **丰富的协议栈**:CXF支持各种WS-*协议,如WS-Security、WS-Addressing、WS-Policy等,提供了安全、可靠的消息传递能力。 5. **多种绑定和传输机制**:除了HTTP和HTTPS,CXF还支持JMS、XMPP等传输协议,可以...

    axis2-1.6.2-war+axis2-1.6.1-war+axis2-1.6.2-bin

    标题中的"axis2-1.6.2-war+axis2-1.6.1-war+axis2-1.6.2-bin"表明这是一个包含不同版本的Apache Axis2服务框架的集合。Axis2是Apache软件基金会开发的一个Web服务引擎,它主要用于创建和部署Web服务以及处理SOAP消息...

    apache-ws-axis.jar.zip

    标签:apache-ws-axis.jar.zip,apache,ws,axis,jar.zip包下载,依赖包

    Axis和CXF的比较

    ### Axis与CXF的对比分析 #### 一、概述 在现代软件开发中,Web服务技术扮演着重要的角色,特别是SOAP(Simple Object Access Protocol)基于的Web服务,它允许应用程序通过HTTP进行通信并交换数据。在众多实现...

    axis2-ws:axis2 Web服务,jax-ws Web服务

    【标题】"Axis2 Web服务与JAX-WS Web服务" 在Java开发中,Web服务是一种常见的通信方式,用于让应用程序之间交换数据。本主题主要关注两种Java实现Web服务的技术:Axis2和JAX-WS。 【Axis2】 Axis2是Apache软件...

    WebService------AXIS

    例如,对于安全性,可以使用WS-Security标准来实现消息签名和加密;对于性能,可以启用MTOM来优化二进制数据的传输;而对于错误处理,AXIS提供了异常处理机制,帮助开发者捕获和处理通信中的错误。 在深入理解AXIS...

Global site tag (gtag.js) - Google Analytics