在OpenAM初始配置的JVM中找不到x509.CertAndKeyGen

在OpenAM初始配置的JVM中找不到x509.CertAndKeyGen,jvm,single-sign-on,x509,openam,Jvm,Single Sign On,X509,Openam,在OSX小牛、OpenAM 10.1.0、Tomcat8和JDK8的组合中, OpenAM初始GUI配置未成功,导致错误: [单击][错误]handleException:java.lang.RuntimeException:调用公共方法时出错:public boolean com.sun.identity.config.wizard.wizard.createConfig() 在org.apache.click.util.ClickUtils.invokeMethod(ClickUtils.j

在OSX小牛、OpenAM 10.1.0、Tomcat8和JDK8的组合中, OpenAM初始GUI配置未成功,导致错误:

[单击][错误]handleException:java.lang.RuntimeException:调用公共方法时出错:public boolean com.sun.identity.config.wizard.wizard.createConfig() 在org.apache.click.util.ClickUtils.invokeMethod(ClickUtils.java:3335)上 在org.apache.click.util.ClickUtils.invokeListener上(ClickUtils.java:2088) 在org.apache.click.control.AbstractControl$1.onAction上(AbstractControl.java:228) 在org.apache.click.ActionEventDispatcher.fireActionEvent(ActionEventDispatcher.java:259)上 在org.apache.click.ActionEventDispatcher.fireActionEvents(ActionEventDispatcher.java:236)上 在org.apache.click.ActionEventDispatcher.fireActionEvents(ActionEventDispatcher.java:180)上 在org.apache.click.ClickServlet.performOnProcess(ClickServlet.java:746)上 在org.apache.click.ClickServlet.processAjaxPageEvents上(ClickServlet.java:1860) 在org.apache.click.ClickServlet.processPage(ClickServlet.java:559)上 在org.apache.click.ClickServlet.HandlerRequest(ClickServlet.java:383)上 在org.apache.click.ClickServlet.doGet(ClickServlet.java:276) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:617) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:723) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 位于org.forgerock.openam.validation.ResponseValidationFilter.doFilter(ResponseValidationFilter.java:44) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 位于com.sun.identity.setup.AMSetupFilter.doFilter(AMSetupFilter.java:99) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 位于org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 位于org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) 位于org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) 位于org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 运行(Thread.java:745) 原因:java.lang.ExceptionInInitializeError:在此JVM中找不到安全类,原因如下:sun.security.x509.CertAndKeyGen 位于org.opends.server.util.Platform$platformpl.(Platform.java:127) 位于org.opends.server.util.Platform(Platform.java:80) 位于org.opends.server.util.CertificateManager.generateSelfSignedCertificate(CertificateManager.java:283) 在org.opends.server.admin.AdministrationConnector.CreateSelfSignedCertifiNeeded上(AdministrationConnector.java:698) 位于org.opends.server.admin.AdministrationConnector.initializeAdministrationConnector(AdministrationConnector.java:181) 位于org.opends.server.core.ConnectionHandlerConfigManager.initializeAdministrationConnectorConfig(ConnectionHandlerConfigManager.java:350) 位于org.opends.server.core.DirectoryServer.initializeAdministrationConnector(DirectoryServer.java:2898) 位于org.opends.server.core.DirectoryServer.startServer(DirectoryServer.java:1401) 位于org.opends.server.util.EmbeddedUtils.startServer(EmbeddedUtils.java:88) 位于com.sun.identity.setup.EmbeddedOpenDS.startServer(EmbeddedOpenDS.java:545) 位于com.sun.identity.setup.EmbeddedOpenDS.setup(EmbeddedOpenDS.java:364) 位于com.sun.identity.setup.AMSetupServlet.setupEmbeddedDS(AMSetupServlet.java:813) 位于com.sun.identity.setup.AMSetupServlet.setupSMDatastore(AMSetupServlet.java:869) 位于com.sun.identity.setup.AMSetupServlet.configure(AMSetupServlet.java:945) 位于com.sun.identity.setup.AMSetupServlet.processRequest(AMSetupServlet.java:628) 位于com.sun.identity.config.wizard.wizard.createConfig(wizard.java:294) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中 位于java.lang.reflect.Method.invoke(Method.java:483) 在org.apache.click.util.ClickUtils.invokeMethod(ClickUtils.java:3317)上 ... 30多

我还将JDK更改为7,或将Tomcat更改为7,这是没有用的

在此JVM中找不到安全类,原因如下:sun.security.x509.CertAndKeyGen


我知道JBoss似乎已经修复了这个错误,但我不知道如何在我的环境下克服它。

CertAndKeyGen类问题实际上是,当配置程序尝试设置嵌入式OpenDJ(它还不支持JDK8)时就会发生。即便如此,OpenAM还没有在JDK8上运行(目前甚至还没有编译——主要是因为),因此您肯定需要使用JDK7和在JDK7上运行良好的容器

JDK7和Tomcat 7安装程序实际上是受支持的,因此您可能希望提供更多关于安装尝试失败的原因和方式的信息。

<exclude-subsystems> <subsystem name="jaxrs" /> <subsystem name="webservices" /> </exclude-subsystems> <dependencies> <module name="sun.jdk" > <imports> <exclude-set> <path name="com/sun/org/apache/xml/internal/security/transforms/implementations"/> </exclude-set> </imports> </module> <system> <paths> <path name="sun/security/x509" /> <path name="com/sun/org/apache/xpath/internal" /> <path name="com/sun/org/apache/xerces/internal/dom" /> <path name="com/sun/org/apache/xml/internal/utils" /> </paths> </system> </dependencies>