2014-12-19 5 views
2

스프링 자리 표시 자 구성과 관련된 문제가 있습니다. 솔루션을 찾으려고 노력하는 웹을 검색했지만 아무 것도 나를 위해 전혀 효과가 없었습니다.봄 스프링 설정 파일 양식을로드하는 동안 자리 표시자를 해결할 수 없습니다.

우리는 .properties 파일을로드하기 위해 스프링 구성자를 사용 했었고 모든 구성 파일은 META-INF 디렉토리에 있습니다.

이제 설정 파일을/etc/sep/properties 디렉토리 나 다른 파일 시스템 디렉토리에 위치시켜야합니다.

나는 /etc/sep/properties/jdbc.properties의 내용이 다음입니다

<context:property-placeholder location="file:/etc/sep/properties/jdbc.properties" /> 
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 
     <property name="driverClassName" value="${jdbc.driverClassName}" /> 
     <property name="url" value="${jdbc.databaseurl}" /> 
     <property name="username" value="${jdbc.username}" /> 
     <property name="password" value="${jdbc.password}" /> 
     <property name="initialSize" value="${jdbc.initialPoolSize}" /> 
    </bean> 

를 사용하려고 :

cat /etc/sep/properties/jdbc.properties 
jdbc.driverClassName= org.postgresql.Driver 
jdbc.dialect=org.hibernate.dialect.PostgreSQLDialect 
jdbc.databaseurl=jdbc:postgresql://localhost:5432/sep?characterEncoding=utf8&autoReconnect=true 
jdbc.username=**** 
jdbc.password=**** 

가 나는 또한 folows 같은 다른 방법을 사용했지만, 그것은 일 나도 마찬가지야.

<context:property-placeholder properties-ref="prop" /> 

<util:properties id="prop" location="reso"/> 

<bean id="reso" class="org.springframework.core.io.FileSystemResource"> 
    <constructor-arg index="0" value="/etc/sep/properties/jdbc.properties" /> 
</bean> 

이 중요하지만, 응용 프로그램의 context.xml이 종속 우리의 웹 응용 프로그램에 사용되는 코어 lib.jar가 배치되도록 우리가 받는다는 건물을 사용하는 경우 나도 몰라. 로깅과 같은 기타 구성은 훌륭하게 작동합니다.

모든 제안에 감사드립니다.

답변

1

좋아, 마침내 해결했습니다. 그것에 대해 두 가지가있었습니다.

처음 : My Tomcat 서버가 배포 된 파일을 제대로 업데이트하지 않았습니다. 그것은 도움이 경우

그리고 마침내 나는 꽤 잘 모르겠지만, 우리는 파일 한 후 한 번 더 슬래시 추가 : 결과는이되도록, 사양 :

<context:property-placeholder location="file:///etc/sep/properties/*.properties" /> 

지금 제대로 모든 설정 파일을로드하는 것입니다.

0

이 그냥 생각하지만이 작동은

당신은 .property 파일이 올바른 액세스 권한이 있는지 확인 했습니까? 제 말은 스프링 애플리케이션을 실행하는 사용자가 액세스 할 수 있습니까?

표시된 오류를 표시하면 많은 도움이됩니다.

관련 문제