13十二/090
解决ofbiz在MAC下出现Keystore密码错误的问题
报错信息:
2009-12-13 13:55:01,489 (main) [ SSLImpl.java:63 :ERROR] ---- exception report ---------------------------------------------------------- Exception: java.io.IOException Message: Keystore was tampered with, or password was incorrect ---- cause --------------------------------------------------------------------- Exception: java.security.UnrecoverableKeyException Message: Password verification failed ---- stack trace --------------------------------------------------------------- java.security.UnrecoverableKeyException: Password verification failed sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:769) sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:38) java.security.KeyStore.load(KeyStore.java:1185) org.ofbiz.base.util.KeyStoreUtil.getSystemTrustStore(KeyStoreUtil.java:110) org.ofbiz.base.util.SSLUtil.getTrustManagers(SSLUtil.java:106) org.ofbiz.catalina.container.SSLImpl$AllowTrustManager.<init>(SSLImpl.java:61) org.ofbiz.catalina.container.SSLImpl.<init>(SSLImpl.java:46) sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) java.lang.reflect.Constructor.newInstance(Constructor.java:513) java.lang.Class.newInstance0(Class.java:355) java.lang.Class.newInstance(Class.java:308) org.apache.tomcat.util.net.SSLImplementation.getInstance(SSLImplementation.java:75) org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:152) org.apache.catalina.connector.Connector.initialize(Connector.java:1058) org.apache.catalina.core.StandardService.initialize(StandardService.java:677) org.ofbiz.catalina.container.CatalinaContainer.init(CatalinaContainer.java:218) org.ofbiz.base.container.ContainerLoader.loadContainer(ContainerLoader.java:188) org.ofbiz.base.container.ContainerLoader.load(ContainerLoader.java:65) org.ofbiz.base.start.Start.initStartLoaders(Start.java:259) org.ofbiz.base.start.Start.init(Start.java:96) org.ofbiz.base.start.Start.main(Start.java:410) --------------------------------------------------------------------------------
其实是因为在mac下,java 1.6的cacerts默认密码从以前的"changeit"变成了"changeme"
可以用如下办法恢复密码:
cd #cd ~
#keytool -importkeystore -srckeystore /System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/Deploy.bundle/Contents/Home/lib/security/cacerts -destkeystore newcacerts
Enter destination keystore password: changeit
Re-enter new password: changeit
Enter source keystore password: #直接回车,留空
#sudo mv newcacerts /System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/Deploy.bundle/Contents/Home/lib/security
#sudo mv cacerts oldcacerts
#sudo mv newcacerts cacerts
就ok啦