Axis を介して Java Messaging Service ベースの Web サービスを使用しており、Web サービスは MIME ヘッダーでラップされた XML ドキュメントを返します。戻り値を認識できないため、これにより問題が発生します。Google で見つかった解決策は、mail.jar
とに移動することactivation.jar
を示していclasspath
ます。ただし、ホストされたソリューションを使用しており、プロバイダ [Demandware] では jar ファイルを移動できません。この問題の別の解決策はありますか? JMS がリターンを MIME ヘッダーにラップしないようにすることは可能ですか (奇妙なことに、ホストされているソリューションよりもサードパーティの Web サービスをより細かく制御できます)。
2 に答える
Demandware を SOAP Web サービス サーバーとして機能させたいようですね。ただし、これは Demandware の現在のバージョンではサポートされていません。現時点では、REST ベースの Web サービスのみがサポートされており、クライアントが使用できます。
私の観点からこれをカスタマイズすることもできません。これが、この問題が発生する理由でもある可能性があります。
WebService との通信に HTTPClient を使用し、Demandware スクリプト コードを使用して SOAP エンベロープを作成/解析することもできますが、これは面倒な作業です。Jorge Matos による Webservice Framework の Demandware XChange ポータル (閉鎖されたサイト、登録が必要) もチェックしてください。
また、コマンドライン AXIS ツールキットを使用して、生成されたスタブが何であるかを確認することも役立つ場合があります。AXIS は Demandware サーバーで使用されるため、カートリッジの webservices フォルダーに wsdl ファイルを含めると、Demandware から内部的に生成および使用される同じスタブが表示されます。