ここに私が思いつくことができる3つのアイデアがあります(コントローラーがどのように呼び出されているかを知ることができます)。 その1つ、またはそれらの組み合わせを試して、それが機能しているかどうか教えてください。
アイデア1: showDetails @RequestMapping注釈の場合は("VIEW")
を削除してください。 <portlet:actionURL/>
:あなたの呼び出しJSPはこのような何かを持っている場合
...
public class DetailsController {
@RequestMapping
public String showDetails(final ModelMap modelMap, final RenderRequest renderRequest) {
return "allDetails/details";
}
}
これは仕事ができるshowDetailsデフォルトはrenderメソッドをでしょう。
アイデア2: @RequestMappingメソッドアノテーションのアクションパラメータを指定します。
<portlet:actionURL ... >
<portlet:param name="action" value="viewDetails">
</portlet:actionURL>
アイデア3:はアクション・フェーズのための空のメソッドを追加し、あなたの呼び出しJSPはこのような何かを持っている場合
...
public class DetailsController {
@RequestMapping(params = "action=viewDetails")
public String showDetails(final ModelMap modelMap, final RenderRequest renderRequest) {
...
}
}
これは仕事ができます。あなたの呼び出しJSPはこのようなものがある場合、これは仕事ができる
...
public class DetailsController {
@RequestMapping(params = "action=viewDetails") // render phase
public String showDetails(final ModelMap modelMap, final RenderRequest renderRequest) {
...
}
...
// Empty method
@RequestMapping(params = "action=viewDetails") // action phase
public void actionMethod() {
}
}
:あなたのコントローラのコード(そしておそらくJSPの一部)を示す
<portlet:actionURL ... >
<portlet:param name="action" value="viewDetails">
</portlet:actionURL>
は、あなたが何をすべきか、JSPたくさん –
@Jerome Dalbertに役立つだろう"allDetails/details"にリダイレクトするものを見たいですか? –
コントローラーを呼び出すJSP(または何でも)の部分 –