2017-02-27 1 views
0

jndi 자원이이 오류와 마주하는 프로젝트를 배포하는 중 찾을 수 없습니다.javax.naming.NameNotFoundException : 이름 [jdbc/skynetdb]가이 컨텍스트에 바인드되어 있지 않습니다. [jdbc]

javax.naming.NameNotFoundException : 이름 [jdbc/skynetdb]이 (가)이 컨텍스트에 바인딩되어 있지 않습니다. [JDBC] 여기

를 찾을 수 없습니다 "JDBC/skynetdb는"있는 그대로의 context.xml 파일에 정의 된 JNDI 리소스의 이름입니다

<Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" 
     global="jdbc/skynetdb" maxActive="100" maxIdle="30" maxWait="10000" 
     name="jdbc/skynetdb" password="" type="javax.sql.DataSource" 
     url="jdbc:mysql://localhost:3306/skynetdb" username="root" /> 

프로그램과 데이터 소스는 spring.xml 파일에 빈은 다음과 같이 선언 :

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
     <property name="jndiName" value="jdbc/skynetdb" /> 
</bean> 

답변

0

문제 해결 : 난 그냥 spring.xml 파일에 데이터 소스 bean을 수정 같이 :

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
     <property name="jndiName" value="java:comp/env/jdbc/skynetdb" /> 
</bean> 
관련 문제