2013-08-18 157 views
-2

我正试图将应用程序部署到我的GlassFish服务器环境。我已经设置了它,以便GlassFish创建连接池到另一台服务器上的postgreSQL数据库(数据库所在的而不是 localhost)。我测试连接,然后尝试部署应用程序。它失败,出现java.lang.RuntimeException: EJB Container initialization错误,并且我的错误日志包含以下内容:http://ideone.com/UlZXut(由于其大小,请将其放在此处)。上面还有其他警告,但他们只提到已经存在的表格。将应用程序部署到GlassFish Server时出现问题 - 映射问题?

根据this,我认为所需的sun-cmp-mappings.xml文件(我认为这是正确映射所必需的文件)将在部署时自动生成,但似乎我错了。任何人都可以看到这种情况?

我很抱歉,如果这不是SE发布这个绝对最好的部分,但它与开发工具有关,并且我看到了一些相关的帖子。

回答

0

您的错误日志表明您正在尝试使用DOUBLE作为数据类型创建表。在Postgresql中,该数据类型实际上被称为“double precision”。如果您修改表定义以使用“双精度”,会发生什么情况?

+0

问题是,我无法直接控制应用程序,只需将其设置为引用特定的数据库即可。对于所有模式,它有几个sun- -cmp-mappings.xml文件,但没有单独的sun-cmp-mappings.xml文件。我会假设几个人会照顾那个映射,但他们没有。 也许他们没有位于正确的目录?我为他们尝试了几种不同的展示位置,但他们获得了类似的结果 – user991710

+1

W.A.G:你运行capture-schema命令来生成特定于postgresql的DDL吗? http://docs.oracle.com/cd/E26576_01/doc.312/e24930/container_managed-persistence.htm#beaka – bma

0

启动时Glassfish试图为您的java代码创建数据库表。它没有做到这一点,它无法启动。

检查ORM映射器的配置。

+0

我在哪里查找配置?我对这种不适应感到抱歉,我对J2EE应用程序相当陌生,并且通过文档搜索没有取得丰硕成果。 – user991710

+0

你的JPA提供者是什么? – WeMakeSoftware

相关问题