Ok that sounds like the way to go! I won't post a feature request in JIRA then.
I noticed that it was plugged onto into the CI properly while browsing
the code too, and I suppose it will be necessary.

Well, right now I can work around the issue with excludeProperties parameter...

Keep up the good work!

2011/1/28 Maurizio Cucchiara <maurizio.cucchi...@gmail.com>:
> At first glance it seems related with [1].
> I'm working on that. I'd like to integrate type conversion support inside
> json plugin, but it's not easy (in many place the json plugin doesn't use
> dependency injection provided by struts, use static method and utility
> class).
>
> [1] https://issues.apache.org/jira/browse/WW-3524
>
> Maurizio Cucchiara
>
> On Jan 28, 2011 12:48 PM, "Leonard Broman" <leonard.bro...@gmail.com> wrote:
> Hi
>
> I came across an issue with the JSON plugin today. Having the plugin
> serialize a field of type LocalDate (from joda-time) I get the error
> further down.
> I dug into the code and asked around att google and this kind of issue
> arises every now and then when developers try to serialize their
> business objects and everything. The solution for them is to use
> annotations to prevent this from happening. The LocalDate object
> however is a data object that should easily be serializable, and I
> didn't really dig more into why this happens as I realized the problem
> is too general to be dealt with as a bug perhaps.
> Now, for the usual html views to render and forms to submit correctly
> I have a fairly simple TypeConverter for the joda-time class in
> question and i was considering why this isn't used in the json-plugin.
>
> Does it sound like a good idea to add this feature to the json-plugin
> or is there a reason why it has not been done this way?
> If it is wise, I'll make post a suggestion in jira.
>
> Oh, and here's the massive stacktrace for those who are curious:
>
> Struts has detected an unhandled exception:
> Messages:
>
>  1. Class org.apache.struts2.json.JSONWriter can not access a member
> of class org.joda.time.DateTimeFieldType$StandardDateTimeFieldType
> with modifiers "public"
>  2. java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>  3. org.apache.struts2.json.JSONException:
> java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>  4. org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>  5. org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>
> File:   sun/reflect/Reflection.java
> Line number:    65
> Stacktraces
> org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:250)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.write(JSONWriter.java:98)
>   org.apache.struts2.json.JSONUtil.serialize(JSONUtil.java:112)
>   org.apache.struts2.json.JSONResult.execute(JSONResult.java:198)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:373)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:277)
>
>  org.apache.struts2.json.JSONInterceptor.intercept(JSONInterceptor.java:179)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.annotations.AnnotationWorkflowInterceptor.intercept(AnnotationWorkflowInterceptor.java:135)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)
>
>  org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.LocalizationInterceptor.intercept(LocalizationInterceptor.java:58)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.JsonDetectorInterceptor.intercept(JsonDetectorInterceptor.java:63)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>
>  org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)
>
>  org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter.doFilter(StrutsExecuteFilter.java:88)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter.doFilter(StrutsPrepareFilter.java:82)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
>
>  org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>
>  org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:514)
>
>  org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:920)
>   org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
>
>  org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>
>  org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:247)
>
>  org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:151)
>
>  org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
>   org.eclipse.jetty.server.Server.handle(Server.java:352)
>
>  org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
>
>  org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1049)
>   org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
>   org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
>   org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
>
>  org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
>   java.lang.Thread.run(Thread.java:619)
>
>
> org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:250)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.array(JSONWriter.java:425)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:154)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.write(JSONWriter.java:98)
>   org.apache.struts2.json.JSONUtil.serialize(JSONUtil.java:112)
>   org.apache.struts2.json.JSONResult.execute(JSONResult.java:198)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:373)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:277)
>
>  org.apache.struts2.json.JSONInterceptor.intercept(JSONInterceptor.java:179)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.annotations.AnnotationWorkflowInterceptor.intercept(AnnotationWorkflowInterceptor.java:135)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)
>
>  org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.LocalizationInterceptor.intercept(LocalizationInterceptor.java:58)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.JsonDetectorInterceptor.intercept(JsonDetectorInterceptor.java:63)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>
>  org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)
>
>  org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter.doFilter(StrutsExecuteFilter.java:88)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter.doFilter(StrutsPrepareFilter.java:82)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
>
>  org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>
>  org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:514)
>
>  org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:920)
>   org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
>
>  org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>
>  org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:247)
>
>  org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:151)
>
>  org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
>   org.eclipse.jetty.server.Server.handle(Server.java:352)
>
>  org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
>
>  org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1049)
>   org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
>   org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
>   org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
>
>  org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
>   java.lang.Thread.run(Thread.java:619)
>
>
> org.apache.struts2.json.JSONException:
> org.apache.struts2.json.JSONException:
> java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:250)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.array(JSONWriter.java:425)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:154)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.write(JSONWriter.java:98)
>   org.apache.struts2.json.JSONUtil.serialize(JSONUtil.java:112)
>   org.apache.struts2.json.JSONResult.execute(JSONResult.java:198)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:373)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:277)
>
>  org.apache.struts2.json.JSONInterceptor.intercept(JSONInterceptor.java:179)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.annotations.AnnotationWorkflowInterceptor.intercept(AnnotationWorkflowInterceptor.java:135)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)
>
>  org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.LocalizationInterceptor.intercept(LocalizationInterceptor.java:58)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.JsonDetectorInterceptor.intercept(JsonDetectorInterceptor.java:63)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>
>  org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)
>
>  org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter.doFilter(StrutsExecuteFilter.java:88)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter.doFilter(StrutsPrepareFilter.java:82)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
>
>  org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>
>  org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:514)
>
>  org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:920)
>   org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
>
>  org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>
>  org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:247)
>
>  org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:151)
>
>  org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
>   org.eclipse.jetty.server.Server.handle(Server.java:352)
>
>  org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
>
>  org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1049)
>   org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
>   org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
>   org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
>
>  org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
>   java.lang.Thread.run(Thread.java:619)
>
>
> org.apache.struts2.json.JSONException:
> java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:250)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.array(JSONWriter.java:456)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:152)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.array(JSONWriter.java:425)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:154)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.write(JSONWriter.java:98)
>   org.apache.struts2.json.JSONUtil.serialize(JSONUtil.java:112)
>   org.apache.struts2.json.JSONResult.execute(JSONResult.java:198)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:373)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:277)
>
>  org.apache.struts2.json.JSONInterceptor.intercept(JSONInterceptor.java:179)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.annotations.AnnotationWorkflowInterceptor.intercept(AnnotationWorkflowInterceptor.java:135)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)
>
>  org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.LocalizationInterceptor.intercept(LocalizationInterceptor.java:58)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.JsonDetectorInterceptor.intercept(JsonDetectorInterceptor.java:63)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>
>  org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)
>
>  org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter.doFilter(StrutsExecuteFilter.java:88)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter.doFilter(StrutsPrepareFilter.java:82)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
>
>  org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>
>  org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:514)
>
>  org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:920)
>   org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
>
>  org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>
>  org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:247)
>
>  org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:151)
>
>  org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
>   org.eclipse.jetty.server.Server.handle(Server.java:352)
>
>  org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
>
>  org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1049)
>   org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
>   org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
>   org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
>
>  org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
>   java.lang.Thread.run(Thread.java:619)
>
>
> java.lang.IllegalAccessException: Class
> org.apache.struts2.json.JSONWriter can not access a member of class
> org.joda.time.DateTimeFieldType$StandardDateTimeFieldType with
> modifiers "public"
>
>   sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
>   java.lang.reflect.Method.invoke(Method.java:588)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:234)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.array(JSONWriter.java:456)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:152)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.array(JSONWriter.java:425)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:154)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.add(JSONWriter.java:336)
>   org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:235)
>   org.apache.struts2.json.JSONWriter.process(JSONWriter.java:164)
>   org.apache.struts2.json.JSONWriter.value(JSONWriter.java:130)
>   org.apache.struts2.json.JSONWriter.write(JSONWriter.java:98)
>   org.apache.struts2.json.JSONUtil.serialize(JSONUtil.java:112)
>   org.apache.struts2.json.JSONResult.execute(JSONResult.java:198)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:373)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:277)
>
>  org.apache.struts2.json.JSONInterceptor.intercept(JSONInterceptor.java:179)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.annotations.AnnotationWorkflowInterceptor.intercept(AnnotationWorkflowInterceptor.java:135)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)
>
>  org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166)
>
>  com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.LocalizationInterceptor.intercept(LocalizationInterceptor.java:58)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  net.teliasonera.roaming.web.interceptor.JsonDetectorInterceptor.intercept(JsonDetectorInterceptor.java:63)
>
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
>
>  org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>
>  org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)
>
>  org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter.doFilter(StrutsExecuteFilter.java:88)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
>
>  com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter.doFilter(StrutsPrepareFilter.java:82)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
>
>  org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>
>  org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
>
>  org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>
>  org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:514)
>
>  org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:920)
>   org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
>
>  org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184)
>
>  org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856)
>
>  org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>
>  org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:247)
>
>  org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:151)
>
>  org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
>   org.eclipse.jetty.server.Server.handle(Server.java:352)
>
>  org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
>
>  org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1049)
>   org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
>   org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
>   org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
>
>  org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
>
>  org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
>   java.lang.Thread.run(Thread.java:619)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
> For additional commands, e-mail: dev-h...@struts.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
For additional commands, e-mail: dev-h...@struts.apache.org

Reply via email to