Glassfish 3 と jax-ws (メトロ) を使用しています。SOAPFaultException をスローできる SOAPHandler を作成します。クライアント側でSilverlightを使用しています。SOAPFault は応答コードを 500 に設定しましたが、Silverlight はそれを処理できず、200 に設定する必要があります。ステータス コードを 200 に変更するにはどうすればよいですか? クライアント側で WPF を使用すれば、すべて問題ありません。
WCF のソリューションは次のとおりです: http://msdn.microsoft.com/en-us/library/ee844556(v=vs.95).aspxしかし、それは役に立ちません...
ありがとう。
答え:
Handler Close メソッドでは動作します!:
context.put(MessageContext.HTTP_RESPONSE_CODE, new Integer(200)); context.setScope(MessageContext.HTTP_RESPONSE_CODE, MessageContext.Scope.APPLICATION);