struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vijay Srivastava (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (WW-4846) Not able to convert Spring object to the JSON response
Date Wed, 30 Aug 2017 18:26:00 GMT

    [ https://issues.apache.org/jira/browse/WW-4846?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16147752#comment-16147752
] 

Vijay Srivastava commented on WW-4846:
--------------------------------------

I thought about it. but this is not the only place where we are using request parameters conversion.
Actually we are migrating to struts 2.5 and this will create lot of changes. So do you see
any issue in parameter conversion ? ModelDrivenInterceptor is not working as intended ? please
advise.

thanks

> Not able to convert Spring object to the JSON response
> ------------------------------------------------------
>
>                 Key: WW-4846
>                 URL: https://issues.apache.org/jira/browse/WW-4846
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Core Results, Plugin - JSON
>    Affects Versions: 2.5.13
>            Reporter: Vijay Srivastava
>            Priority: Blocker
>
> Hi,
> I am using latest version of struts struts-2.5.12 and and spring 4.1 as advised. I am
having an issue in JSON response. There is an action class which is returning Spring request
scoped object as JSON response however I am getting error as below 
> ERROR ExceptionMappingInterceptor org.apache.struts2.json.JSONException: org.apache.struts2.json.JSONException:
org.apache.struts2.json.JSONException: org.apache.struts2.json.JSONException: org.apache.struts2.json.JSONException:
java.lang.reflect.InvocationTargetException
>  org.apache.struts2.json.JSONException: org.apache.struts2.json.JSONException: org.apache.struts2.json.JSONException:
org.apache.struts2.json.JSONException: org.apache.struts2.json.JSONException: org.apache.struts2.json.JSONException:
java.lang.reflect.InvocationTargetException
> 	at org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:269)
> 	at org.apache.struts2.json.JSONWriter.processCustom(JSONWriter.java:197)
> 	at org.apache.struts2.json.JSONWriter.process(JSONWriter.java:182)
> 	at org.apache.struts2.json.JSONWriter.value(JSONWriter.java:143)
> 	at org.
> Any idea what's wrong here ? I am using Java 1.8. I think below code in JSONWriter is
not working as expected
> protected Method findBaseAccessor(Class clazz, Method accessor) {
>         Method baseAccessor = null;
>         if (clazz.getName().contains("$$EnhancerByCGLIB$$")) {
>             try {
>                 baseAccessor = Thread.currentThread().getContextClassLoader().loadClass(
>                         clazz.getName().substring(0, clazz.getName().indexOf("$$"))).getMethod(
>                         accessor.getName(), accessor.getParameterTypes());
>             } catch (Exception ex) {
>                 LOG.debug(ex.getMessage(), ex);
>             }
>         } else if (clazz.getName().contains("$$_javassist")) {
>             try {
>                 baseAccessor = Class.forName(
>                         clazz.getName().substring(0, clazz.getName().indexOf("_$$")))
>                         .getMethod(accessor.getName(), accessor.getParameterTypes());
>             } catch (Exception ex) {
>                 LOG.debug(ex.getMessage(), ex);
>             }
>             
>         //in hibernate4.3.7,because javassist3.18.1's class name generate rule is '_$$_jvst'+...
>         } else if(clazz.getName().contains("$$_jvst")){
>             try {
>                 baseAccessor = Class.forName(
>                         clazz.getName().substring(0, clazz.getName().indexOf("_$$")))
>                         .getMethod(accessor.getName(), accessor.getParameterTypes());
>             } catch (Exception ex) {
>                 LOG.debug(ex.getMessage(), ex);
>             }
>         }
>         else {
>             return accessor;
>         }
>         return baseAccessor;
>     }



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message