0

特定のサーバーにデプロイされた WCF サービスがあります。

この OperationContract のパラメーターが Java 側から正しく渡されていることを確認しているときに、Java アプリケーションを介して呼び出す必要がありますが、WCF サービスでパラメーター値をログに記録しているときに、ここで受信されないようです。

「basicHttpBinding」のみを使用しており、Service および OperationContracts に設定された属性は次のとおりです。

[ServiceContract]
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[XmlSerializerFormat(Style = OperationFormatStyle.Rpc, Use =     OperationFormatUse.Encoded)]
public interface IMyService
{
    [WebMethod]
    [OperationContract(Action = @"http://tempuri.org/GetString")]
    [WebInvoke(Method = "GET", BodyStyle = WebMessageBodyStyle.Wrapped)]
    string GetString(string strParameters);
}

これが正しいかどうかを確認したり、JAVAアプリケーションを介してWCFに適切にアクセスできるようにすべての手順を提案したりできますか?

4

2 に答える 2

0

WebInvoke 属性は、BasicHttpBinding には使用されません (webhttpBinding 用です)。あなたはそれを取り出すことができます。診断する 1 つの方法は、wcf 構成エディター (SvcConfigEditor.exe) で構成を開くことです。トレースを有効にし (wcf トレースを有効にするための検索)、トレース ファイルを生成するサービスに要求を行います。トレースビューア(svtraceviewer.exe)でログを確認してください。失敗している場所が見つかります。

于 2013-07-26T00:29:53.207 に答える
0

REST フル WCF の場合は、基本的な HTTP ではなく WEBHTTPBinding を使用してみてください。REST WCF のサポート

于 2013-07-23T06:02:23.173 に答える