3

我花了几天时间了解这个问题,但我还没有想出解决方案。以下是有类似问题的帖子: Similar Post 1Similar Post 2Similar Post 3。我在那里尝试了一些部分解决方案,但没有解决问题。

问题

我正在开发一个 Google Web 应用程序并使用 Hibernate 作为持久层来连接到 Postgresql 数据库。我使用 GWT Eclipse 插件附带的内置 Jetty 服务器在开发模式下运行它。在配置 Jetty 服务器方面,我从这篇文章中获得了一些帮助。

我已经使用 Hibernate Tools 进行逆向工程并导出以下内容:

  • 域代码 (.java)
  • 休眠 XML 映射 (.hbm.xml)
  • DAO 代码 (.java)
  • 休眠 XML 配置

这些都已导出到 src 文件夹,并且我已经使用 Hibernate Tool 验证了配置至少能够提取模式信息。

现在问题出现在 Jetty 服务器开始运行之后。一旦您访问与应用程序关联的站点,它就会在 Eclipse 的调试控制台中报告以下错误:

    com.site.application.<reverse engineered DAO> getSessionFactory
    SEVERE: Could not locate SessionFactory in JNDI
    javax.naming.NameNotFoundException; remaining name 'SessionFactory'
        at org.mortbay.naming.NamingContext.lookup(NamingContext.java:578)
        at org.mortbay.naming.NamingContext.lookup(NamingContext.java:680)
        at org.mortbay.naming.local.localContextRoot.lookup(localContextRoot.java:164)
        at javax.naming.InitialContext.lookup(InitialContext.java:411)
        at com.site.application.<reverse engineered DAO>.getSessionFactory(<reverse engineered DAO>.java:31)

结尾:

    [ERROR] 500 - POST <application path> (127.0.0.1) xxxx bytes

如果您需要更多详细信息,请告诉我。我不想用调试信息淹没页面。

环境

  • Ubuntu 12.04 LTS
  • Eclipse Juno 4.2 构建 ID:20120614-1722
  • GWT SDK 2.4.0
  • 休眠 4.0
  • PostgreSQL 9.1
4

0 回答 0