我在这里使用 spring-mvc(3.2.4) 和 spring-webflow(2.3.2)。我定义这样的流程:
<flow>
<decision-state id="check">
<if test="signupFlowAction.checkPrecondition(messageContext)" then="firstState" else="error" />
</decision-state>
<view-state id="firstState">
...
</view-state>
<view-state id="error" view="error/bad-thing-happens">
...
</view-state>
我想在流程启动时检查一些业务前提条件,所以我使用 POJO 来执行此操作。
public boolean checkPrecondition(MessageContext messageContext) {
boolean oh_snap = true;
if (oh_snap) {
MessageResolver mr1 = new MessageBuilder().fatal().defaultText("fatal message here.").build();
MessageResolver mr2 = new MessageBuilder().error().defaultText("error message here.").build();
MessageResolver mr3 = new MessageBuilder().info().defaultText("info message here.").build();
messageContext.addMessage(mr1);
messageContext.addMessage(mr2);
messageContext.addMessage(mr3);
}
return ! oh_snap;
}
这段代码很好,但我不知道如何在 jsp 中显示消息。春天的标签库没有工作?我试过<spring:error path="*"/>
什么都没发生。