2012-06-11 55 views
0

任何人都可以告訴我如何從Web服務中顯示數據集值,從android eclipse中使用它?來自android eclipse的數據集Web服務

我曾嘗試這些事情至今

public class Demo_webserviceActivity extends Activity 
{ 
/** Called when the activity is first created. */ 

    private static String NAMESPACE = "http://tempuri.org/"; 
    private static String METHOD_NAME = "GetName"; 
    private static String SOAP_ACTION = "http://tempuri.org/GetName"; 
    private static String URL = "http://122.248.240.105:234/Service1.asmx?WSDL"; 

    Button btnFar; 
    EditText txtFar,txtCel; 

    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     btnFar = (Button)findViewById(R.id.btnFar); 

     txtFar = (EditText)findViewById(R.id.txtFar); 
     txtCel = (EditText)findViewById(R.id.txtCel); 

     btnFar.setOnClickListener(new View.OnClickListener() 
     { 

        public void onClick(View v) 
       { 
        //Initialize soap request + add parameters 
       SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);  

       //Use this to add parameters 
       request.addProperty("Fahrenheit",txtFar.getText().toString()); 

       //Declare the version of the SOAP request 
       SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 

       envelope.setOutputSoapObject(request); 
       envelope.dotNet = true; 

       try { 
        HttpTransportSE androidHttpTransport = new HttpTransportSE(URL); 

        //this is the actual part that will call the webservice 
        androidHttpTransport.call(SOAP_ACTION, envelope); 

        // Get the SoapResult from the envelope body. 
        SoapObject result = (SoapObject)envelope.bodyIn; 

        if(result != null) 
        { 
          //Get the first property and change the label text 
          txtCel.setText(result.getProperty(0).toString()); 
        } 
        else 
        { 
          Toast.makeText(getApplicationContext(), "No Response",Toast.LENGTH_LONG).show(); 
        } 
       } catch (Exception e) { 
        e.printStackTrace(); 
       } 
       } 
     }); 

Web方法

public class GetName 
{ 

public String GetName(String Fahrenheit){ 
    return(Fahrenheit); 
} 
} 

這裏是我的參考日誌貓

logcat的

06-11 17:03:57.760: D/AndroidRuntime(283): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<< 
06-11 17:03:57.760: D/AndroidRuntime(283): CheckJNI is ON 
06-11 17:03:57.890: D/AndroidRuntime(283): --- registering native functions --- 
06-11 17:03:58.520: D/AndroidRuntime(283): Shutting down VM 
06-11 17:03:58.530: D/dalvikvm(283): Debugger has detached; object registry had 1 entries 
06-11 17:03:58.580: I/AndroidRuntime(283): NOTE: attach of thread 'Binder Thread #3' failed 
06-11 17:03:58.980: D/AndroidRuntime(291): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<< 
06-11 17:03:58.980: D/AndroidRuntime(291): CheckJNI is ON 
06-11 17:03:59.150: D/AndroidRuntime(291): --- registering native functions --- 
06-11 17:03:59.750: I/ActivityManager(58): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.demo.webser/.Demo_webserviceActivity } 
06-11 17:03:59.820: D/AndroidRuntime(291): Shutting down VM 
06-11 17:03:59.820: D/dalvikvm(291): Debugger has detached; object registry had 1 entries 
06-11 17:03:59.865: I/AndroidRuntime(291): NOTE: attach of thread 'Binder Thread #3' failed 
06-11 17:04:00.560: I/ActivityManager(58): Displayed activity com.demo.webser/.Demo_webserviceActivity: 780 ms (total 780 ms) 
06-11 17:04:05.930: D/dalvikvm(115): GC_EXPLICIT freed 2114 objects/95232 bytes in 117ms 
+0

這甚至意味着什麼?你到目前爲止所嘗試過的? –

+0

Sebastin請再次訪問我的問題我編輯了我迄今爲止所做的 – Manick

+0

您正在使用哪個平臺開發** Web服務**,以便我可以幫助依賴於 –

回答

2

我認爲你正在用java開發web服務。 不,在java中沒有數據類型的數據集,但是如果你想要的話,你可以返回String.Array數組的響應。它意味着以字符串的二維數組得到響應(表)並返回該響應。

爲了您在java中創建webservice的參考,請使用本教程How to create java based web service

如果您對這個或任何其他疑問有任何疑問,可以給我寫信。