我正在使用Eclipse Juno,Hibernate 4.0和MSSQL 2008。 我已经创建了一个数据库,并且刚刚完成了Eclipse中“JPA Entities from Tables”的过程。大约一半的表没有被创建(即使我选择了这些表),但这些类被添加到persistence.xml。
还有其他人遇到过这个问题吗?你有解决方案吗?
答案 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。没有遇到任何其他副作用(到目前为止)