もう一度環境作って再現させた。
java.lang.NullPointerException at t2cdi.RequestData_$$_javassist_39.toString(RequestData_$$_javassist_39.java) at java.lang.String.valueOf(String.java:2826) at java.lang.StringBuilder.append(StringBuilder.java:115) at org.t2framework.commons.util.PrintableUtil.toPrintableString(PrintableUtil.java:56) at org.t2framework.t2.action.impl.ActionInvokerFilterImpl.logInvokeAction(ActionInvokerFilterImpl.java:188) at org.t2framework.t2.action.impl.ActionInvokerFilterImpl.logInvokeAction(ActionInvokerFilterImpl.java:195) at org.t2framework.t2.action.impl.ActionInvokerFilterImpl.invokeAction(ActionInvokerFilterImpl.java:135) at org.t2framework.t2.action.impl.ActionInvokerFilterImpl.invoke(ActionInvokerFilterImpl.java:117) at org.t2framework.t2.action.impl.ActionFilterChainImpl.invokeChain(ActionFilterChainImpl.java:108) at org.t2framework.t2.action.impl.ActionArgumentsPreparationFilterImpl.invoke(ActionArgumentsPreparationFilterImpl.java:78) at org.t2framework.t2.action.impl.ActionFilterChainImpl.invokeChain(ActionFilterChainImpl.java:108) at org.t2framework.t2.action.impl.PageCreationFilterImpl.invoke(PageCreationFilterImpl.java:89) at org.t2framework.t2.action.impl.ActionFilterChainImpl.invokeChain(ActionFilterChainImpl.java:108) at org.t2framework.t2.action.impl.ExceptionHandlerActionFilterImpl.invoke(ExceptionHandlerActionFilterImpl.java:79) at org.t2framework.t2.action.impl.ActionFilterChainImpl.invokeChain(ActionFilterChainImpl.java:108) at org.t2framework.t2.action.impl.ActionInvokerImpl.invoke(ActionInvokerImpl.java:121) at org.t2framework.t2.filter.T2Filter.invokeAction(T2Filter.java:253) at org.t2framework.t2.filter.T2Filter.doFilter(T2Filter.java:214) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97) at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185) at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:332) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:233) at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165) at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791) at com.sun.grizzly.comet.CometEngine.executeServlet(CometEngine.java:473) at com.sun.grizzly.comet.CometEngine.handle(CometEngine.java:341) at com.sun.grizzly.comet.CometAsyncFilter.doFilter(CometAsyncFilter.java:84) at com.sun.grizzly.arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:161) at com.sun.grizzly.arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:137) at com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:88) at com.sun.grizzly.http.TaskBase.run(TaskBase.java:189) at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330) at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309) at java.lang.Thread.run(Thread.java:619)
ちなみにこの例外の直後にちゃんとrequestScopeのFormを破棄している。ただし、その後のインスタンスの取得で失敗するようになるが。
アクションの中でインスタンス取得する記述をするとまったく問題ないことがすごく気になる。フォームのインスタンス取得タイミングとアクション実行とでなんか大きい違いがあるのかな。
pluginもやってみようかと思ったが、資料が無くて無理だった。