BETA

@ModelAttributeを2つ受け取れない問題

投稿日:2018-12-28
最終更新:2018-12-28

SpringMVCのアノテーション、@ModelAttributeを使いこなせなかった。気が向いたら助けてください。

前提

クライアントサイドは、言語がJavaScript、フレームワークにBackbone.js/Marionette.jsを使用している。
(そのうち時間とってコードも載せます…)

@ModelAttributeの動き

クライアントサイドからAPIをたたきに行く際にJsonデータを渡し、サーバサイドで受け取る際の引数に@ModelAttribute ModelName modalのように指定すると、カラム名からよしなに判別して値をつめてくれるっぽい。
ちなみに、期待するデータがこなかった場合は、よしなに初期化されたモデルクラスを用意してくれる。

やりたいこと

項目数が多いため、項目1つずつを渡して受け取ってなんてしたくない…。
そこで、@ModelAttributeを用いてクライアントサイドからモデル2つ分を渡したい!

やってみたこと

確認したのはここらへん
・JSで変数につめた値
・送信時のヘッダーストリング
・サーバ側で受け取ったはずの値
ログを仕込んで地道に確認したところ、クライアントサイドから正しいデータを渡せているが、サーバサイドで正しく受け取れていない
ちなみにそれぞれ一つずつ渡してみると、ちゃんと受け取れている。

2つ渡そうとしているのが問題?

ということで、そもそも2つ渡さんで良いという結論に達したこともあり、この件は解決(?)した。
(不要にいくつものデータを受け渡すような実装がダサいという感覚は持っているが、レガシーコードのストコンリプレースをパイロットでやってたので、仕方い部分も)

そしてモヤモヤが残りましたとさ…。
どなたか知ってる人いたら教えてください。

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

@ochocoの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう