activity_main.xml:
// take one listview in activity_main.xml file
step1:
downlode ksoap2 library file and add this in "libs" folder and build this library.
step2:
//write this code in main activity class
MainActivity.java:
package com.example.webservicetospinner;
import java.io.StringReader;
import java.util.ArrayList;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
import android.R.string;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
doctors doc=new doctors();
Toast.makeText(getApplicationContext(), doc.Doctorsinfo(), 20000).show();
try
{
final ArrayList list=new ArrayList();
SAXParserFactory factory=SAXParserFactory.newInstance();
SAXParser parser=factory.newSAXParser();
parser.parse(new InputSource(new StringReader(doc.Doctorsinfo())), new DefaultHandler()
{
boolean name=false;
public void startElement(String uri, String localName, String qName, org.xml.sax.Attributes attributes) throws SAXException {
if(qName.equalsIgnoreCase("doctorname")){
name=true;
}
};
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
// TODO Auto-generated method stub
super.characters(ch, start, length);
if(name)
{
list.add(new String(ch,start,length));
}
}
public void endElement(String uri, String localName, String qName) throws SAXException {
name=false;
};
}
);
Spinner spin=(Spinner)findViewById(R.id.spinner1);
ArrayAdapter < String > adapter = new ArrayAdapter < String > (this,
android.R.layout.simple_list_item_1,list);
adapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item );
spin.setAdapter(adapter);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
// take one listview in activity_main.xml file
step1:
MainActivity.java:
import java.io.StringReader;
import java.util.ArrayList;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
import android.R.string;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
doctors doc=new doctors();
Toast.makeText(getApplicationContext(), doc.Doctorsinfo(), 20000).show();
try
{
final ArrayList
SAXParserFactory factory=SAXParserFactory.newInstance();
SAXParser parser=factory.newSAXParser();
parser.parse(new InputSource(new StringReader(doc.Doctorsinfo())), new DefaultHandler()
{
boolean name=false;
public void startElement(String uri, String localName, String qName, org.xml.sax.Attributes attributes) throws SAXException {
if(qName.equalsIgnoreCase("doctorname")){
name=true;
}
};
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
// TODO Auto-generated method stub
super.characters(ch, start, length);
if(name)
{
list.add(new String(ch,start,length));
}
}
public void endElement(String uri, String localName, String qName) throws SAXException {
name=false;
};
}
);
Spinner spin=(Spinner)findViewById(R.id.spinner1);
ArrayAdapter < String > adapter = new ArrayAdapter < String > (this,
android.R.layout.simple_list_item_1,list);
adapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item );
spin.setAdapter(adapter);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
step3:
//create a class with name of doctors.java and paste below code:
doctors.java:
package com.example.webservicetospinner;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
public class doctors {
private static String SOAP_ACTION1 = "give action name";
private static String NAMESPACE = "give namespace here";
private static String METHOD_NAME1 = "method name";
private static String URL = " give ur url?wsdl";
private String result_="";
public String Doctorsinfo(){
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME1);
//Use this to add parameters
/* request.addProperty("visitDate","1-5-2014");
request.addProperty("infoType","");
request.addProperty("patientEmail","9985614637"); */
//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_ACTION1, 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());
result_=result.getProperty(0).toString();
}
else
{
result_="no data found";
}
} catch (Exception e) {
e.printStackTrace();
}
return result_;
}
}
No comments:
Post a Comment