关于JBOSS+JDK的配置部署问题。

闭目鱼 2011-08-23 02:31:50
WEB应用原来的部署环境是JBOSS4.0.5+JDK1.5。由于业务的需要现在将JDK升级到1.6
由于JDK进行了升级,所以JBOSS也就使用了JBOSS4.2.3版本

升级过程中就是将WEB应用整个复制到JBOSS发布目录,然后就是一些应用JAR复制到JBOSS相应目录
部署完后,启动JBOSS4.2.3没有出现异常,输入访问地址,可以进入WEB应用的第一个界面,【登陆】

点击登陆时,系统会将该用户在系统数据库存放的密码加密字符串进行解密,然后与用户输入的密码进行匹配。
现在问题就出现在这个加密解密算法上了。
在JBOSS4.2.3+JDK1.6环境中,点击登陆后抛出异常

2011-08-23 04:13:07,656 INFO [STDOUT] AppException: sdocrypto.app.AppSHA0Imp:no such algorithm: SHA-0 for provider CreateCrypto
2011-08-23 04:13:07,656 ERROR [org.jboss.ejb.plugins.LogInterceptor] EJBException in method: public abstract com.create.engine.usermana.ejb.Token com.create.engine.usermana.ejb.TokenHome.create(java.lang.String,int) throws javax.ejb.CreateException,java.rmi.RemoteException, causedBy:
com.create.sec.crypto.app.AppException: sdocrypto.app.AppSHA0Imp:no such algorithm: SHA-0 for provider CreateCrypto
at com.create.sec.crypto.app.SHA0Impl.computeValue(SHA0Impl.java:69)

若换成JBOSS4.2.3+JDK1.5 则无问题

还请大家给小弟解答下,这到底是怎么回事
拜谢!
...全文
409 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
闭目鱼 2011-08-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 java2000_net 的回复:]
no such algorithm: SHA-0 for provider CreateCrypto

错误信息是,没有提供指定的算法,原因未知,呵呵俄!
[/Quote]
谢谢你的帮助。我在检查原来使用的JDK1.5时,发现了这么个配置
在jre\lib\security下的java.security文件有一句配置

#
# List of providers and their preference orders (see above):
#
security.provider.1=sun.security.provider.Sun
security.provider.2=com.sun.rsajca.Provider

#package.definition=
security.provider.3=com.create.sec.crypto.provider.CreateCrypto


com.create.sec.crypto.provider.CreateCrypto引用的是我们自己写的一个算法。
然后我依葫芦画瓢,打开JDK1.6中相应的文件进行修改
JDK1.6中配置是这样子的

#
# List of providers and their preference orders (see above):
#
security.provider.1=sun.security.provider.Sun
security.provider.2=sun.security.rsa.SunRsaSign
security.provider.3=com.sun.net.ssl.internal.ssl.Provider
security.provider.4=com.sun.crypto.provider.SunJCE
security.provider.5=sun.security.jgss.SunProvider
security.provider.6=com.sun.security.sasl.Provider
security.provider.7=org.jcp.xml.dsig.internal.dom.XMLDSigRI
security.provider.8=sun.security.smartcardio.SunPCSC
security.provider.9=sun.security.mscapi.SunMSCAPI


于是我在后面做了这样的配置

#package.definition=
security.provider.10=com.create.sec.crypto.provider.CreateCrypto


这样配置后,程序依然出错,错误与最开始一样。
在网上找资料得出java.security是加密安全方面的配置文件,抛出的异常意思是找不到算法,但是我做了
security.provider.10=com.create.sec.crypto.provider.CreateCrypto这样的配置依然不行。
老紫竹 2011-08-23
  • 打赏
  • 举报
回复
no such algorithm: SHA-0 for provider CreateCrypto

错误信息是,没有提供指定的算法,原因未知,呵呵俄!

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