我已经开发了一个Java servlet应用程序,并且在我的开发PC上,一切正常,包括按计划使用SFTP通过端口8443等上的HTTPS并以适当的SSL证书通过PDF复制PDF。
但是,当我尝试在实时服务器上运行该应用程序时,会收到错误消息。
java.lang.NoClassDefFoundError:无法初始化类javax.crypto.SunJCE_b
经调查,有人建议检查jce.jar。但是我已经确保jce.jar存在,并且还在我的项目中创建了一个“ lib”文件夹,然后将jar复制到其中并将该jar放在我的构建路径上,但是仍然存在问题。
请问该如何解决?提前致谢。这是Tomcat启动应用程序后立即显示的控制台输出。
#
08-Jan-2014 10:45:44 org.apache.catalina.startup.Catalina start INFO: Server startup in 12715 ms 08-Jan-2014 10:47:42 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor run SEVERE: java.lang.NoClassDefFoundError: Could not initialize class javax.crypto.SunJCE_b at javax.crypto.Cipher.getInstance(DashoA13*..) at com.sun.net.ssl.internal.ssl.JsseJce.getCipher(Unknown Source) at com.sun.net.ssl.internal.ssl.RSAClientKeyExchange.<init>(Unknown Source) at com.sun.net.ssl.internal.ssl.ServerHandshaker.processMessage(Unknown Source) at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Unknown Source) at com.sun.net.ssl.internal.ssl.Handshaker$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.net.ssl.internal.ssl.Handshaker$DelegatedTask.run(Unknown Source) at org.apache.tomcat.util.net.SecureNioChannel.tasks(SecureNioChannel.java:285) at org.apache.tomcat.util.net.SecureNioChannel.handshakeUnwrap (SecureNioChannel.java:343) at org.apache.tomcat.util.net.SecureNioChannel.handshake (SecureNioChannel.java:193) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run (NioEndpoint.java:1642) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
在jce.jar必须在文件夹中WEB-INF/lib已部署的Web应用程序。
jce.jar
WEB-INF/lib