我正在具有Oracle数据库连接的PCF中部署SpringBoot应用程序,我也使用户使用oracle凭据创建了服务实例并绑定到应用程序。
以下是VCAP服务变量:
{
“ name”:“ healthwatch-api-database”,
“ instance_name”:“ healthwatch-api-database”,
“ binding_name”:null,
“凭据”:{
“驱动程序”:“ oracle.jdbc.OracleDriver”,
“ url”:“ jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS =(PROTOCOL = TCP)(HOST = 10.157.129.175)(PORT = 1527))(CONNECT_DATA =(SERVER = DEDICATED)(SID = DEVCLOUD)) )“,
“用户名”:“ EXTRANET_USER”,
“密码”:“ EXTRANET_USER1”
},
以下是推送应用程序后的日志:
2018-10-09T18:26:41.29 + 0530 [APP / PROC / WEB / 0] OUT o.s.b.w.s.ServletRegistrationBean-映射servlet:'dispatcherServlet'到[/] 2018-10-09T18:26:41.47 + 0530 [APP / PROC / WEB / 0] OUT 09 Oct 2018 12:56:41.471 / UTC [main]信息
2018-10-09T18:26:41.47 + 0530 [APP / PROC / WEB / 0] OUT o.s.j.d.DriverManagerDataSource-加载的JDBC驱动程序:oracle.jdbc.OracleDriver
2018-10-09T18:26:42.17 + 0530 [APP / PROC / WEB / 0] OUT 09 Oct 2018 12:56:42.174 / UTC [main]警告
2018-10-09T18:26:42.17 + 0530 [APP / PROC / WEB / 0] OUT o.s.b.a.orm.jpa.DatabaseLookup-无法从数据源确定jdbc网址
2018-10-09T18:26:42.17 + 0530 [APP / PROC / WEB / 0] OUT org.springframework.jdbc.support.MetaDataAccessException:无法获取用于提取元数据的连接;嵌套的异常是 org.springframework.jdbc.CannotGetJdbcConnectionException:无法获取JDBC连接。嵌套的异常是java.sql.SQLException:ORA-00604:在递归SQL级别1发生错误
2018-10-09T18:26:42.17 + 0530 [APP / PROC / WEB / 0] OUT ORA-01882:找不到时区区域
2018-10-09T18:26:42.17 + 0530 [APP / PROC / WEB / 0]在org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:338)上退出
答案 0 :(得分:0)
查看错误日志,其原因似乎与时区设置有关。
2018-10-09T18:26:42.17+0530 [APP/PROC/WEB/0] OUT ORA-01882: timezone region not found
这是一篇谈论类似问题的帖子-Getting ORA-01882: timezone region not found with Oracle UCP, on aws ec2 instance?
现在如何将时区传递给您的应用程序?
您可以通过清单文件来执行此操作。查看文章- https://docs.cloudfoundry.org/devguide/deploy-apps/manifest.html