Java can';t启动Spring应用程序,什么';这里怎么了?

Java can';t启动Spring应用程序,什么';这里怎么了?,java,eclipse,spring,maven,spring-mvc,Java,Eclipse,Spring,Maven,Spring Mvc,我试图重构并运行一个旧的应用程序,但启动它时遇到了问题。它以前使用的是旧的acegisecurity,我正在将它升级到spring-security。我决定使用一个旧的应用程序,而不是从头开始构建一个应用程序,以节省一些时间,但由于我浪费了很多时间对其进行升级和专业化,我开始后悔这个决定 无论如何,我需要尽快完成这件事,在我可以重新投入时间从零开始之前,我需要想出一些有用的东西 我使用的是EclipseMars.1和JDK1.8_66,在尝试将其部署到Tomcat 7时出现以下错误: org.a

我试图重构并运行一个旧的应用程序,但启动它时遇到了问题。它以前使用的是旧的
acegisecurity
,我正在将它升级到
spring-security
。我决定使用一个旧的应用程序,而不是从头开始构建一个应用程序,以节省一些时间,但由于我浪费了很多时间对其进行升级和专业化,我开始后悔这个决定

无论如何,我需要尽快完成这件事,在我可以重新投入时间从零开始之前,我需要想出一些有用的东西

我使用的是EclipseMars.1和JDK1.8_66,在尝试将其部署到Tomcat 7时出现以下错误:

org.apache.catalina.core.ContainerBase startInternal
SEVERE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/hrm]]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1122)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:819)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1574)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1564)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
我的
pom.xml
没有出现任何特定错误。所有依赖项似乎都正常:

