ELResolver
Google App Engine プロジェクトのカスタムを登録する必要があります。
Javadoc で指定されているように、リクエストを受信する前に登録する必要があるため:
アプリケーションがクライアントからリクエストを受け取った後に ELResolver を登録することは違法です。それ以降に ELResolver を登録しようとすると、IllegalStateException がスローされます。
私は ServletContextListener を使用しています:
public class RegisterCustomELResolver implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
ServletContext context = sce.getServletContext();
JspApplicationContext jspContext =
JspFactory.getDefaultFactory().getJspApplicationContext(context);
jspContext.addELResolver(new MyELResolver());
}
...
}
問題は、JspFactory.getDefaultFactory()
常に null を返すことです。私はすでにバグレポートを記入しました。回避策はありますか?