Как включить HTTPS в GWT Jetty?

Как включить HTTPS в Jetty, который поставляется с GWT?

Ответ 1

В gwt-dev.jar есть скрытый текст README-SSL.txt. Вы можете найти последнюю версию в Github.

В частности, добавьте -server :ssl к параметрам запуска Jetty, чтобы использовать самозаверяющий сертификат по умолчанию для localhost.

Ответ 2

Привет, я думаю, что это может помочь некоторым людям, я также использую GWT, и нам нужно было использовать HTTPS.

В основном мы запускаем gwt с помощью maven, поэтому для включения https используется команда.

gwt:debug -Dgwt.style=PRETTY -Dgwt.server=:ssl

И вот как выглядит моя часть pom.xml плагина при работе с приложением: run-war или jetty: run.

<plugin>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>maven-jetty-plugin</artifactId>
    <version>6.1.19</version>
    <dependencies>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
        </dependency>
        <dependency>
            <groupId>oracle-jdbc</groupId>
            <artifactId>ojdbc</artifactId>
            <version>14</version>
        </dependency>
    </dependencies>
    <configuration>
        <webApp>${project.build.directory}/${warName}.war</webApp>
        <connectors>
            <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
                <port>8080</port>
                <maxIdleTime>60000</maxIdleTime>
            </connector>
            <connector implementation="org.mortbay.jetty.security.SslSocketConnector">
                <port>8443</port>
                <maxIdleTime>60000</maxIdleTime>
                <keystore>${project.build.directory}/jetty-ssl.keystore</keystore>
                <password>jetty6</password>
                <keyPassword>jetty6</keyPassword>
            </connector>
        </connectors>
    </configuration>
</plugin>

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>keytool-maven-plugin</artifactId>
    <executions>
        <execution>
            <phase>generate-resources</phase>
            <id>clean</id>
            <goals>
                <goal>clean</goal>
            </goals>
        </execution>
        <execution>
            <phase>generate-resources</phase>
            <id>genkey</id>
            <goals>
                <goal>genkey</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <keystore>${project.build.directory}/jetty-ssl.keystore</keystore>
        <dname>cn=localhost</dname>
        <keypass>jetty6</keypass>
        <storepass>jetty6</storepass>
        <alias>jetty6</alias>
        <keyalg>RSA</keyalg>
    </configuration>
</plugin>