2012-04-12 5 views
2

existiert ich die folgende Fehlermeldung erhalten, wenn ich versuche, eine Feder Web-Anwendung zu starten:java.io.FileNotFoundException: Klassenpfad Ressource [timex-servlet.properties] kann nicht geöffnet werden, da es nicht

2012-04-12 13:53:20,491 ERROR [org.springframework.web.servlet.DispatcherServlet] - 

Context initialization failed 
org.springframework.beans.factory.BeanInitializationException: Could not load properties; nested exception is java.io.FileNotFoundException: class path resource [timex-servlet.properties] cannot be opened because it does not exist 
java.io.FileNotFoundException: class path resource [timex-servlet.properties] cannot be opened because it does not exist 
    at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:137) 
    at org.springframework.core.io.support.PropertiesLoaderSupport.loadProperties(PropertiesLoaderSupport.java:172) 

Ich benutze Tomcat (Version 6.x) durch Eclipse. Ich habe versucht timex-servlet.properties in den folgenden Verzeichnissen, aber ohne Erfolg setzen:

WebContent\WEB-INF 
WebContent\WEB-INF\classes 
WebContent\ 

Hier ist der Hinweis auf timex-servlet.properties in Timex-servlet.xml:

<bean id="placeholderConfig" 
    class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="location" 
     value="timex-servlet.properties" /> 
</bean> 

Es gibt mehrere SO-Threads, die sich mit der gleichen Nachricht wie ein Klassenpfad befassen: vor der Eigenschaftendateireferenz. Also habe ich versucht, die folgende, die auch nicht funktioniert hat:

 <bean id="placeholderConfig" 
    class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="location" 
     value="classpath:timex-servlet.properties" /> 
</bean> 
+2

'WEB-INF \ classes' ist der korrekte Speicherort in der WAR-Datei. 'classpath: file.properties' ist der korrekte Weg, um anzugeben, dass die Datei sich hier befindet. Ich kann nur vorschlagen, dass Eclipse Ihren KRIEG möglicherweise anders als erwartet entwickelt. Funktioniert es mit einem eigenständigen Tomcat? –

Antwort

13

gewährleisten die Datei im /WEB-INF/classes Ordner abgelegt ist, und verwenden classpath:/timex-servlet.properties (man beachte den Schrägstrich nach Classpath :)

3

Wenn Sie nicht wollen, bewegen Es unter Klasse und möchte die Eigenschaftendatei unter WEB-INF/ classpath: ../ file.properties

0

verlassen. Für Spring-Projekte, legen Sie die Datei unter dem Quellcode oder src-> Somefolder-> einige. Eigenschaftendatei.

Verwandte Themen