2013-06-27 49 views
1

Dali已经证明对使用Eclipse中配置的数据连接的已安装数据库的设计时JPA批注验证很有用。我们使用它来提供一种“类型安全性”的级别,以确保JPA注释中的文本字符串实际上对应于引用表中的字段等。在我们的环境中,数据库模式是从JPA实体类独立开发的,通常使用Eclipse IDE外部的工具,例如PowerDesigner,SQL Developer和Notepad ++中良好的DDL。重点是在JPA实体和数据库表之间没有自动生成或自动反向工程。基于文本的JPA批注和单独定义的基于文本的数据库字段和表名可能会不时出现错误。鉴于此,我们从Dali验证和错误突出显示中获得了很多价值。它是我们必须帮助查找错配的少数工具之一,否则在测试或生产之前无法检测到这些错配。使用Eclipse Dali作为独立工具

我的问题是Dali是否可以脚本化或以其他方式在Eclipse外部运行(最好是作为ant任务),这样JPA验证可以作为构建过程的一部分发生。

我们想根据指定的persistence.xml和部署的数据库/数据连接器或定义数据库模式的DDL文件来验证JPA实体。

一个额外的问题是如何从这样的分析中得到结果成为声纳可以消耗的格式,既可以是静态分析结果,也可以是单元测试结果。

谢谢!

回答

0

目前,Dali不支持在Eclipse工作区之外验证您的JPA配置。 (大理有很多依赖于其他Eclipse插件。)但这是一个好主意。也许你可以通过Eclipse的Bugzilla提交一个增强请求[1]。也就是说,您可以使用EclipseLink的完整性检查器来验证您的设置与实时数据库的对比。请参阅这些链接:[2]和[3]。如果您正在使用另一个JPA实现,那么它也有可能提供执行验证的方法。

[1] https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Dali%20JPA%20Tools

[2] http://wiki.eclipse.org/EclipseLink/Examples/JPA/IntegrityChecker

[3] http://wiki.eclipse.org/Configuring_a_Session_%28ELUG%29#Configuring_the_Integrity_Checker

+0

感谢布赖恩。我们的确在使用EclipseLink。我不会在你的项目中打开一个增强请求,因为我认为我们最好的方法就是按照你的建议使用EL的完整性检查。 – mrjmh