1
厳密にストライプでUrlBindingを実現できますか? 厳密は、空のイベント以外の未定義イベントのデフォルトのハンドラがないことを意味します。ストライプの厳密なURLバインド
/hello -> DefaultHandler -> currentDate()
/hello/currentDate -> currentDate()
/hello/randomDate -> randomDate()
/hello/* -> DefaultHandler (I want a 404)
問題は、自動的にデフォルトのハンドラであるため、1つのイベントにのみ存在します。 以下のコードは、Stripes本から取られています。
@UrlBinding("/hello/{$event}")
public class HelloActionBean implements ActionBean {
private static final String VIEW = "/WEB-INF/jsp/hello.jsp";
private ActionBeanContext ctx;
public ActionBeanContext getContext() {
return ctx;
}
public void setContext(ActionBeanContext ctx) {
this.ctx = ctx;
}
private Date date;
public Date getDate() {
return date;
}
@DefaultHandler
public Resolution currentDate() {
date = new Date();
return new ForwardResolution(VIEW);
}
public Resolution randomDate() {
long max = System.currentTimeMillis();
long random = new Random().nextLong() % max;
date = new Date(random);
return new ForwardResolution(VIEW);
}
}