0

これが春に関連しているかどうかはよくわかりません:D

私はフォームを持っています:

<form class="csvForm" method="post" action="/admin/myentity/bulkUpload" style="display: none;">

そして私はコントローラーを持っています:

@RequestMapping("/" + AdminMyController.SECTION_KEY)
@Secured("PERMISSION_OTHER_DEFAULT")
public class AdminMyController extends AdminBasicEntityController {
    protected static final String SECTION_KEY = "myentity";

@RequestMapping(value = "/bulkUpload", method = RequestMethod.POST)
public String showBulkUpload(HttpServletRequest request, HttpServletResponse response, Model model) throws IOException {
  Map<String, Object> responseMap = new HashMap<String, Object>();

  return "sts";
  }
}

メソッドをGETに変更したときに、なぜshowBulkUploadメソッドに入らないのか疑問に思っています..メソッドに入る..何を見逃したのだろうか

ところで、コントローラ Bean は 100% スキャンされるため、問題はありません。

4

2 に答える 2

0

これは Spring に多少関連していますが、Broadleaf の CsrfFilter に固有のものです。CsrfFilter からのログにスタック トレースがあると推測します。このフィルター (Broadleaf の applicationContext-security.xml に接続) は、すべての POST 要求に csrfToken 要求パラメーターがあることを保証します (CSRF は Cross Site Request Forgery を表します)。投稿したスニペットを置き換える場合:

<form class="csvForm" method="post" action="/admin/myentity/bulkUpload" style="display: none;">

blc:form Thymeleaf プロセッサー (csrfToken 非表示の入力パラメーターを自動的に入力する) を HTML に使用する場合:

<blc:form class="csvForm" method="post" action="/admin/myentity/bulkUpload" style="display: none;">

その後、動作するはずです。

于 2014-05-13T18:58:38.093 に答える