私はWebサービスが初めてです。以下に示すように、サンプル Web サービスを開発しました。
データに新しいフィールドを追加しようとしています。ブール値の成功と言ってください。. (下位互換性を知るためだけに)
新しいフィールドを追加すると、予想どおり、クライアント スタブからのサービス呼び出しが失敗します。
異なるバージョンのサービスを維持するにはどうすればよいですか。私が持っているすべてのオプションは何ですか?
私はネット上で多くの記事を調べてきました (残念ながら、例はありません。:(). そして、いくつかのオプションは
1) 新しい出力を使用して、クラスに異なる操作を記述します。これはわかりました。
2) サービスのバージョン管理を行います。services/ version1 /SumAndMult、services/ version2 /SumAndMultと同様
2番目のオプションを達成するにはどうすればよいですか? このオプションの背後にあるアイデアは何ですか? サービスクラスのコピーを維持するには?
サーバーにサービス クラスが 1 つしかない場合、複数の wsdl を公開するにはどうすればよいですか?
また、下位互換性を維持する最善の方法は何ですか?
public Data getSumAndMultData(int[] input){
Data result = new Data();
int sum = 0;
int mult = 1;
for(int i = 0; i < input.length; i++){
sum += input[i];
mult *= input[i];
}
result.setMult(mult);
result.setSum(sum);
return result;
}
class Data{
int sum;
int mult;
public int getSum() {
return sum;
}
public void setSum(int sum) {
this.sum = sum;
}
public int getMult() {
return mult;
}
public void setMult(int mult) {
this.mult = mult;
}
}
として