2012-11-06 62 views
1

在我的網絡應用程序我試圖使用彈簧安全。我有以下項目結構:春季配置位置文件沒有發現異常

Project structure http://i48.tinypic.com/17q1zq.png

在我的web.xml我這樣設置configLocations:

Project structure http://i45.tinypic.com/smpvmw.png

而且在我的HibernateUtil,我創建的ClassPathXmlApplicationContext這樣的:

Project structure http://i49.tinypic.com/ev1jxv.png

B UT,當我執行的應用程序,我得到了以下錯誤:

GRAVE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener 
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [resources/applicationContext.xml]; nested exception is java.io.FileNotFoundException: class path resource [resources/applicationContext.xml] cannot  be opened because it does not exist 
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:341) 
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302) 
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174) 
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209) 
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180) 
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125) 
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94) 
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:131) 
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:527) 
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:441) 
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383) 
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283) 
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111) 
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723) 
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226) 
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221) 
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
at java.lang.Thread.run(Thread.java:680) 
Caused by: java.io.FileNotFoundException: class path resource [resources/applicationContext.xml] cannot be opened because it does not exist 
at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:157) 
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:328) 
... 20 more 

可能是什麼問題?

+0

你是否檢查過你的文件已打包到WAR中? 如果它不在類路徑上,將會出現錯誤。 您可能需要使用maven war插件的構建設置 – Tinman

回答

0

錯誤明顯是告訴你,它不能找到資源/ applicationContext.xml的classpath中。

看看你的代碼組織,我認爲問題在於你的Spring applicaitonContext.xml文件直接位於WEB-INF和一個典型的web應用程序中,這是類路徑中的NOT。你最好創建一個WEB-INF/classes /文件夾並將你的applicationContext.xml文件放在那裏。

由於錯誤是在抱怨資源/ appliationContext.xml,您可能還需要創建一個WEB-INF/classes/resources /文件夾並將其放在那裏。

+7

由於這個答案的基調,我認爲這是投票。告訴某人這個回答「明顯」可見是居高臨下的。如果他們清楚,他們不會尋求幫助。 – Tinman