Сбой инициализации контекста tomcat с базой данных oracle - PullRequest
0 голосов
/ 25 февраля 2019

Я развертываю приложение в среде Linux, мне нужно успешно установить базу данных tomcat и Oracle, после этого я генерирую свои таблицы и получаю .war-файл (модуль), который отлично работает в среде Windows

Я развертываю его в / tomcat / webapps и правильно настраиваю свой xml-сервер

    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />

    <Resource   auth="Container" 
	        driverClassName="oracle.jdbc.driver.OracleDriver"
		factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" 
		global="jdbc/vimsDs" 			
		initialSize="10" maxActive="100" maxWait="10000" minIdle="10" 
		username="****"
		name="jdbc/vimsDs" 			
		password="*****" 
		removeAbandoned="true" removeAbandonedTimeout="36000" 
		type="javax.sql.DataSource" 
		url="jdbc:oracle:thin:@localhost:1521:XE"/>

после этого я запускаю приложение из приложения tomcat manager, и он говорит, что не может запустить приложение

FAILED - Приложение дляНевозможно запустить контекстный / зал ожидания путь

, и он показывает мне, что мое приложение регистрирует эту ошибку

logs

2019-02-25 15:04:47.120 [http-bio-8080-exec-32] ERROR o.s.web.context.ContextLoader - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationConfig': Initialization of bean failed; nested exception is 

.....

at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:179) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
	at org.springframework.jndi.JndiLocatorSupport.lookup(JndiLocatorSupport.java:104) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
	at Caused by: javax.naming.NameNotFoundException: Le Nom jdbc/vimsDs n'est pas lié à ce Contexte
at org.apache.naming.NamingContext.lookup(NamingContext.java:825) ~[catalina.jar:7.0.92]
at org.apache.naming.NamingContext.lookup(NamingContext.java:173) ~[catalina.jar:7.0.92]
at org.apache.naming.SelectorContext.lookup(SelectorContext.java:156) ~[catalina.jar:7.0.92]
at javax.naming.InitialContext.lookup(InitialContext.java:417) ~[na:1.8.0_201]
at org.springframework.jndi.JndiTemplate$1.doInContext(JndiTemplate.java:155) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.jndi.JndiTemplate.execute(JndiTemplate.java:87) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:152) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:179) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.jndi.JndiLocatorSupport.lookup(JndiLocatorSupport.java:104) ~[spring-context-4.3.6.RELEASE.jar:4.3.6.RELEASE]
at org.springframework.jdbc.datasource.lookup.JndiDataSourceLookup.getDataSource(JndiDataSourceLookup.java:45) ~[spring-jdbc-4.3.6.RELEASE.jar:4.3.6.RELEASE]
... 143 common frames omitted

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

После добавления JNDI в context.xml Также нам нужно добавить OracleJDBC.jar в этот файл / tomcat / lib

0 голосов
/ 25 февраля 2019

Вам необходимо добавить имя JNDI к context.xml в вашем файле WAR.

Файл: /META-INF/context.xml

Содержимое:

<?xml version="1.0" encoding="utf-8" ?>
<Context>
    <ResourceLink name="jdbc/vimsDs"
              global="jdbc/vimsDs"
              type="javax.sql.DataSource" />
</Context>
...