Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我可以在Tomcat7中使用混合数据源配置吗?即一些jndi,一些在spring中配置?_Java_Spring_Tomcat_Jndi - Fatal编程技术网

Java 我可以在Tomcat7中使用混合数据源配置吗?即一些jndi,一些在spring中配置?

Java 我可以在Tomcat7中使用混合数据源配置吗?即一些jndi,一些在spring中配置?,java,spring,tomcat,jndi,Java,Spring,Tomcat,Jndi,我的许多应用程序都使用共享的Tomcat实例。如前所述,我已经将一些应用程序配置为使用JNDI数据源,但其他应用程序仍然没有。因此,他们将ojdbc jar保存在web inf/lib目录中 不幸的是,这给了我一个错误: Caused by: java.lang.IllegalArgumentException: interface oracle.jdbc.internal.ClientDataSupport is not visible from class loader 这是描述的 我是否

我的许多应用程序都使用共享的Tomcat实例。如前所述,我已经将一些应用程序配置为使用JNDI数据源,但其他应用程序仍然没有。因此,他们将ojdbc jar保存在web inf/lib目录中

不幸的是,这给了我一个错误:

Caused by: java.lang.IllegalArgumentException: interface oracle.jdbc.internal.ClientDataSupport is not visible from class loader
这是描述的

我是否必须拥有“全部或全部”才能成功?

一切都必须是JNDI,或者什么都不能是JNDI

最好的选择是为数据库连接池使用数据源,无论您是通过JNDI获取数据源,还是应用程序使用第三方库(如BoneCP或C3P02)自行处理数据源。这两个选项都使用数据源。我的问题更多的是,我是否可以使用在同一容器中运行的jndi数据源和spring配置的数据源。似乎,如果web应用程序使用用于jndi数据源的相同jdbc jar进行部署,那么它就会如上所述失败。由于Tomcat类加载器已经加载了jar,所以使用相同jar的Spring项目应该依赖Tomcat(或您的应用程序服务器)已经加载的jar. 如果您正在使用maven,只需将提供的
添加到您的库中即可。Spring可以配置为使用Tomcat设置的
数据源,也可以设置自己的
数据源并使用它。这里有点不清楚你在问什么。你能提供更多细节吗?