я хочу развернуть свое приложение в AWS.
Я установил свой env.
и в root-context.xml моего приложения я установил источник данных.
<bean id = "dataSource" class = "org.apache.commons.dbcp2.BasicDataSource">
<property name = "driverClassName" value = "oracle.jdbc.driver.OracleDriver" />
<property name = "url" value = "jdbc:oracle:thin:@mydbinstance.cnn31xputfwg.ap-northeast-2.rds.amazonaws.com:1521:orcl" />
<property name = "username" value = "myid" />
<property name = "password" value = "mypassword" />
</bean>
этот параметр отлично работает локально на сервере tomcat. но в AWS это сообщение об ошибке
nested exception is org.apache.ibatis.exceptions.PersistenceException:
Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is
java.sql.SQLException: Cannot load JDBC driver class 'oracle.jdbc.driver.OracleDriver'
The error may exist in file [/var/lib/tomcat8/webapps/ROOT/WEB-INF/classes/mappers/emp/emp-mapper.xml]
The error may involve EmpDAO.List ### The error occurred while executing a query
Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is
java.sql.SQLException: Cannot load JDBC driver class 'oracle.jdbc.driver.OracleDriver'
Теперь мой вопрос: что мне делать, чтобы использовать соединение get jdbc в AWS?




Похоже, когда вы запускаете приложение на AWS, в его CLASSPATH отсутствует драйвер Oracle JDBC. Итак, ответ - добавить драйвер в путь к классам.
И я предвижу следующий вопрос: «как это сделать?», И самый простой способ - просто вручную скопировать драйвер в свой путь к классам.
Если вам не нравится ручная работа, вы можете сгенерировать шаблон приложения Spring с помощью Spring Initializr. Его сценарий сборки имеет плагин org.springframework.boot, который выполняет две важные функции:
jar, который включает Tomcat, поэтому приложение может быть запущено только java -jar my-app.jar (без развертывания в Tomcat)dependencies к этому файлу jar (включая драйвер Oracle JDBC)
путь к классам? где я могу найти путь к классам? Я использую проект maven spring, а файл ojdbc.jar существует в репозитории.