2016-07-15 1 views
0

스프링 보안을 사용하고 있지만 어떤 이유로 내 web.xml이 내 applicationContext를 찾지 못합니다. .XML web.xml을java.io.FileNotFoundException : 클래스 경로 리소스 [conf/admin/applicationContext.xml]이 존재하지 않아 열 수 없습니다.

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value> 
      classpath:conf/admin/applicationContext.xml 
      classpath:conf/admin/applicationContext-security.xml 
    </param-value> 
</context-param> 

<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> 

<listener> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 

내 applicationContext.xml 내 web.xml에 같은 장소에서 MyProject를/conf의/관리/applicationContext.xml에 있지만 항상 예외가 발생합니다 :

14:18:07,793 ERROR [ContextLoader] Context initialization failed 
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [conf/admin/applicationContext.xml]; nested exception is java.io.FileNotFoundException: class path resource [conf/admin/applicationContext.xml] cannot be opened because it does not exist 

나는 WEB-INF 폴더 안에 넣는 것을 시도했다. (모든 Spring Security 튜토리얼은 myProject/dist/web/WEB-INF에 있지만, 새로 고치고 다시 빌드 할 프로젝트를 정리하면 삭제됩니다.

그래서 내가 뭘 잘못하고 있니? contextConfigLocation 또는 applicationContext.xml에 잘못된 경로를 잘못 넣었습니까?

답변

1

당신이 당신의 XML 설정 파일 즉 Standard Maven Directory Structure를 따르고 있습니다 것은 src/main/webapp/WEB-INF/conf/admin 아래에 있다고 가정하면 다음이 시도 : 그냥 당신에게 applicationContext.xml 파일을 배치

  1. 을 :

    <context-param> 
        <param-name>contextConfigLocation</param-name> 
        <param-value> 
         /WEB-INF/conf/admin/applicationContext.xml 
         /WEB-INF/conf/admin/applicationContext-security.xml 
        </param-value> 
    </context-param> 
    

    또 다른 방법은 기본값으로 이동하는 것입니다 src/main/webapp/WEB-INF 아래에 있으며 기본적으로 봄에 선택됩니다.

  2. 그러면이 <import resource="applicationContext-security.xml" /> 행을 applicationContext.xml에 추가하여 보안 구성을 가져올 수 있습니다.
  3. 기본 설정 방식을 사용하여 Repository을 확인하십시오.
+0

@StudioWorks이 질문에 대한 답변이 있으면이 솔루션을 수락하십시오. –

관련 문제