Eclipse没有从表创建JPA实体

时间:2013-04-19 07:01:31

标签: eclipse jpa

我正在使用Eclipse Juno,Hibernate 4.0和MSSQL 2008。 我已经创建了一个数据库,并且刚刚完成了Eclipse中“JPA Entities from Tables”的过程。大约一半的表没有被创建(即使我选择了这些表),但这些类被添加到persistence.xml。

还有其他人遇到过这个问题吗?你有解决方案吗?

4 个答案:

答案 0 :(得分:3)

就我而言,数据库是Oracle XE。所以我的情况有点不同,但可能对某人有帮助。

找到问题的最佳方法是检查$ workspace_location / .metadata / .log文件中的工作空间日志。就我而言,我发现有3个问题:

1)引起:java.io.FileNotFoundException:$ MiddlewarePath \ oracle_common \ modules \ oracle.adf.share_11.1.1 \ adfsharembean.jar(访问被拒绝)

2)引起:java.io.FileNotFoundException:$ MiddlewarePath \ oracle_common \ modules \ oracle.ldap_11.1.1 \ jremtool.jar(访问被拒绝)

3)!MESSAGE无法在pluginorg.eclipse.jpt.jpa.gen中找到JPA实体生成模板 !堆栈1 Java模型异常:核心异常[代码275]存在一个具有不同情况的资源:' / TestJPAProjectFacetsEJB / src / main / java / com / domainname / ejb / TestJPAProjectFacets'。

因此我做了以下事情:

1)提供了jar文件的访问权限 2)当我生成实体时,我将包名称作为com / domainname / ejb / testjpaprojectfacets / model。但我已经有一个包com / domainname / ejb / TestJPAProjectFacets因此错误。然后我将我现有的包重命名为全部小写(com / domainname / ejb / testjpaprojectfacets)并且它有效。

谢谢, 桑杰

答案 1 :(得分:2)

我的解决方法是使用JTDS JDBC驱动程序连接到SQL Server数据库而不是Microsoft SQL Server JDBC驱动程序

答案 2 :(得分:0)

这听起来像Eclipse DTP bug 282206。 Dali(提供您正在使用的实体生成向导的Eclipse项目)依赖于Eclipse DTP项目,用于从各种数据库服务器检索生成实体所需的元数据。您正在使用的MS SQL Server“驱动程序”(即DTP使用的插件使MS SQL JDBC驱动程序适应DTP SPI接口 - 默认情况下此插件为org.eclipse.datatools.enablement.msft.sqlserver... - 这有点令人困惑DTP开发人员喜欢称这些插件“驱动程序”......)在返回Dali的元数据中有一个错误,阻止Dali生成实体。

答案 3 :(得分:0)

我也遇到了这个问题。

我的解决方法 - 在MySQL中创建数据库并从那里生成实体。生成的实体类也适用于SQL Server。没有遇到任何其他副作用(到目前为止)