繁体   English   中英

Spring MVC请求参数

[英]Spring MVC Request Param

我有一个表单形式为j_security_check的登录页面。 到目前为止,此表单只有两个字段,即用户名和密码。 我想向此表单添加新的下拉列表,并使用@RequestParam收集控制器中的选定值。 由于某种原因,我无法将此下拉值从JSP传递到控制器,因为它exception: MissingServletRequestParameterExceptionexception: MissingServletRequestParameterException (在缺少请求参数的任何时间发生)。
在下面的代码中,我添加了Visuals下拉列表。 我需要在这里使用Spring:Bind标签吗? 同样在成功登录后,该控件将被定向到具有请求映射/controller1.html的控制器,这是我尝试收集下拉值的地方。

<form name="appLogin" action="j_security_check" method="POST">

<table width="100%">
    <tr>
        <td align="center">

        <table>
            <tr>
                <td>Username: </td>
                <td><input id="userName" name="j_username" value=""/></td>
            </tr>
            <tr>
                <td>Password: </td>
                <td><input name="j_password" type="password" value="" /></td>
            </tr>

                <tr>
                <td>Visual: </td>
                <td><Select name="visuals" id="visuals"/>
                      <option value="S1">S1</option>
                      <option value="S2">S2</option>
                      <option value="S3">S3</option>
                      <option value="S4">S4</option>
                    </Select>
                </td>
            </tr>

        </table>

        <table>
            <tr>
                <td>
                <button type="submit" name="submit" value="Sign In">Sign In</button>
                <input type="submit"/>
                </td>
            </tr>
        </table>
        </div>
        </div>
        </td>
    </tr>
</table>
</form>

控制器代码:

 @RequestMapping( value = " /controller1.html", method = RequestMethod.GET )
    public String setupForm( @RequestParam(value = "visuals", required=false) String visuals,
            ModelMap model )
    {
        List<String> studentNames = new ArrayList<String>();
        List<String> teacherNames = new ArrayList<String>();


         model.addAttribute("someData", teacherNames);
         model.addAttribute("anotherData", studentNames);

        model.addAttribute("visuals", visuals);

        log.info("Role from Dropdown:  " + visuals);

        return "school/classTen";
    }

您需要通过扩展AbstractAuthenticationProcessingFilter来创建自己的过滤器

我没有完整的代码,但是以下文章可以为您提供帮助:

http://mark.koli.ch/2010/07/spring-3-and-spring-security-setting-your-own-custom-j-spring-security-check-filter-processes-url.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM