2014-06-17 17 views
6

sto usando primavera 4.0.5, Hibernate 4.3.5 e JSF per il web developpement in Eclipse, e questo è il contenuto della mia cartella lib:java.lang.ClassNotFoundException: org.springframework.core.io.Resource

enter image description here

Quando eseguo il mio progetto ottengo questo errore:

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/EMaEval]] 
    at java.util.concurrent.FutureTask.report(Unknown Source) 
    at java.util.concurrent.FutureTask.get(Unknown Source) 
    at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) 
    at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:799) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) 
    at java.util.concurrent.FutureTask.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/EMaEval]] 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) 
    ... 6 more 
Caused by: java.lang.NoClassDefFoundError: org/springframework/core/io/Resource 
    at java.lang.Class.getDeclaredFields0(Native Method) 
    at java.lang.Class.privateGetDeclaredFields(Unknown Source) 
    at java.lang.Class.getDeclaredFields(Unknown Source) 
    at org.apache.catalina.util.Introspection.getDeclaredFields(Introspection.java:106) 
    at org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation(WebAnnotationSet.java:261) 
    at org.apache.catalina.startup.WebAnnotationSet.loadApplicationListenerAnnotations(WebAnnotationSet.java:90) 
    at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:63) 
    at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:403) 
    at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:879) 
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:374) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) 
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5355) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    ... 6 more 
Caused by: java.lang.ClassNotFoundException: org.springframework.core.io.Resource 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571) 
    ... 20 more 

questi sono i file di configurazione:

web.xml

<?xml version="1.0" encoding="ASCII"?> 
    <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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> 
     <display-name></display-name> 
     <context-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value>/WEB-INF/classes/application-context.xml</param-value> 
     </context-param> 
     <listener> 
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
     </listener> 
     <listener> 
     <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> 
     </listener> 
     <servlet> 
     <servlet-name>Faces Servlet</servlet-name> 
     <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
     <load-on-startup>1</load-on-startup> 
     </servlet> 
     <servlet-mapping> 
     <servlet-name>Faces Servlet</servlet-name> 
     <url-pattern>*.jsf</url-pattern> 
     </servlet-mapping> 
     <welcome-file-list> 
     <welcome-file>index.jsf</welcome-file> 
     </welcome-file-list> 
    </web-app> 

application-context.xml

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

    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> 
     <property name="driverClass" value ="org.postgresql.Driver" /> 
     <property name="user" value="postgres" /> 
     <property name="password" value="toor"/> 
     <property name="jdbcUrl" value="jdbc:postgresql://172.16.83.128:5432/emaeval" /> 
    </bean> 
    <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
     <property name="dataSource" ref="dataSource" /> 
     <property name="packagesToScan" value="com.models" /> 
     <property name="hibernateProperties"> 
      <props> 
       <prop key="hiberante.dialect">org.hibernate.dialect.PostgreSQLDialect</prop> 
       <prop key="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</prop> 
      </props> 
     </property> 

    </bean> 
    <bean id="tansactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> 
     <property name="sessionFactory" ref="sessionFactory"></property> 
    </bean> 
    <tx:annotation-driven transaction-manager="transactionManager"/> 
    <context:annotation-config/> 
    <context:component-scan base-package="com"></context:component-scan> 
</beans> 

Come posso risolvere questo problema soltanto?

+0

controllo se avete esportato tutti i JAR – TheLostMind

+1

Come nota a margine: Forse si dovrebbe pensare di utilizzare Maven o Gradle ? – John

+0

@TheLostMind vuoi dire che ho improtato tutti i vasi di Spring? –

risposta

6

Assicurarsi, dopo il file jar incluso nel percorso classe e nella cartella lib.

primavera-core-3.0.5.RELEASE.jar

enter image description here

se si utilizza Maven, assicurarsi che la dipendenza di aver incluso per il file primavera-core-3xxxxx.jar

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

Nota: Sostituire $ {org.springframework.version} con il numero di versione.

6

org.springframework.core.io.Resource fa parte di spring-core-<version>.jar

Ma questo lib è già nella cartella lib. Quindi immagino sia solo un problema di distribuzione. - Provare a pulire il server e ridistribuire l'applicazione.

+0

L'ho già provato, non lavoro:/ –

+0

Ho lavorato per me, ho usato la directory di lavoro tomcat pulita e pulita di eclipse per ridistribuire la mia applicazione. Non ho capito il motivo di questa situazione. – srinivas

1

Fare clic con il pulsante destro del mouse sul progetto -> Proprietà -> Gruppo di distribuzione.

Nel riquadro di sinistra Fare clic su "Aggiungi" e aggiungere "Progetto e Dipendenze esterne".

'progetto e dipendenze esterne' avranno tutti i barattoli legati primavera schierati insieme con l'applicazione

Problemi correlati