3

ビルド サーバーの統合のために Atlassian Stash プラグインをフォークしました。このプラグインは、データの保存に ActiveObjects コンポーネントを使用します。次の問題があります。

他のフィールドに従って、このように OneToMany フィールドにゲッターとセッターを追加すると

@OneToMany
TestMapping[] getTestMapping();
void setTestMapping(TestMapping[] powerMappings);

エンティティを使用すると、次の例外が発生します。

[INFO] [talledLocalContainer] Caused by: java.lang.RuntimeException: Unrecognized type: [Lsome.package.TestMapping;
[INFO] [talledLocalContainer]   at net.java.ao.types.TypeManager.getType(TypeManager.java:68) ~[na:na]
[INFO] [talledLocalContainer]   at net.java.ao.schema.SchemaGenerator.getSQLTypeFromMethod(SchemaGenerator.java:481) ~[na:na]

問題をグーグルで検索すると、この投稿で提案されているようにセッターを削除する解決策しか見つかりませんでした。ただし、構成が既に存在する場合は、フィールドを設定する可能性がなくなります。ActiveObject を削除して新しいものを保存することは、ここに行く方法ではないと思います。

この問題を解決するにはどうすればよいですか? または、可能でない場合、ActiveObjects でセッターを使用せずに既存のオブジェクトを更新する方法は?

4

1 に答える 1