gpt4 book ai didi

java - 如何修复 hibernate 上的 JndiException?

转载 作者:太空宇宙 更新时间:2023-11-04 14:15:58 25 4
gpt4 key购买 nike

public class HibernateUtil {
private static SessionFactory sessionFactory = createSessionFactory();
private static ServiceRegistry serviceRegistry;

public static SessionFactory createSessionFactory() {
Configuration configuration = new Configuration();
configuration.configure();
serviceRegistry = new StandardServiceRegistryBuilder().applySettings(
configuration.getProperties()).build();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
return sessionFactory;
}

public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}

这是我在这个论坛上找到的提供 session 工厂的类但我不断收到 JndiException: Error parsing JNDI name []

16:07:57,659 WARN SessionFactoryObjectFactory:98 - Could not bind factory to JNDI

javax.naming.NoInitialContextException:需要在环境或系统属性中指定类名,或者作为小程序参数,或者在应用程序资源文件中指定:java.naming.factory.initial 在 javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:640) 在 javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243) 在 javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:280) 在 javax.naming.InitialContext.getNameParser(InitialContext.java:429) 在 org.hibernate.util.NamingHelper.bind(NamingHelper.java:52) 在 org.hibernate.impl.SessionFactoryObjectFactory.addInstance(SessionFactoryObjectFactory.java:90) 在 org.hibernate.impl.SessionFactoryImpl.(SessionFactoryImpl.java:293) 在 org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1145) 在 util.HibernateUtil.(HibernateUtil.java:13)

最佳答案

HibernateUtil 不是问题。您应该查看配置文件 .cfg.xml 并删除 session-factory 标记上的名称。

<session-factory name=""> 

至:

<session-factory>

这是解决该问题的快速方法。 name 属性仅需要将 SessionFactory 绑定(bind)到 JNDI。

关于java - 如何修复 hibernate 上的 JndiException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27738546/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com