我需要使用@SessionScope在刷新后使列表停留在页面中,但是当我使用它时,Stripes:错误不再是diplaying了。 Stripes:错误实际运行(因为我看不到任何事情会发生)但它只是不再显示页面中的错误消息。我确信@SessionScope有一些东西,因为当我运行没有它的代码时,页面中显示的所有错误。 关于如何解决这个问题的任何想法?
注意:我还尝试使用@Wizard(startEvents =“event”),它允许显示错误,但在页面中保存列表时没有做任何事情!
的java
@SessionScope
@UrlBinding("/Student/import.action")
public class ImportAction implements ActionBean {
private String userCheckBox;
public Resolution importStudents() throws IOException {
if (userCheckBox == null) {
this.getContext().getValidationErrors().add("userCheckBox",new SimpleError(error));
}
return new RedirectResolution("import.action");
}
public String getUserCheckBox() {
return userCheckBox;
}
public void setUserCheckBox(String userCheckBox) {
this.userCheckBox = userCheckBox;
}
}
JSP
<stripes:checkbox name="userCheckBox"/>
<stripes:errors field="userCheckBox"/>
<stripes:submit name="importStudents" value="Import"/>
答案 0 :(得分:0)
我不知道这是否是正确的方法,而不是使用@SessionScope如何直接通过子类ActionBeanContext将列表存储在会话中?例如,我的
public class IlmpActionBeanContext extends ActionBeanContext {
private static final String REQUEST_TOKEN = "request_token";
public Token getRequestToken() {
return (Token) this.getRequest().getSession()
.getAttribute(IlmpActionBeanContext.REQUEST_TOKEN);
}
public void setRequestToken(final Token requestToken) {
this.getRequest()
.getSession()
.setAttribute(IlmpActionBeanContext.REQUEST_TOKEN, requestToken);
}