BlazeDSは、ゲッターとセッターの両方を持たない限り、プロパティをシリアル化しません。しかし、私のJavaプロパティの多くは読み取り専用です。したがって、私はアンマーシャリングプロセスをサポートするセッターを追加する必要があります。これらのドメインオブジェクトのユーザーのいずれかがこれらのセッターの呼び出しを開始すると、これらのオブジェクトのバリューオブジェクトの意味が破られ、あらゆる種類のシステム問題が発生する可能性があります。不要なBlazeDS&JPAのJavaプロパティーセッターの作成を停止するにはどうすればいいですか?
私は過去にJPAの特定の側面をサポートするために多くのことをしなければなりませんでした。これは、JPAアノテーションをプライベートフィールドではなくプロパティに置くためです(別の問題を回避するため)。
自分自身や他人に警告するためにJavadocを使用する以外に、プログラマは何をするべきですか?
編集:これらの余分なセッターは、これらのオブジェクトが実装するパブリックインターフェイスの一部ではありませんが、それでもなお存在します。
"これは私たちのJPAアノテーションをプライベートフィールドではなくプロパティに置いたからです(別の問題を避けるためです)" - もう1つの問題は何ですか? –
問題は、型でJavaジェネリックを使用していたマップされたスーパークラスのプライベートフィールドでした(例えば、 'private list myProp;')。 http://stackoverflow.com/questions/2808251/how-to-handle-jpa-annotations-for-a-pointer-to-a-generic-interfaceこれらの宣言は、JPA注釈をサポートしていません。 –
HDave