Tomcat Mysql – 无法找到java:comp

我正在尝试使用tomcat mysql来开发Web应用程序,这是我的配置:persistence.xml中persistence-unit name=EntityMappings transaction-type=RESOURCE_LOCALproviderorg.hibernate.jpa.HibernatePersistencePr...

我正在尝试使用tomcat mysql来开发Web应用程序,这是我的配置:

persistence.xml中

<persistence-unit name="EntityMappings" transaction-type="RESOURCE_LOCAL">
    <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
    <non-jta-data-source>
        java:comp/env/jdbc/EntityMappings
    </non-jta-data-source>
    <exclude-unlisted-classes>false</exclude-unlisted-classes>
    <shared-cache-mode>ENABLE_SELECTIVE</shared-cache-mode>
    <validation-mode>NONE</validation-mode>
    <properties>
        <property name="javax.persistence.schema-generation.database.action"
                  value="none" />
    </properties>
</persistence-unit>

web.xml中

    <resource-ref>
    <description>MySQL Datasource example</description>
    <res-ref-name>jdbc/EntityMappings</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

context.xml(在tomcat / config下)

<Resource name="jdbc/EntityMappings" auth="Container" type="javax.sql.DataSource"
           maxActive="50" maxIdle="30" maxWait="10000"
           username="XXX" password="XXX" 
           driverClassName="com.mysql.jdbc.Driver"
           url="jdbc:mysql://localhost:3306/EntityMappings"/>

我的架构是EntityMappings.

运行后我遇到了一些错误:

Name [java:comp/env/jdbc/EntityMappings] is not bound in this Context. Unable to find [java:comp].

Unable to lookup JNDI name [java:comp/env/jdbc/EntityMappings]

javax.persistence.PersistenceException: Unable to build entity manager factory

我已将mysql驱动程序放在我的tomcat / lib下(mysql-connector-java-5.1.30-bin.jar)

解决方法:

尝试从persistence.xml中删除java:comp / env前缀:

<non-jta-data-source>
    jdbc/EntityMappings
</non-jta-data-source>

本文标题为:Tomcat Mysql – 无法找到java:comp

基础教程推荐