Eclipse WTP:如何在Tomcat上启用SSL?

Eclipse WTP创build自己的server.xml文件,它放置在某个文件夹中,该文件夹用于configuration您为Web项目运行的Tomcat实例。 如果双击服务器列表中的服务器,您将看到一个很好的屏幕,可以很方便地configurationserver.xml文件的某些方面。

我如何configuration一个新的连接,以允许在端口8443 SSL连接。每次我手动编辑server.xml文件,eclipse覆盖我的更改与它已经存储在configuration的服务器属性页面中的设置,似乎没有办法从eclipse提供的接口添加一个新的连接器。

这可能吗? 这是我想要添加的连接器:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" keystoreFile="D:\apache-tomcat-6.0.18\keystore\key.ssl" keystorePass="pass" clientAuth="false" sslProtocol="TLS" /> 

如果您已经创build了服务器,则可以编辑它所复制的server.xml模板。 如果使用项目浏览器,则在“其他项目” – >“服务器” – >“ Tomcat服务器名称” – > server.xml下

以下是你如何使其工作:
创build密钥库:

 keytool -genkey -alias tomcat -keypass mypassword -keystore keystore.jks -storepass mypassword -keyalg RSA -validity 360 -keysize 2048 

(按照提示填写信息)
然后它应该将keystore.key文件保存到您的主目录。
为了让它在eclipse中工作:

 <Connector port="8443" SSLEnabled="true" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="true" disableUploadTimeout="true" acceptCount="100" debug="0" scheme="https" secure="true" clientAuth="false" sslProtocol="TLSv1" keystoreFile="/home/myUsername/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/conf/keystore.key" keystorePass="mypassword" /> 

上面的keystoreFile的path是你绝对需要正确的工作。 当eclipse使用工作区元数据位置来运行tomcat时,它会将一些文件复制到如上所示的path中。 在OS X上,这将是:

 /Users/<username>/Documents/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/conf/keystore.key 

希望有所帮助。

更多参考: Apache Tomcat中的SSL / TLSconfigurationHOWTO

我想到了。 当您首先在“服务器”视图中创build新服务器时,右键单击它并select“新build”>“服务器”。 Eclipse WTP将从Tomcat安装中获取现有的 server.xml文件,并使用原始文件作为模板为您的项目创build新的server.xml文件。

如果您在使用eclipse中创build新服务器之前修改了原始的server.xml文件,那么您将保留这些设置。

eclipse太糟糕了,事实上不允许添加这些types的configuration。

假设您拥有本文前面提到的证书和密钥库,我发现以下解决scheme将Eclipseconfiguration为能够与启用了SSL的服务器进行通信。 使用Tomcatconfiguration工具时,必须将条目添加到“Java”选项卡“Java选项”文本框中,如下所示:

 -Dbusinessobjects.orb.oci.protocol=ssl -Dcertdir=c:\ssl -DtrustedCert=c:\ssl\cacert.der -DsslCert=c:\ssl\servercert.der -DsslKey=c:\ssl\server.key -Dpassphrase=c:\ssl\passphrase.txt 

同样在Eclipse中,右键单击Project Explorer窗口中的服务器名称,单击Profile As | configuration文件configuration| 参数,并将上面列出的相同选项追加到“虚拟机参数:”文本框中。 这应该允许您运行和debugging再启用SSL的服务器的程序。

Eclipse“VM Arguments:”文本框