【发布时间】:2011-07-22 18:03:00
【问题描述】:
我将Tuckey UrlRewrite 与 Struts2 应用程序结合使用。
我正在尝试转换以下网址:
/promotions/abcdef-987 到 /dopromotions/detail 将变量 id 传递为 987。
我的重写规则如下:
<rule>
<from>^/(promoties|promotions)/([0-9a-zA-Z\-_]+)-([0-9]+)$</from>
<set type="parameter" name="id">$3</set>
<to>/dopromotions/detail</to>
</rule>
我的 Struts2 Action 有以下 getter 和 setter:
private Integer id;
public void setId(Integer id){
this.id = id;
}
public Integer getId(Integer id){
return id;
}
但是,变量永远不会被输入。调试时,在参数或属性范围内的任何地方都找不到id。
我已尝试删除 type="parameter"。这会将id 置于属性范围内,但不会将其输入到我的变量Integer id 中。
【问题讨论】:
-
顺便提一下:这种方法确实有效,但是在使用 Maven 时要小心。 Maven 仅包含最新版本 3.1,而
方法从 3.2 开始实现
标签: java url-rewriting struts2 tuckey-urlrewrite-filter