You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2015/03/19 09:50:02 UTC

[03/28] struts git commit: change findBaseAccessor method

change findBaseAccessor method

in hibernate4.3.7,because javassist3.18.1's class name generate rule is '_$$_jvst'+...

Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/b8882758
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/b8882758
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/b8882758

Branch: refs/heads/master
Commit: b8882758036a1abe86c5405889410c55da958a80
Parents: 2433789
Author: aronshen <ss...@qq.com>
Authored: Tue Jan 20 11:54:10 2015 +0800
Committer: aronshen <ss...@qq.com>
Committed: Tue Jan 20 11:54:10 2015 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/struts2/json/JSONWriter.java  | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/b8882758/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java
----------------------------------------------------------------------
diff --git a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java
index fd9b844..dc53967 100644
--- a/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java
+++ b/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java
@@ -305,7 +305,18 @@ public class JSONWriter {
             } catch (Exception ex) {
                 LOG.debug(ex.getMessage(), ex);
             }
-        } else {
+            
+        //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;