⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serviceconnectionfixture.java

📁 里面包含ksoap2J2ME类库和ksoap2的源码
💻 JAVA
字号:
/* Copyright (c) 2006, James Seigel, Calgary, AB., Canada *  * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or * sell copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The  above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * IN THE SOFTWARE. */package org.ksoap2.transport;import java.io.*;import java.net.*;import java.util.*;import junit.framework.*;import org.ksoap2.transport.mock.*;public class ServiceConnectionFixture implements ServiceConnection {    public static final String FAULT_MESSAGE_STRING = "The ISBN value contains invalid characters";    public static final Class RESPONSE_CLASS = new ComplexResponse().getClass();    public static final String RESPONSE_CLASS_NAME = "ComplexFunctionResponse";    public static final String NAMESPACE = "http://namespace.com/";    static public final String AXIS_FAULT_MESSAGE = "java.io.FileNotFoundException: /WebService.jws";    public static String theStringResponse = "theStringResponse";    public static long theLongResponse = 1234567890;    public HashMap requestPropertyMap = new HashMap();        public static String TWO_DIMENSIONAL_STRING_ARRAY = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+    "   <soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">"+    "      <soapenv:Body>"+    "         <getStringResponse soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">"+    "            <getStringReturn soapenc:arrayType=\"xsd:string[][2]\" xsi:type=\"soapenc:Array\" xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\">"+    "               <getStringReturn soapenc:arrayType=\"xsd:string[2]\" xsi:type=\"soapenc:Array\">"+    "                  <getStringReturn xsi:type=\"xsd:string\">1</getStringReturn>"+    "                  <getStringReturn xsi:type=\"xsd:string\">test1</getStringReturn>"+    "               </getStringReturn>"+    "               <getStringReturn soapenc:arrayType=\"xsd:string[2]\" xsi:type=\"soapenc:Array\">"+    "                  <getStringReturn xsi:type=\"xsd:string\">2</getStringReturn>"+    "                  <getStringReturn xsi:type=\"xsd:string\">test2</getStringReturn>"+    "               </getStringReturn>"+    "            </getStringReturn>"+    "         </getStringResponse>"+    "      </soapenv:Body>"+    "   </soapenv:Envelope>";            public static String STRING_ARRAY_STRING = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+        "   <soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">"+        "      <soapenv:Body>"+        "         <listResponse soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">"+        "            <listReturn soapenc:arrayType=\"xsd:string[9]\" xsi:type=\"soapenc:Array\" xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\">"+        "               <listReturn xsi:type=\"xsd:string\">user-agent:kSOAP/2.0</listReturn>"+        "               <listReturn xsi:type=\"xsd:string\">soapaction:&quot;&quot;</listReturn>"+        "               <listReturn xsi:type=\"xsd:string\">content-type:text/xml</listReturn>"+        "               <listReturn xsi:type=\"xsd:string\">connection:close</listReturn>"+        "               <listReturn xsi:type=\"xsd:string\">content-length:282</listReturn>"+        "               <listReturn xsi:type=\"xsd:string\">cache-control:no-cache</listReturn>"+        "               <listReturn xsi:type=\"xsd:string\">pragma:no-cache</listReturn>"+        "               <listReturn xsi:type=\"xsd:string\">host:127.0.0.1:8081</listReturn>"+        "               <listReturn xsi:type=\"xsd:string\">accept:text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2</listReturn>"+        "            </listReturn>"+        "         </listResponse>" +        "       </soapenv:Body>"+        "   </soapenv:Envelope>";        public static String FAULT_STRING = "" + "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +     "    <soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:mh=\"http://www.Monson-Haefel.com/jwsbook/BookQuote\" >" +     "    <soap:Body>" +     "        <soap:Fault>" +     "            <faultcode>soap:Client</faultcode>" +     "            <faultstring>" + FAULT_MESSAGE_STRING + "</faultstring>" +     "            <faultactor>http://www.xyzcorp.com</faultactor>" +     "            <detail>" +     "                <mh:InvalidIsbnFaultDetail>" +     "                <offending-value>19318224-D</offending-value>" +     "                <conformance-rules>" +     "                    The first nine characters must be digits. The last" +     "                    character may be a digit or the letter 'X'. Case is" +     "                    not important." +     "                </conformance-rules>" +     "                </mh:InvalidIsbnFaultDetail>" +     "            </detail>" +     "        </soap:Fault>" +     "     </soap:Body>" +     "    </soap:Envelope>";        // have to see how this one works    public static String AXIS_FAULT_STRING ="    <?xml version=\"1.0\" encoding=\"UTF-8\"?>"+    "    <soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"> "+    "       <soapenv:Body>  "+    "          <soapenv:Fault>   "+    "             <faultcode>soapenv:Server.userException</faultcode>   "+    "             <faultstring>"+AXIS_FAULT_MESSAGE+"</faultstring>   "+    "             <detail>    "+    "                <ns1:hostname xmlns:ns1=\"http://xml.apache.org/axis/\">widebook.local</ns1:hostname>   "+    "             </detail>  "+    "          </soapenv:Fault> "+    "       </soapenv:Body>"+    "    </soapenv:Envelope>";     public static final String BROKEN_STRING = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + "\n" +     "   <soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">" + "\n" +     "      <soapenv:Body>" + "\n" +    "         <" + RESPONSE_CLASS_NAME + " soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">" + "\n" +     "            <ComplexFunctionReturn href=\"#id0\"/>" + "\n" +     "         </" + RESPONSE_CLASS_NAME + ">" + "\n" +     "         <multiRef id=\"id0\" soapenc:root=\"0\" soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\" xsi:type=\"ns1:" + RESPONSE_CLASS_NAME + "\" xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:ns1=\"" + NAMESPACE +"\">" + "\n" +     "            <longResponse href=\"#id1\"/>" + "\n" +     "            <stringResponse xsi:type=\"xsd:string\">"+theStringResponse+"</stringResponse>" + "\n" +     "         </multiRef>" + "\n" +     "         <multiRef id=\"id1\" soapenc:root=\"0\" soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\" xsi:type=\"xsd:long\" xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\">"+theLongResponse+"</multiRef>" + "\n" +     "      </soapenv:Body>" + "\n" +     "   </soapenv:Envelope>";    public static final String WORKING_STRING = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + "\n" +     "   <soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">" + "\n" +     "      <soapenv:Body>" + "\n" +     "         <" + RESPONSE_CLASS_NAME + " soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">" + "\n" +     "            <ComplexFunctionReturn href=\"#id0\"/>" + "\n" +     "         </" + RESPONSE_CLASS_NAME + ">" + "\n" +     "         <multiRef id=\"id0\" soapenc:root=\"0\" soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\" xsi:type=\"ns1:" + RESPONSE_CLASS_NAME + "\" xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:ns1=\"" + NAMESPACE +"\">" + "\n" +     "            <longResponse xsi:type=\"xsd:long\">"+theLongResponse+"</longResponse>" + "\n" +     "            <stringResponse xsi:type=\"xsd:string\">"+theStringResponse+"</stringResponse>" + "\n" +     "         </multiRef>" + "\n" +     "         <multiRef id=\"id1\" soapenc:root=\"0\" soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\" xsi:type=\"xsd:long\" xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\">10</multiRef>" + "\n" +     "      </soapenv:Body>" + "\n" +     "   </soapenv:Envelope>";    public static final String WORKING_NOMULTIREF = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + "\n" +     "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">" + "\n" +     "    <soapenv:Body>" + "\n" +     "       <" + RESPONSE_CLASS_NAME + " soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">" + "\n" +     "          <ComplexFunctionReturn xsi:type=\"ns1:" + RESPONSE_CLASS_NAME + "\" xmlns:ns1=\"" + NAMESPACE +"\">" + "\n" +     "             <longResponse xsi:type=\"xsd:long\">"+theLongResponse+"</longResponse>" + "\n" +     "             <stringResponse xsi:type=\"xsd:string\">"+theStringResponse+"</stringResponse>" + "\n" +     "          </ComplexFunctionReturn>" + "\n" +     "       </" + RESPONSE_CLASS_NAME + ">" + "\n" +     "    </soapenv:Body>" + "\n" +     "</soapenv:Envelope>";    public static final String WORKING_NOMULTIREF_REVERSED_RESPONSE_PARAMETERS = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + "\n" +     "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">" + "\n" +     "    <soapenv:Body>" + "\n" +     "       <" + RESPONSE_CLASS_NAME + " soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">" + "\n" +     "          <ComplexFunctionReturn xsi:type=\"ns1:" + RESPONSE_CLASS_NAME + "\" xmlns:ns1=\"" + NAMESPACE +"\">" + "\n" +     "             <stringResponse xsi:type=\"xsd:string\">"+theStringResponse+"</stringResponse>" + "\n" +     "             <longResponse xsi:type=\"xsd:long\">"+theLongResponse+"</longResponse>" + "\n" +     "          </ComplexFunctionReturn>" + "\n" +     "       </" + RESPONSE_CLASS_NAME + ">" + "\n" +     "    </soapenv:Body>" + "\n" +     "</soapenv:Envelope>";    private ByteArrayInputStream inputStream;    public ByteArrayOutputStream outputStream = new ByteArrayOutputStream();    public static InputStream faultStringAsStream() {        return messsageAsStream(FAULT_STRING);    }    public static InputStream createWorkingAsStream() {        return messsageAsStream(WORKING_STRING);    }        public static InputStream createWorkingNoMultirefAsStream() {        return messsageAsStream(WORKING_NOMULTIREF);    }        public static InputStream createWorkingNoMultirefAsStream_reversedResponseParameters() {        return messsageAsStream(WORKING_NOMULTIREF_REVERSED_RESPONSE_PARAMETERS);    }        public static InputStream createMultirefAsStream() {        return messsageAsStream(BROKEN_STRING);    }    private static InputStream messsageAsStream(String message) {        return new ByteArrayInputStream(message.getBytes());    }               public void setInputSring(String inputString) {        inputStream = new ByteArrayInputStream(inputString.getBytes());    }        public void connect() throws IOException {        throw new RuntimeException("MockServiceConnection.connect is not implemented yet");    }    public void disconnect() throws IOException {        throw new RuntimeException("MockServiceConnection.disconnect is not implemented yet");    }    public void setRequestProperty(String propertyName, String value) throws IOException {        requestPropertyMap.put(propertyName, value);    }    public void setRequestMethod(String post) throws ProtocolException, IOException {    }    public OutputStream openOutputStream() throws IOException {        return outputStream;    }    public InputStream openInputStream() throws IOException {        return inputStream;    }    public InputStream getErrorStream() {        throw new RuntimeException("MockServiceConnection.getErrorStream is not implemented yet");    }        public static void assertComplexResponseCorrect(ComplexResponse complexResponse) {        Assert.assertEquals("theStringResponse", complexResponse.stringResponse);        Assert.assertEquals(1234567890, complexResponse.longResponse);    }    public static InputStream createTwoDimensionalStringArrayResponseAsStream() {        return messsageAsStream(TWO_DIMENSIONAL_STRING_ARRAY);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -