首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >条带UrlBinding -参数在提交时消失

条带UrlBinding -参数在提交时消失
EN

Stack Overflow用户
提问于 2012-08-29 16:26:26
回答 2查看 1.8K关注 0票数 1

我在所有的actionbean上都使用URL绑定,其中一些需要一个参数,例如/admin/users/123。

以这个URL为例,在我的actionbean中,我能够获得参数123并很好地显示用户信息。同一页面允许更改用户信息,这就是问题所在。

在提交更新的用户信息时,URL变为/admin/users。

这是一个问题,因为调用context.getRequest().getRequestURL()会返回/admin/users而不是/admin/users/123。

我认为这是由于标签在jsp中的编写方式:

代码语言:javascript
复制
<stripes:form beanclass="com.name.ui.web.stripes.action.admin.UserActionBean">...</stripes:form>

它解析为

代码语言:javascript
复制
<form action="/admin/users" method="post">...</form>

相应的actionbean是这样编码和注释的:

代码语言:javascript
复制
@UrlBinding("/admin/users/{userId}")
public class UserActionBean{ 
  private long userId;
  public long getUserId(){return userId;}
  public void setUserId(long userId){this.userId=userId;}
}

有没有人遇到过同样的问题并设法解决了?

EN

回答 2

Stack Overflow用户

发布于 2012-09-11 20:20:49

作为Martin Walsh编写的Stripes邮件列表中的answered,您可以在<stripes:form>中使用<stripes:param>标记。我要补充的是,在post后执行重定向(或Post/Redirect/Get)也允许您返回到/admin/users/123URL。

票数 3
EN

Stack Overflow用户

发布于 2013-01-16 05:54:59

即使您没有使用JSP (在我的例子中我使用的是Velocity),您仍然可以显式地将id (123)放在请求中并转发,或者您可以像Frank指出的那样在post之后重定向。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12173702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档