WebLogic 10.3.5 WebアプリケーションをWebLogic 12.1.3に移行する過程で、Webサービスのセキュリティに関連すると思われる問題が発生しました。このアプリケーションは、Axis 1.5.6を使用して(まだWebLogic 10.3.5上で実行されている)SOA Suite SOAPサービスを呼び出します。 Webサービスのセキュリティを無効にすると、我々は予想される応答を取り戻す:SOAスイートからAxis2へのデータの廃棄
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns3:getNamesResponse
xmlns:ns2="http://www.example.com/ABC/Common"
xmlns:ns3="http://www.example.com/ABC/Profile">
<ns3:OperatingName>
<ns3:Number>123456789</ns3:Number>
<ns3:Name>Company Name, Inc.</ns3:Name>
</ns3:OperatingName>
</ns3:getNamesResponse>
しかし、すぐにWebサービスのセキュリティが有効になっているとして(Apacheのランパート1.5.2を使用して、ApacheのNeethi 2.0.5)は、私たちは、空の応答の受信を開始:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:getNamesResponse
xmlns:ns2="http://www.example.com/ABC/Profile"
xmlns:ns4="http://www.example.com/ABC/Common" />
奇妙なことは、SOA Suiteコンソールを見たときに、SOAのうち応答が戻って(有効なセキュリティ付き)Webアプリケーションへの正しいに見えるということです。
<message>
<properties>
<property name="tracking.compositeInstanceId" value="2110209"/>
<property name="tracking.ecid" value="0058XKIkdpHFw00Fzzw0w00004Et005Kmk"/>
<property name="ws.wsu.id" value="Body-Body_tTzuB5XmRNQPR7Y7"/>
</properties>
<parts>
<part name="getNamesResponse">
<bp:getNamesResponse>
<bp:OperatingName>
<bp:Number>123456789</bp:Number>
<bp:Name>Company Name, Inc.</bp:Name>
</bp:OperatingName>
</bp:getNamesResponse>
</part>
</parts>
</message>
例外は記録されません。他の誰かがこの種の問題を経験し解決しましたか?
エラーのログを確認しましたか? Weblogicには独自のXMLライブラリがあるため、ライブラリの競合が発生する可能性があります。 –
同じSOAPリクエストを使用していますか? セキュリティ用の新しいタグ(WS-Security 1.1など)があるはずです。 おそらくSOA内部クライアントがエンドポイントに直接向いています(セキュリティ層を迂回している)。 – devwebcl
ログは何らかの障害を示すものではありません。 SOAPクライアントコードは変更されておらず、上記のようなクライアントコンポーネントのバージョン(rampartなど)もありません。 SOAがセキュリティをバイパスしていたように見えますが、セキュリティの例外が発生します。セキュリティの観点からはすべてが機能しているようです。それは単純にドロップされる応答XMLです。 – 6006604