2

我在 jsp 文件上有一个简单的表格:

<form:form method="POST" class="my-form" id="dummyExtDelSubmitForm" name="dummyExtDELSubmitForm"   action="/my-web/landingPage/showPage">               
 <input type="text" name="viewName" value="userRegistrationPage" >              
 <input type="submit" name="submitDummYForm" value="Submit" ></input>               
</form:form>

在 Spring MVC 控制器上,我有以下方法:

@RequestMapping(value = "/showPage", method = RequestMethod.POST)
public ModelAndView redirectToPage(@ModelAttribute("baseUserVO") BaseUserVO baseUserVO, HttpServletRequest request,Model model) throws BrownApplicationException {

 HttpSession session = request.getSession();

 if (baseUserVO != null && baseUserVO.getViewName()!=null) {
       return new ModelAndView("redirect:" + viewName, CommonConstants.MODEL, model);
     else{
       return new ModelAndView("redirect:/landingPage/home.brd", CommonConstants.MODEL, model);
 }
}

问题是当我提交表单时,有时会填充 BaseUserVO 对象,而大多数情况下不会。它在 Firefox 上运行良好,没有失败。我试图在提琴手中查看请求,以表单提交请求到 showPage 的形式,我没有看到参数,如果 viewName 不存在,则按照逻辑,然后重定向到landingPage/home,在以后的重定向中我做请参阅 viewName 参数。

BaseUserVO 的代码,它只是一个 POJO :

public class BaseUserVO {
    private Integer userMasterId;
    private String firstname;
    private String lastname;
    private Integer relationshipCode;
    private String relationshipName;
    private String userName;
    private String userDisplayName;
    private String viewName;
    private String wpoId;
    private String userType;

    public Integer getUserMasterId() {
        return userMasterId;
    }
... getter seetter for other attributes.

不知道是服务器端的问题还是客户端的问题,如有线索请回复。

谢谢,拉利特

4

1 回答 1

1

发现了问题,它和 IE 的自动身份验证问题(见下面的链接),虽然到目前为止还没有具体的解决方案,但有一些解决方法。

http://blogs.msdn.com/b/ieinternals/archive/2010/11/22/internet-explorer-post-bodies-are-zero-bytes-in-length-when-authentication-challenges-are-expected。 aspx?CommentPosted=true#commentmessage

于 2012-10-25T03:56:53.230 回答