露天无法启动

时间:2013-03-08 16:00:04

标签: alfresco alfresco-share

只需安装一个全新的露天和共享应用程序即可启动,但露天回购没有。我在BE中收到以下错误:

PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class org.alfresco.web.app.ContextLoaderListener
org.alfresco.error.AlfrescoRuntimeException: 02080001 Keystores are invalid
    at org.alfresco.encryption.EncryptionChecker$1.execute(EncryptionChecker.java:71
........

Caused by: org.alfresco.error.AlfrescoRuntimeException: 02080000 Failed to create key: metadata
 in key store: 
   Location: /srv/alfresco/alf_data/keystore/keystore
   Provider: null
   Type:     JCEKS
    at org.alfresco.encryption.AlfrescoKeyStoreImpl.createKey(AlfrescoKeyStoreImpl.java:644)
    at org.alfresco.encryption.AlfrescoKeyStoreImpl.validateKeys(AlfrescoKeyStoreImpl.java:890)
    at org.alfresco.encryption.AlfrescoKeyStoreImpl.validateKeys(AlfrescoKeyStoreImpl.java:187)
    at org.alfresco.encryption.KeyStoreChecker.validateKeyStores(KeyStoreChecker.java:47)
    at org.alfresco.encryption.EncryptionChecker$1.execute(EncryptionChecker.java:66)
    ... 28 more
Caused by: java.lang.NullPointerException
    at org.alfresco.encryption.AlfrescoKeyStoreImpl.getSecretKey(AlfrescoKeyStoreImpl.java:755)
    at org.alfresco.encryption.AlfrescoKeyStoreImpl.createKey(AlfrescoKeyStoreImpl.java:633)
    ... 32 more

我不确定为什么会这样。

4 个答案:

答案 0 :(得分:2)

我希望您删除 alf_data 露天数据库,然后重新创建。

当alf_data存储其位置保存在数据库中的bin文件时,它们都彼此同步。

并检查这些设置是否在alfresco-global.properties中正确定义。


保留密钥库

如果要在删除密钥库后保留密钥库,可以将其保存在与alf_data不同的位置。我的意思是,如果你删除密钥库位置

dir.keystore=${dir.root}/keystore

来自alfresco-global.properties

密钥库将在 默认密钥库位置 dir.keystore=classpath:alfresco/keystore下创建,repository.properties<apache-tomcat>\webapps\alfresco\WEB-INF\classes\alfresco下定义。

答案 1 :(得分:1)

尝试删除/srv/alfresco/alf_data目录并重新创建。然后创建/srv/alfresco/alf_data - 并确保tomcat / java可以使用它(sudo chown tomcat7:tomcat7 /srv/alfresco/alf_data如果您按照该教程的那样使用它。)

或者,您可以将dir.root指令放在<TOMCAT_HOME>/shared/classes/alfresco-global.properties文件中,并将alf_data放在其他位置。

答案 2 :(得分:1)

谢谢大家的回复。最后,唯一有效的方法是将展开的war下的keystore文件夹复制到自定义目录。没有别的办法。

答案 3 :(得分:1)

在最新版本中,密钥库现在存储在war中的类路径中,而不是alf_data中。现在的默认值: dir.keystore = classpath:alfresco / keystore

因此只需在alfresco-global.properties中注释dir.keystore行,就可以了。