Unable to marshall java.util.Calendar when Java Security Manager is enabled in JBoss EAP 6
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, tools, and much more.