1

是否有使用 asadmin 命令启用 java-web-start 部署应用程序客户端的选项/参数?我使用 GlassFish 3.1.1。

当我在 webgui 中部署它时,我有一个运行良好的 jar 文件

类型:“应用程序客户端”
Java-Web-Start [x]

我寻找这样的东西:

asadmin deploy --type application --property java-web-start-enabled=true /path/to/jar/file/myApp.jar
4

2 回答 2

1

Glassfish 中部署的“应用程序客户端”只能在签署 jar 文件时通过 java-web-start 启动。因此,当我使用“glassfish Web 管理控制台”部署它时,jar 文件已签名并且一切都按预期工作。当我通过脚本(例如 jenkins)部署它时,web start 参数不起作用并且文件没有签名。结果:java web start 不起作用。

解决方案:我使用 maven 插件对 jar 文件进行签名。为此,我首先必须将 Glassfish 证书导入密钥库

keytool -importkeystore -srckeystore "../../glassfish/domains/domain1/config/keystore.jks"  

带有“maven-jarsigner-plugin”插件的 pom 文件如下所示:

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jarsigner-plugin</artifactId>
    <version>1.2</version>
    <configuration>
      <alias>s1as</alias>
      <storepass>changeit</storepass>
      <keypass>changeit</keypass>
    </configuration>
    <executions>
      <execution>
        <id>sign</id>
        <goals>
          <goal>sign</goal>
        </goals>
      </execution>
      <execution>
        <id>verify</id>
        <goals>
          <goal>verify</goal>
        </goals>
      </execution>
    </executions>
  </plugin>

现在我可以使用 asadmin 部署脚本部署应用程序,并且启用了 java-web-start!

于 2011-12-16T07:08:57.080 回答
0

您编写的命令非常接近您想要的命令...请参阅http://download.oracle.com/docs/cd/E18930_01/html/821-2433/deploy-1.html#scrolltoc

GlassFish 的应用程序客户端/Java Web Start 支持特性的首席工程师撰写了许多关于该特性的博客文章:http: //blogs.oracle.com/quinn/

于 2011-09-10T05:15:02.913 回答