android上使用Soap協議

來源:互聯網
上載者:User

package XXX;import org.ksoap2.SoapEnvelope;import org.ksoap2.serialization.SoapObject;import org.ksoap2.serialization.SoapSerializationEnvelope;import org.ksoap2.transport.HttpTransportSE;import org.xmlpull.v1.XmlPullParserException;import java.io.IOException;import java.net.InetSocketAddress;/** * 擷取應用XX關係類. */public class OrderRelation {    /** 命名空間. */    private final static String NAME_SPACE = "urn:AppBackgroundSpEngine";    /** 方法. */    private final static String METHOD_NAME = "appSignRight";    /** WSDL檔案的URL. */    private final static String WSDL_URL = "http://xxx/services/AppBackgroundSpEngine?wsdl";    /**     * <p>     * 擷取應用的XX關係介面     * </p>     *      * @param in XX關係的輸入參數     * @return XX關係結果     */    public static OrderRelationResult fetch(OrderRalationInput in) {        if(in == null) {            throw new IllegalArgumentException("Input parameter is null");        }                final OrderRelationResult result = new OrderRelationResult();        final SoapObject so = new SoapObject(NAME_SPACE, METHOD_NAME);        so.addProperty("transId", in.getTransId());        so.addProperty("mobile", in.getUserId());        so.addProperty("imsi", in.getImsi());        so.addProperty("appId", in.getAppId());        so.addProperty("timeStamp", in.getTimeStamp());        so.addProperty("clientType", in.getClientType());        so.addProperty("sig", in.getSig());        final SoapSerializationEnvelope se = new SoapSerializationEnvelope(SoapEnvelope.VER11);        se.bodyOut = so;        final HttpTransportSE ht = new HttpTransportSE(WSDL_URL);        try {            ht.call(NAME_SPACE, se);            final SoapObject response = (SoapObject) se.bodyIn;            if (response != null) {                System.out.println("response:"+ response);                result.setResultCode(Integer.parseInt(response.getPropertyAsString("resultCode")));                result.setTransId(response.getPropertyAsString("transId"));                result.setType(Integer.parseInt(response.getPropertyAsString("type")));            }        } catch (IOException e) {            e.printStackTrace();            return null;        } catch (XmlPullParserException e) {            e.printStackTrace();            return null;        } catch (NullPointerException e) {            e.printStackTrace();            return null;        }        return result;    }}

說明:上面的name space,method name 可以通過soap UI工具查看而得到

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.