You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jl...@apache.org on 2016/12/03 16:56:01 UTC

[07/50] tomee git commit: TOMEE-1790 allow primitive arrays

TOMEE-1790 allow primitive arrays


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

Branch: refs/heads/tomee-1.7.x
Commit: b5565845960c518c9e53306f16cb6736c267677e
Parents: eb2933f
Author: Jonathan Gallimore <jo...@jrg.me.uk>
Authored: Fri Apr 29 14:11:11 2016 +0100
Committer: Jonathan Gallimore <jo...@jrg.me.uk>
Committed: Fri Apr 29 14:11:11 2016 +0100

----------------------------------------------------------------------
 .../apache/openejb/core/rmi/BlacklistClassResolver.java   | 10 ++++++++++
 1 file changed, 10 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/b5565845/container/openejb-core/src/main/java/org/apache/openejb/core/rmi/BlacklistClassResolver.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/core/rmi/BlacklistClassResolver.java b/container/openejb-core/src/main/java/org/apache/openejb/core/rmi/BlacklistClassResolver.java
index 134db76..0b726d7 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/core/rmi/BlacklistClassResolver.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/core/rmi/BlacklistClassResolver.java
@@ -17,6 +17,7 @@
 package org.apache.openejb.core.rmi;
 
 import java.io.ObjectStreamClass;
+import java.util.regex.Pattern;
 
 public class BlacklistClassResolver {
     public static final BlacklistClassResolver DEFAULT = new BlacklistClassResolver(
@@ -25,6 +26,9 @@ public class BlacklistClassResolver {
             "org.codehaus.groovy.runtime.,org.apache.commons.collections.functors.,org.apache.xalan,java.lang.Process")),
         toArray(System.getProperty("tomee.serialization.class.whitelist")));
 
+
+    public static final Pattern PRIMITIVE_ARRAY = Pattern.compile("^\\[+[BCDFIJSVZ]$");
+
     private final String[] blacklist;
     private final String[] whitelist;
 
@@ -34,6 +38,12 @@ public class BlacklistClassResolver {
     }
 
     protected boolean isBlacklisted(final String name) {
+
+        // allow primitive arrays
+        if (PRIMITIVE_ARRAY.matcher(name).matches()) {
+            return false;
+        }
+
         if (name != null && name.startsWith("[L") && name.endsWith(";")) {
             return isBlacklisted(name.substring(2, name.length() - 1));
         }