0

在我的 Fusion Web 应用程序中,我在实体对象中定义了几个业务规则。一切正常。问题是我无法以编程方式获取它们。我已经搜索了 EntityObjects Impl java 类,但没有应该执行验证的方法。有谁知道如何从实体对象中获取业务规则?我需要至少得到一份清单。

更新:

EntityDefImpl eoDef = EntityDefImpl.findDefObject("package...MyEO");

            for (Object o : eoDef.getValidators()) {
                System.out.println("Rule: " + o);
            }

但即使在这种情况下,我也没有得到业务规则列表。

4

3 回答 3

2

尝试以下而不是您的实现

EntityDefImpl eoDef = EntityDefImpl.findDefObject("package...MyEO");
AttributeDefImpl myAttribute=getAttributeDefImpl("MyAttribute"); //Get the first Attribute

for (Object o : myAttribute.getValidators()) {
            System.out.println("Rule: " + o);
 }

您所做的将只获得实体级别的验证器,而这一个将为您提供这个特定的属性验证器!

于 2013-11-14T11:48:23.403 回答
1

如果您只想调用它,您可以使用ViewObjectImpl中的 Validate 函数(因为您想以编程方式从 Web 应用程序或您的应用程序模块中调用它)

如果您想添加另一个验证,那么您应该遵循第一个答案。

于 2013-11-13T22:33:58.070 回答
1

看一下 EntityDefImpl 类。由于它适用于所有 EO 实例,因此它带有验证。在此处输入链接描述

于 2013-11-13T22:30:53.660 回答