2012-07-31 55 views
0

我目前正在研究一个运行在glassfish上的JSF 2应用程序(带有primefaces)。 我们的数据模型是一个标准(AIXM),所以我们不能修改它。验证规则在模型上定义。来自模型级验证的用户友好的消息

在我们的应用程序中,guis并不反映模型。 例如,模型中的某些字段未显示(它们是从用户输入计算的)。 该模型还有一个ConditionCombination类,它允许表示对象列表之间的逻辑关系。 在我们的应用程序中,我们只使用这些对象列表中的两个。 所以我们计算一下ConditionCombination的一些属性。

由于我们有跨场验证(这似乎很难做到使用JSF验证机制),我们选择在模型级别进行验证。 但是有些错误信息对用户没有意义。 例如,某些错误消息在不显示给用户的字段中。

有没有关于如何改善此验证的任何想法? (或者我们应该在JSF级实现它来代替,而从型号上来看重写所有验证规则到视图的角度)

回答

1

可以使用FacesContext context = FacesContext.getCurrentInstance(); context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Your message here", null));

只写你的代码模型和追加以上代码自定义消息。

+0

是的,这是我们如何显示我们在模型上找到的验证错误。但是我们的问题是某些消息的内容对于用户来说并不清楚(有些是指模型中的属性,而不是gui中的属性)。 – matiouz 2012-08-01 15:29:43