Unable to marshall java.util.Calendar when Java Security Manager is enabled in JBoss EAP 6

Solution Verified - Updated -

Issue

Failed to marshall EJB parameters

We are trying to invoke a method with a Calendar parameter, but throws the following error:

Caused by: java.lang.RuntimeException: JBAS014154: No logró organizar los parámetros EJB
  • With the security manager enabled, we are unable to call an EJB with a java.util.Calendar object, even when AllPermission is set.
-Djava.security.manager -Djava.security.policy=/home/jboss-eap-6.2/bin/security.policy 
grant {
 permission java.security.AllPermission;
};

The exception is:

java.security.AccessControlException: access denied ("java.io.SerializablePermission" "enableSubclassImplementation")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:372) [rt.jar:1.7.0_51]
at java.security.AccessController.checkPermission(AccessController.java:559) [rt.jar:1.7.0_51]
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) [rt.jar:1.7.0_51]
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:322) [rt.jar:1.7.0_51]
at org.jboss.marshalling.MarshallerObjectInputStream.<init>(MarshallerObjectInputStream.java:49)
at org.jboss.marshalling.cloner.SerializingCloner$StepObjectInputStream.<init>(SerializingCloner.java:583)
at org.jboss.marshalling.cloner.SerializingCloner.initSerializableClone(SerializingCloner.java:307)
at org.jboss.marshalling.cloner.SerializingCloner.clone(SerializingCloner.java:249)
at org.jboss.marshalling.cloner.SerializingCloner.clone(SerializingCloner.java:129)
at org.jboss.marshalling.cloner.SerializingCloner$StepObjectInput.doReadObject(SerializingCloner.java:834)
at org.jboss.marshalling.AbstractObjectInput.readObject(AbstractObjectInput.java:45)
at org.jboss.marshalling.MarshallerObjectInputStream.readObjectOverride(MarshallerObjectInputStream.java:57)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:364) [rt.jar:1.7.0_51]
at java.util.Calendar$1.run(Calendar.java:2791) [rt.jar:1.7.0_51]
at java.util.Calendar$1.run(Calendar.java:2789) [rt.jar:1.7.0_51]
at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_51]
at java.util.Calendar.readObject(Calendar.java:2788) [rt.jar:1.7.0_51]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_51]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_51]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_51]
at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_51]
at org.jboss.marshalling.reflect.SerializableClass.callReadObject(SerializableClass.java:311)
at org.jboss.marshalling.cloner.SerializingCloner.initSerializableClone(SerializingCloner.java:299)
at org.jboss.marshalling.cloner.SerializingCloner.initSerializableClone(SerializingCloner.java:281) 

Environment

  • Red Hat JBoss Enterprise Application Platform (EAP)
    • 6.2.x
    • 6.3.0

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.