Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.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
从java7 tomcat7迁移到java8 tomcat8时启动tomcat时出错_Java_Tomcat_Jdbc_Java 8_Tomcat8 - Fatal编程技术网

从java7 tomcat7迁移到java8 tomcat8时启动tomcat时出错

从java7 tomcat7迁移到java8 tomcat8时启动tomcat时出错,java,tomcat,jdbc,java-8,tomcat8,Java,Tomcat,Jdbc,Java 8,Tomcat8,我正在一个使用Tomcat7Java7的项目上切换到Java8Tomcat8 我重新编译了源代码,没有错误 我的问题是运行tomcat 我无法使用此配置连接到资源: <GlobalNamingResources> <Resource name="shared/jdbc/toto" auth="Container" type="javax.sql.DataSource" use

我正在一个使用Tomcat7Java7的项目上切换到Java8Tomcat8

我重新编译了源代码,没有错误

我的问题是运行tomcat

我无法使用此配置连接到资源:

<GlobalNamingResources>
    <Resource
            name="shared/jdbc/toto"
            auth="Container"
            type="javax.sql.DataSource"
            username="toto"
            password="toto"
            driverClassName="org.postgresql.Driver"
            url="jdbc:postgresql://syt-db:5432/toto"
            maxActive="4"
            maxIdle="2"/>
</GlobalNamingResources>
我在网上的某个地方添加了工厂

<GlobalNamingResources>
    <Resource
            name="shared/jdbc/toto"
            auth="Container"
            factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
            type="javax.sql.DataSourceFactory"
            username="toto"
            password="toto"
            driverClassName="org.postgresql.Driver"
            url="jdbc:postgresql://syt-db:5432/toto"
            maxActive="4"
            maxIdle="2"/>
</GlobalNamingResources>
我觉得现在它可以使用驱动程序,但仍然有一个错误的配置

我的问题真的来自资源配置还是应该关注其他方面


Thx

我认为您需要将带有postgres驱动程序的jar文件从旧的tomcat7复制到新的Tomcat8中

在TOMCAT_HOME/lib-目录中查找该文件。

我必须在应用程序的上下文中添加type=“javax.sql.DataSource”

 <ResourceLink
   name="jdbc/toto"
   global="shared/jdbc/toto"
   type="javax.sql.DataSource"
  />


您需要在ressource定义和server.xml的上下文中编写类型,我刚刚尝试过,但它似乎没有改变任何东西。
AVERTISSEMENT [localhost-startStop-1] org.apache.naming.NamingContext.lookup Une erreur s est produite durant la résolution de la référence
java.lang.IllegalArgumentException: The local resource link [toto] that refers to global resource [shared/jdbc/toto] does not specify the required attribute type
 <ResourceLink
   name="jdbc/toto"
   global="shared/jdbc/toto"
   type="javax.sql.DataSource"
  />