0

私はksoap2を使用してWebサービスに接続しています-WCF。しかし、Javaには例外があります:「java.io.IOException:サーバーがHTTP応答コードを返しました:URLの415:http://localhost:2967/SAT_Service.svc」。

私の方法:

public static String SOAP_ACTION = "http://tempuri.org/SAT_IService/";
public static String NAMESPACE = "http://tempuri.org/";
public static String URL="http://localhost:2967/SAT_Service.svc";

public static String GetString(String name)
{
    String rs="";
    request=new SoapObject(NAMESPACE,name);

    SoapSerializationEnvelope envelope = 
    new SoapSerializationEnvelope(SoapEnvelope.VER11);
    envelope.dotNet=true;
    envelope.setOutputSoapObject(request);
    HttpTransportSE transp=null;
    transp=new HttpTransportSE(URL);
    try
    {
        transp.call(SOAP_ACTION+name, envelope);
        Object rsl=envelope.getResponse();
        rs=rsl.toString();
    }catch(Exception ex)
    {
        ex.printStackTrace();
    }
    return rs;
}

例外とは?Java (ksoap2 を使用) が接続してメソッド Web サービスを呼び出す方法は、WCF でセッションを持っていますか? ありがとう

4

2 に答える 2

0

HTTP応答コード:URLの415:http:// localhost:2967 /SAT_Service.svcの意味:

リクエストのエンティティが、リクエストされたメソッドのリクエストされたリソースでサポートされていない形式であるため、サーバーはリクエストの処理を拒否しています。

そのURLは、「http://server/Service.asmx」のようなWebサービスURLの形式にするべきではありませんか?

于 2012-07-14T03:49:40.393 に答える
0

私はKSOAP2を使用して、ブラックベリーアプリの開発中にWebサービスを利用していました。問題はWCFサービスにあります。wcfサービス(.svc)を使用する代わりに、古いプレーンWebサービス(.amsx)を作成できれば、正常に機能します。その理由は、WCFがデフォルトでSOAP 1.2であり、古いWebサービス(.asmx)がデフォルトでSOAP1.1を使用しているためです。KSOAPは、SOAP1.1でのみ動作するように開発されたかなり古いライブラリです。

これが私が遭遇した問題へのリンクです

于 2012-07-14T05:17:17.120 に答える