2

次のようないくつかのWebサービスがあります。

<wsdl:port name="CalcWithPerson22HttpSoap11Endpoint" binding="ns:CalcWithPerson22Soap11Binding">  
            <soap:address location="http://localhost:8080/axis2/services/CalcWithPerson22"/>  
  </wsdl:port> 

soap:address locationこれらでは、「http」から「https」に変更する必要があり ます。

WSDL ファイルのどこを変更する必要がありますか?

4

3 に答える 3

3

1.5.3maintリリースはすでにhttpsをサポートしていました。だから私たちもそれを使うことができます

2010年11月12日-ApacheAxis2/ Javaバージョン1.5.3がリリースされました!1.5.3は、以下の改善を含むメンテナンスリリースです。

  • サーブレットトランスポート使用時のSSLのサポートの改善:生成されたWSDLにhttpsエンドポイント(AXIS2-4465)が含まれるようにAxis2を構成できるようになりました。
  • Rampart(AXIS2-3213およびAXIS2-4870)およびSandesha2(潜在的なHTTP接続プールの枯渇)との互換性が向上しました。
  • Axiomは1.2.10にアップグレードされました。このバージョンには、Rampartに関連するパフォーマンスの改善が含まれています。
  • アプリケーション(ビジネス)の障害は、レベルERROR(AXIS2-4280)でログに記録されなくなりました。
  • SAAJ仕様への適合性が向上しました。1.5.3リリースには、トランク上で開発され、1.5ブランチからの以前のリリースには含まれていなかったSAAJ実装の一連の修正と改善が含まれています。
  • Axis2は現在、Maven中央リポジトリーから利用可能な依存関係のみに依存しており、他のMavenリポジトリーは必要ありません。これは特に、1.5.2リリース後に発生したビルドの問題を修正します。
  • EclipseおよびIntelliJIDEAプラグインは、Axis2 Webサイトからダウンロードできます(以前の1.5.xバージョンはMavenリポジトリーからのみダウンロードできました)。
于 2012-10-10T09:32:39.740 に答える
0

1) まず、これらのサービスを展開するアプリケーション サーバーが SSL/https で実行されている必要があることを確認する必要があります。

2) wsdl を変更する必要はありません。これらのサービスを呼び出す予定のクライアントのエンドポイントを https に変更するだけです。

ただし、wsdl で SOAP アドレスを変更する必要があります。この変更を行うだけです:

<soap:address location="https://localhost:8080/axis2/services/CalcWithPerson22"/>

アップデート:

axis2.xmlでhttps transportReceiverを確認します。1.5.3 より上の axis2 バージョンではデフォルトで有効になっています。

<transportReceiver name="https"
class="org.apache.axis2.transport.http.SimpleHTTPServer">
<parameter name="port">8443</parameter>
</transportReceiver>

service.xml https のみでサービスを実行する場合は、次のようになります。

<service name="TestWebservice" >
    <description>
        Please Type your service description here
    </description>
    <messageReceivers>
        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
        <messageReceiver  mep="http://www.w3.org/2004/08/wsdl/in-out" 
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
    </messageReceivers>
    <transports> 
        <transport>https</transport> 
    </transports>
    <parameter name="ServiceClass">xx.xxx.xxx.TestWebservice</parameter>
</service>
于 2012-04-04T20:01:09.347 に答える