【问题标题】:How to SSL enable my web application?如何 SSL 启用我的 Web 应用程序?
【发布时间】:2012-07-31 07:08:11
【问题描述】:

我已将以下代码放入 tomcat 的 server.xml 文件中:

<Connector SSLEnabled="true" clientAuth="false"
    keystoreFile="D:\keystore.jks" keystorePass="****" maxThreads="150"
    port="8443" protocol="HTTP/1.1" scheme="https" secure="true"
    sslProtocol="TLS" />

我有一个基于 spring-mvc 的 Web 应用程序。但是当我尝试部署我的应用程序时,我收到以下错误:

org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: file [D:\Eclipse Workspaces\RPM\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\RPM\WEB-INF\classes\com\rpm\controller\AdminController.class]; nested exception is java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "accessDeclaredMembers")

我的 web.xml 看起来像这样

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    id="WebApp_ID" version="3.0">
    <display-name>RPM</display-name>
    <welcome-file-list>
        <welcome-file>admin</welcome-file>
    </welcome-file-list>
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
    <security-constraint>
        <web-resource-collection>
            <web-resource-name>RPM</web-resource-name>
            <url-pattern>/*</url-pattern>
        </web-resource-collection>
        <user-data-constraint>
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>
    </security-constraint>
</web-app>

dispatcher-servlet.xml 代码

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns="http://www.springframework.org/schema/beans"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
                        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
                        http://www.springframework.org/schema/context
                        http://www.springframework.org/schema/context/spring-context-3.1.xsd
                        http://www.springframework.org/schema/mvc
                        http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd" >

    <context:component-scan base-package="com.rpm.controller" />
    <mvc:annotation-driven />
    <mvc:resources mapping="/css/**" location="/css/*"/>
    <mvc:resources mapping="/js/**" location="/js/*"/>
    <mvc:resources mapping="/images/**" location="/images/*"/>

    <!-- Beans to be autowired - START-->
    <bean class="com.rpm.beans.Clinic"/>
    <bean class="com.rpm.beans.PatientGroup"/>
    <bean class="com.rpm.beans.Clinician"/>
    <!-- Beans to be autowired - END-->


    <bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver" >
        <property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView" />
    </bean>
    <bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer" >
        <property name="definitions">
            <list>
                <value>/WEB-INF/tiles/tiles.xml</value>
            </list>
        </property>
    </bean>
</beans>

【问题讨论】:

  • Spring 在这个问题上有什么作用?您是否尝试将 TLS 与仅包含“Hello World”JSP 的普通战争一起使用?
  • @Tichodroma 不,我没有尝试过,但从错误中我可以看出它在尝试访问我部署的类文件时遇到问题。所以我虽然错过了一些东西

标签: web-applications ssl tomcat7


【解决方案1】:

异常是因为安全管理器与 ssl 无关。

【讨论】:

  • 我没有,我对此一无所知。如果有帮助的话,我已经添加了 dispatcher-servlet.xml 代码。
  • 谢谢我想通了。我不小心检查了 Eclipse 上出现的 tomcat 控制台中的“启用安全性”
猜你喜欢
  • 1970-01-01
  • 2020-09-21
  • 1970-01-01
  • 1970-01-01
  • 2012-11-10
  • 1970-01-01
  • 2023-04-07
  • 2016-01-29
相关资源
最近更新 更多