SpringBootで Request-URI Too Large が出てしまった時のメモ

環境 SpringBoot 1.5.4 Apache 2.4 (リバースプロクシとして) 問題点 フォームをGETで送信してしまうと、(これ自体が問題なんですが) URLの文字数が1000文字を超えてしまうことがあります。その場合、題記のエラーが発生します。 本来は、アプリケーションを改修すべきですが、それまでの間に合わせとして設定変更で逃げる 場合の手法をメモします。 考え方 Request-URI Too Largeエラーを出す所は二箇所あります。 それぞれに対して設定の変更が必要です。 1. Apache...

SpringbootのErrorControllerにはPOSTの処理も必要

環境 Springboot 1.3.5 Java 8 やりたかったこと アプリ内の例外を補足してエラー画面に飛ばしたかった。 ハマったこと 参考URLのスライドを参考にして、ErrorControllerを実装したところ、GETで例外が発生した 場合は、想定通りエラー処理が行われるが、POST中に例外が起きるとエラー画面どころかTomcatのエラー画面 が表示された。 対策 @RequestMapping(value = PATH) public String errorGet(HttpServletRequest request,...

Thyemelafテンプレート内からSpringbootの設定値を取得する

動作確認環境 Springboot 1.3.5 使い方 <div th:text="${@environment.getProperty('my.setting')}"></div> 所感 今までこれを知らずに、わざわざControllerでModelに設定値をセットとかやっていたのでメモ。...

SpringBootの設定ファイルを外部化したい時

環境 SpringBoot 1.3.5 jarでデプロイ (warの場合はこの記事の対象外) どんな時に嬉しいか 開発中は、resources/application.yml を読んで欲しいが、本番時は運用者が設定ファイルを 変更する為に外だしのファイルになっていて欲しいという時。 何をするか 起動時のオプションを以下のように記述すればOK REM 適当に改行していますが、実際は一行で入力します java -jar -Dspring.config.location="...

SpringBoot使ってる場合はHttpSessionを@Autowiredできる

最初に 思いっきり勘違いして大騒ぎしたのでメモ Springboot 1.3.5 問題(ではなかった)コード 結論を先に言うと、このコードは想定通り動きます。 @Controller public class MenuController { @Autowired HttpSession session; @RequestMapping(value = "/", method = RequestMethod.GET) String...