1

actionSpring フォーム用に生成しようとすると、400 Bad Request エラーが発生します。

次の JS でアクティブなタブ インデックスを使用してアクションを生成しますonsubmit

function getActionFromTab(form, prefix) {
    form.action = prefix + getActiveTab() + ".html";
}

function getActiveTab() {
    return $('.nav-tabs .active').index();
} 

そして次のように使用されます:

...
<form:form commandName="foo" cssClass="form-horizontal"
                        onsubmit="getActionFromTab(this, '/profile/')">
...

return "/profile.html";...これは、コントローラーで見つかったものと失敗したものを交換するときに、アクションの設定に関しては正常に機能します。

@RequestMapping(value = "/profile", method = RequestMethod.POST)
public String addFoo(@ModelAttribute("foo") Foo foo, Principal principal) {
    ...
}

@RequestMapping(value = "/profile/{index}", method = RequestMethod.POST)
public String addBar(@ModelAttribute("bar") Bar bar, @PathVariable int index, 
        Principal principal) {
    ...
} 

しかし、URL にインデックスを追加すると、400 エラーがスローされます。

同じ方法で使用する他のページ、コントローラー、およびマッピングがありますが、それらはリクエスト@PathVariableではありません。POSTフォーム アクションを生成し、400 Bad Request エラーを回避する正しい方法は何ですか?

4

0 に答える 0