<properties>
    <springframework.version>4.2.4.RELEASE</springframework.version>
    <springsecurity.version>4.0.3.RELEASE</springsecurity.version>
    <hibernate.version>5.1.0.Final</hibernate.version>
    <jackson.version>2.5.3</jackson.version>
    <slf4j.version>1.7.5</slf4j.version>
    <groovy.version>2.4.5</groovy.version>
    <mysql.version>5.1.38</mysql.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${springframework.version}</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${springframework.version}</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
        <version>${springframework.version}</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-orm</artifactId>
        <version>${springframework.version}</version>
    </dependency>

           <!-- Spring Security -->
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>${springsecurity.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>${springsecurity.version}</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>${springsecurity.version}</version>
    </dependency>

    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${jackson.version}</version>
    </dependency>

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
    </dependency>

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>

    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>jsp-api</artifactId>
        <version>2.2</version>
    </dependency>

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>${hibernate.version}</version>
    </dependency>

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>${hibernate.version}</version>
    </dependency>

    <dependency>
        <groupId>javax.persistence</groupId>
        <artifactId>persistence-api</artifactId>
        <version>1.0.2</version>
    </dependency>

    <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.4</version>
    </dependency>

    <dependency>
        <groupId>com.opensymphony</groupId>
        <artifactId>xwork</artifactId>
        <version>2.1.2</version>
    </dependency>

    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.4</version>
    </dependency>

    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.5</version>
    </dependency>

    <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
        <version>1.3.1</version>
    </dependency>

    <dependency>
        <groupId>commons-digester</groupId>
        <artifactId>commons-digester</artifactId>
        <version>2.1</version>
    </dependency>

    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.2</version>
    </dependency>

    <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.4</version>
    </dependency>

    <dependency>
        <groupId>net.htmlparser.jericho</groupId>
        <artifactId>jericho-html</artifactId>
        <version>2.5</version>
    </dependency>

    <!-- <dependency> -->
    <!-- <groupId>net.sf.ehcache</groupId> -->
    <!-- <artifactId>ehcache-core</artifactId> -->
    <!-- <version>2.6.11</version> -->
    <!-- </dependency> -->

    <dependency>
        <groupId>org.beanshell</groupId>
        <artifactId>bsh</artifactId>
        <version>1.3.0</version>
    </dependency>

    <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>1.10</version>
    </dependency>

    <dependency>
        <groupId>displaytag</groupId>
        <artifactId>displaytag</artifactId>
        <version>1.2</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>log4j-over-slf4j</artifactId>
        <version>${slf4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${slf4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jul-to-slf4j</artifactId>
        <version>${slf4j.version}</version>
    </dependency>
    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.0.6</version>
    </dependency>

    <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>${groovy.version}</version>
    </dependency>

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>${mysql.version}</version>
    </dependency>

    <dependency>
        <groupId>net.sf.ehcache</groupId>
        <artifactId>ehcache</artifactId>
        <version>2.10.1</version>
    </dependency>

</dependencies>

提前谢谢

我不确定,但是我提到了个人笔记,上面说SpringSecurity4.0.3需要Spring4.2.2。我相信我试过4.2.4,但有问题。我希望您能得到一个更好的答案,但现在请尝试Spring4.2.2。同样的问题。似乎与
javax.servlet-api-3.1.0.jar
存在冲突。我尝试过直接从Tomcat的lib文件夹中引用这个lib,并在
pom.xml
中将其设置为依赖项。同样的结果…我不确定,但是我提到了个人笔记,上面说SpringSecurity4.0.3需要Spring4.2.2。我相信我试过4.2.4,但有问题。我希望您能得到一个更好的答案,但现在请尝试Spring4.2.2。同样的问题。似乎与
javax.servlet-api-3.1.0.jar
存在冲突。我尝试过直接从Tomcat的lib文件夹中引用这个lib,并在
pom.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_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>HRM</display-name>
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
    classpath:/spring/spring-framework.xml
    classpath:/spring/spring-framework-boot.xml
    classpath:/spring/spring-framework-dataset.xml
    classpath:/spring/spring-framework-persistence.xml
    classpath:/spring/spring-framework-jobs.xml
<!--        classpath:/spring/spring-framework-security.xml -->
    classpath:/spring/spring-framework-web.xml
</param-value>
</context-param>

<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>


<filter>
    <filter-name>openEntityManagerInViewFilter</filter-name>
    <filter-class>org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter</filter-class>
</filter>
<filter>
    <filter-name>urlRewrite</filter-name>
    <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
    <init-param>
        <param-name>logLevel</param-name>
        <param-value>commons</param-value>
    </init-param>
</filter>

<!--    Enables Spring Security -->
<!--     <filter> -->
<!--         <filter-name>springSecurityFilterChain</filter-name> -->
<!--         <filter-class> -->
<!--             org.springframework.web.filter.DelegatingFilterProxy -->
<!--         </filter-class> -->
<!--     </filter> -->
<!--     <filter-mapping> -->
<!--         <filter-name>springSecurityFilterChain</filter-name> -->
<!--         <url-pattern>/*</url-pattern> -->
<!--     </filter-mapping> -->

<!--    <filter> -->
<!--    <filter-name>securityFilter</filter-name> -->
<!--    <filter-class>org.acegisecurity.util.FilterToBeanProxy</filter-class> -->
<!--    <init-param> -->
<!--    <param-name>targetClass</param-name> -->
<!--    <param-value>org.acegisecurity.util.FilterChainProxy</param-value> -->
<!--    </init-param> -->
<!--    </filter> -->
<filter>
    <filter-name>gzipFilter</filter-name>
    <filter-class>net.sf.ehcache.constructs.web.filter.GzipFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>gzipFilter</filter-name>
    <url-pattern>/js/*</url-pattern>
</filter-mapping>
<filter-mapping>
    <filter-name>gzipFilter</filter-name>
    <url-pattern>/style/*</url-pattern>
</filter-mapping>
<filter-mapping>
    <filter-name>gzipFilter</filter-name>
    <url-pattern>/tiny_mce/*</url-pattern>
</filter-mapping>
<filter-mapping>
    <filter-name>openEntityManagerInViewFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
    <filter-name>urlRewrite</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>
<filter-mapping>
    <filter-name>securityFilter</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>
<!-- <filter-mapping> -->
<!-- <filter-name>strutsCleanup</filter-name> -->
<!-- <url-pattern>/*</url-pattern> -->
<!-- <dispatcher>REQUEST</dispatcher> -->
<!-- <dispatcher>FORWARD</dispatcher> -->
<!-- </filter-mapping> -->
<!-- <filter-mapping> -->
<!-- <filter-name>struts2</filter-name> -->
<!-- <url-pattern>/*</url-pattern> -->
<!-- <dispatcher>REQUEST</dispatcher> -->
<!-- <dispatcher>FORWARD</dispatcher> -->
<!-- </filter-mapping> -->
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
    <servlet-name>JerseyRESTful</servlet-name>
    <servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>
    <init-param>
        <param-name>com.sun.jersey.config.property.packages</param-name>
        <param-value>br.com.mentium.scf.rest</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet>
    <servlet-name>spring-web</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
  </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>JerseyRESTful</servlet-name>
    <url-pattern>/api/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>spring-web</servlet-name>
    <url-pattern>/spring/*</url-pattern>
</servlet-mapping>
<session-config>
    <session-timeout>30</session-timeout>
</session-config>
<error-page>
    <error-code>403</error-code>
    <location>/403.jsp</location>
</error-page>
<error-page>
    <error-code>404</error-code>
    <location>/404.jsp</location>
</error-page>
<error-page>
    <error-code>500</error-code>
    <location>/500.jsp</location>
</error-page>
<mime-mapping>
    <extension>action</extension>
    <mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
    <extension>css</extension>
    <mime-type>text/css</mime-type>
</mime-mapping>
<mime-mapping>
    <extension>js</extension>
    <mime-type>application/x-javascript</mime-type>
</mime-mapping>
</web-app>