15

我正在尝试开发 Wicket 应用程序。它的登录页面必须使用 SSL 打开。所以我做了一些编码。但我找不到为 SSL 配置 maven tomcat 7 插件。我正确创建了密钥库文件。使用keytool -genkey -alias tomcat -keyalg RSA命令它在Windows的用户目录中。它的密码是密码。

这就是我在 pom.xml 中定义 tomcat 的方式:

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.0-beta-1</version>
    <executions>
        <execution>
            <id>tomcat-run</id>
            <goals>
                <goal>exec-war-only</goal>
            </goals>
            <phase>package</phase>
            <configuration>
                <path>foo</path>
                <!-- optional only if you want to use a preconfigured server.xml file -->
                <serverXml>src/main/tomcatconf/server.xml</serverXml>
                <!-- optional values which can be configurable -->
                <attachArtifactClassifier>
                                    default value is exec-war but you can   customize
                                </attachArtifactClassifier>
                <attachArtifactClassifierType>
                                      default value is jar
                                </attachArtifactClassifierType>
                <httpsPort>8443</httpsPort>
                <keystoreFile>${user.home}/.keystore</keystoreFile>
                <keystorePass>password</keystorePass>
                <protocol>org.apache.coyote.http11.Http11AprProtocol</protocol>
            </configuration>
        </execution>
    </executions>
</plugin>
4

2 回答 2

22

在我的 pom.xml 中使用此配置,我可以正常工作:

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.0</version>
    <configuration>
        <path>/${project.build.finalName}</path>
        <contextFile>${basedir}/context.xml</contextFile>
        <httpsPort>8443</httpsPort>
        <keystoreFile>${basedir}/certificates/keystore.jks</keystoreFile>
        <keystorePass>password</keystorePass>
    </configuration>
</plugin>
于 2012-12-11T17:33:18.053 回答
7

我能够让它工作:

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.0</version>
    <configuration>
        <path>/mycontext</path>
        <port>9090</port>
        <httpsPort>8443</httpsPort>
        <keystorePass>changeit</keystorePass>
    </configuration>
</plugin>

确保从文档中创建密钥库:http: //tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html(看起来你有那部分),最终对我有用的是创建密钥库(在默认目录中),两个密码都为“changeit”......不知道为什么,但对我来说,在这种情况下这是可以的,因为这仅用于本地开发。

我在 Windows 7、Maven 3 上运行。

希望这可以帮助。

于 2013-01-13T12:57:10.417 回答