もの凄いピンポイントネタですが。
GrailsのController上ではServletContextが勝手に注入されてます。
Service上では注入されてません、そしてSpringBeanでもないので注入も出来ません。
なんか簡単にとる方法ないのかなーと思ってググったら「コントローラーから渡したらええんちゃうん?」みたいな答えしかなくてしょんぼり。
サービスだけで使いたいのよ、BlazeDSとかWebサービスとかさ。
で、grailsApplicationは注入可能なので、こっからたどって取得します。
def grailsApplication
で grailsApplication を注入して、そこからparentのcontextを取得し(SpringのXmlWebApplicationContext)、そこからServletContextがとれます。
def sc=grailsApplication.getParentContext().getServletContext()
やったね :D
0 件のコメント:
コメントを投稿