Object[] から Collection への変換に java.util.Arrays.asList() API を使用している場合、JDK はクローン可能ではない java.util.ArrayList の実装を返します。結果として次の例外が発生します。
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 |
この問題は、https://glassfish.dev.java.net/issues/show_bug.cgi?id=556 で説明されています。
別のコレクションをそのコンストラクタを使用して作成します。一例として、次のようにします。
myCollection = new ArrayList(java.util.Arrays.asList(a)) |