Si se utiliza el API java.util.Arrays.asList() para convertir un Object[] en Collection, JDK devuelve una implementación de java.util.ArrayList que no es clonable. Esto produce la siguiente excepción:
The method invocation of the method [protected native java.lang.Object java.lang.Object.clone() throws java.lang.CloneNotSupportedException] on the object [[pkg.A id = xxx]], of class [class java.util.Arrays$ArrayList], triggered an exception. Internal Exception: java.lang.reflect.InvocationTargetException Target Invocation Exception: java.lang.CloneNotSupportedException: java.util.Arrays$ArrayList |
El problema está registrado en https://glassfish.dev.java.net/issues/show_bug.cgi?id=556.
Crear otra colección utilizando su constructor; por ejemplo:
myCollection = new ArrayList(java.util.Arrays.asList(a)) |
Si intenta insertar una entidad que utiliza GenerationType.IDENTITY se produce un error si se usa el controlador DataDirect con SyBase. El intento falla porque el controlador DataDirect crea un procedimiento almacenado para cada declaración preparada con parámetros.
En el archivo domain.xml establezca la propiedad PrepareMethod=direct en la fuente de datos correspondiente.