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

jdk1.5及以前版本使用xml signature 签名功能

阅读更多

 

   JSR 105 (Java XML Digital Signature API Specification) 规定了 XML 数字签名规范的标准 Java 实现接口,于 2005  6  24 日最终发布。随后,于 2006 年秋季发布的 Java SE 6 (产品代号 Mustang)  JSR105 纳入 Java 标准库中,为基于 Java 的上层应用提供标准的 XML 数字签名支持。从此,需要使用 XML 安全特性的 Java 项目有了来自 Java 核心平台的基础支持,再也不需要为选择合适的第三方产品而烦恼。

但现在由于实现项目好多使用的是jdk1.5或以前版本, 如何在jdk1.5中使用jdk1.6中的xml 签名功能呢?经过探索,终于成功.

由于JSR是一种规范,jdk1.6只是实现了此规范, 我们只需找到第三方工具就可以实现, 现在应用比较广泛的开源产品是 Apache XML Security 项目,只需在网上下载此项目的jar包放到configure path路径下,你会发现eclipse下所有表示红色的类都消失了,问题解决。

但在运行时会报此错: javax.xml.crypto.NoSuchMechanismException: Mechanism type DOM not available

指向此行:  XMLSignatureFactory fac = XMLSignatureFactory.getInstance("DOM");

这是只需该写代码为:

 

XMLSignatureFactory factory =     XMLSignatureFactory.getInstance

("DOM", new org.jcp.xml.dsig.internal.dom.XMLDSigRI());

在此运行,一切ok!

关于Apache XML Security jar包

1)apache官方下载地址:

http://santuario.apache.org/mirrors.cgi

2)本人上传的jar包,在附件,也可下载,

相比官方的多了帮助及实例代码

若有问题,欢迎联系我! 

0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics