0

2 つのサーバー側の独立したモジュール (A と B) を開発しています。

B はクライアントとして A と対話します。ここまでは順調ですね。

問題は、B でスタブを生成すると、Netbeans が別のパッケージでクラスを生成し、同じクラスが残りのクラスと互換性がなくなることです (それらは同じクラスですが)。

public RegistryResponseType documentRepositoryProvideAndRegisterDocumentSetB(ProvideAndRegisterDocumentSetRequestType body) 
{
    oasis.names.tc.ebxml_regrep.xsd.rim._3.SubmissionObjectRequest receivedObj body.getSubmitObjectsRequest();
    pt.ieeta.xadi.core.SubmitObjectsRequest stubObj = handleSubmissionObject(receivedObj);
}

現在、メソッドを使用してオブジェクトを翻訳しています(ただし、それらは同じクラスですが、異なるプロセスで生成されます):

pt.ieeta.xadi.core.SubmitObjectsRequest stubObj = handleSubmissionObject(receivedObj);

これを行う簡単な方法があるに違いありません。

誰でも私を助けることができますか?

よろしくお願いします。JAX-WS初心者で申し訳ありません;)

4

1 に答える 1

0

wsdl から始めてクラスを生成していると仮定すると... 2 つの別々のプロセスでクラスを生成しないでください。生成されたコードを含む 3 番目のプロジェクトをセットアップします (それ以外は何も含みません)。次に、他の 2 つのプロジェクトは、プロジェクトの依存関係として、または jar を生成して共通のアーティファクトを共有することによって、その出力を参照します。もちろん、これは両方のサーバー側アプリケーションが互換性のあるランタイムを使用することを前提としています (必ずしも同じコンテナーではありませんが、少なくとも両方とも同じバージョンの JAX-WS 仕様をサポートしており、開発環境のツールにも一致します)。

于 2013-01-23T17:06:52.850 に答える