【问题标题】:Challenges configuring hibernate JNDI for tomcat为 tomcat 配置休眠 JNDI 的挑战
【发布时间】:2015-08-07 20:58:13
【问题描述】:

大家好,我一直在尝试将我的应用程序配置为使用 Hibernate ORM,但在 JNDI 属性规范方面遇到了挑战,因为我无法为 tomcat 指定“hibernate.jndi.class”,当我不断收到错误消息时应用程序尝试配置休眠 ("javax.naming.NoInitialContextException: 需要在环境或系统属性中指定类名,或作为小程序参数,或在应用程序资源文件中:java.naming.factory.initial")。

我想知道是否有人在 tomcat 上成功配置了 JNDI,如果是,我希望这些人共享 hibernate.cfg.xml 文件。下面我发布了我当前的 hibernate.cfg.xml 文件。

提前致谢。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory  name="HibernateSessionFactory">
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="hibernate.connection.datasource">java:comp/env/jdbc/TestDB</property>
        <property name="hibernate.current_session_context_class">thread</property>
        <property name="hibernate.connection.username">root</property> 
		<property name="hibernate.connection.password">inheritance</property> 
        
        <!-- Mapping with model class containing annotations -->
    <mapping resource="user.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

【问题讨论】:

    标签: hibernate tomcat hibernate-mapping


    【解决方案1】:

    您好,我会尝试回答这个问题,因为我遇到了类似的问题,并且遇到了 NoInitialContextException 并且我 删除了 session-factory 的 name 属性,就像你的情况一样

    <session-factory  name="HibernateSessionFactory">
    

    只是

    <session-factory>
    

    所以 hibernate 创建自己的 SessionFacade 并且不会尝试使用 JNDI 之一。
    但它也可能需要对 DAO 进行更改。

    【讨论】:

    • 非常感谢您的回复 Viraj Nalawade,但我尝试删除 name 属性,但错误仍然相同。但是您谈到了 DAO 的变化,请您解释一下。提前致谢
    • 否,如果删除名称后异常没有改变,则 DAO 更改无用
    猜你喜欢
    • 2018-10-21
    • 1970-01-01
    • 2021-07-02
    • 1970-01-01
    • 2012-10-15
    • 1970-01-01
    • 2013-06-10
    • 2020-05-06
    • 1970-01-01
    相关资源
    最近更新 更多