できれば JAX-B を使用して、Web サービスから XML として公開したい POJO があります。
XML で公開する必要があるフィールドは、リクエストを行っているユーザーのタイプによって異なります。たとえば、HumanResources および Finance ユーザーの役割があります。ユーザーは次のように定義できます。
@XmlRootElement
パブリック クラス ユーザー {
@XmlElement public String someHumanResourceData;
@XmlElement public String someFinanceData;
}
HR ユーザーには HR データを表示し、Finance には Finance データを表示したいのですが、それ以上は何もありません。HR は財務データを表示しないようにする必要があります。
これを行う方法について推奨されるアプローチはありますか? Web でより多くの情報を検索するために使用できる検索用語は何ですか?
魅力的とは思えないいくつかのアイデア: 1) サブクラス化を使用して、関連データのみを持つ FinanceUser と HumanResourceUser と、共有データを持つ親 User を公開できます。ただし、これは壊れやすく、小さな例で機能する可能性があります。生産には、より柔軟で構成的なアプローチが必要だと感じています。2) ある同僚が「ショッピング カート」アプローチを推奨しています。このアプローチでは、クライアントは要求ごとに必要なフィールドを要求します。私はこれを行う標準的な方法を見つけていないか、このアプローチを行った他の多くの人々でさえ見つけていません。それは私にとって本当に自家製で労働集約的なものに聞こえます。
他のアイデアはありますか?