当尝试使用arquillian并且adminHttps选项设置为true来运行测试时,得到了一个例外:
无法连接到DAS :( ...)| java.security.cert.CertificateException:不存在主题备用名称 org.jboss.arquillian.container.spi.client.container.LifecycleException:无法连接到DAS:(...)| java.security.cert.CertificateException:不存在主题备用名称 在org.jboss.arquillian.container.glassfish.CommonGlassFishManager.start(CommonGlassFishManager.java:77) at org.jboss.arquillian.container.glassfish.remote_3_1.GlassFishRestDeployableContainer.start(GlassFishRestDeployableContainer.java:59) 在org.jboss.arquillian.container.impl.ContainerImpl.start(ContainerImpl.java:199)
我发现的例子没有打开ssl。 我认为我应该导入证书,但无法找到如何或是否真的存在这个问题。任何的想法?谢谢你的消遣。
答案 0 :(得分:1)
虽然接受的答案显示此问题是由于使用容器自签名证书,但它并没有解释如何克服问题。希望这个答案可以帮助任何有同样问题的人。
您可以使用以下命令将容器自签名证书导入密钥库:
keytool -import -alias glassfish -file mycert.cer -keystore truststore.jks -storepass changeit
将mycert.cer
更改为证书文件的位置
将truststore.jks
更改为要用于存储证书的密钥库的位置。这可以是新的密钥库,也可以是现有密钥库。 storepass
参数是密钥库的密码。如果您使用的是现有密钥库,则需要指定与密钥库关联的密码。
将自签名证书导入密钥库后,需要告知运行Arquillian的JVM使用密钥库。这可以通过将系统参数javax.net.ssl.trustStore
设置为密钥库的位置来完成。例如javax.net.ssl.trustStore=truststore.jks
答案 1 :(得分:0)
问题是由证书引起的。部署到另一台服务器时,您应该将证书从该服务器导入当前计算机(当使用自签名证书时)