一尘不染

如何在Grails中指定可移植的Jndi数据源查找

tomcat

我知道grails中的JNDI查找非常简单

datasource {
  jndiName = "java:comp/env/myDataSource"
}

这在Tomcat上效果很好。

在其他容器(WebLogic,JBOSS等)上,同一内容的jndiName将是just myDataSource。问题是我如何将其配置为通用且
可移植的, 从而无需根据部署目标更改代码?


阅读 266

收藏
2020-06-16

共1个答案

一尘不染

您也许可以取消一个系统属性,该属性知道您将在Tomcat中运行时设置该属性,而不能在其他任何地方设置,例如

datasource {
  jndiName = "${System.getProperty('catalina.home') ? 'java:comp/env/' : ''}myDataSource"
}
2020-06-16