Hi,
I can't find AndroidHttpTransport...
(I'm using android-sdk-windows-1.0_r1)
Franck
On Oct 17, 6:26 am, "shailesh prakash" <[EMAIL PROTECTED]> wrote:
> Hi christian110011,
>
> for kSOAP, you have to do something like this :
> // you have to download ksoap for j2me and extend it's
> org.ksoap2.transport.Transport and implement ServiceConnection, coz
> it is built
> // for j2me not Android, you can eaisly find these two on other android group
>
> Thread t = new Thread()
> {
> private static final String
> SOAP_ACTION = "addition";
> private static final String
> METHOD_NAME = "addition";
> private static final String NAMESPACE
> = "http://ws.apache.org/axis2";
>
> // This is for service
> deployed on Tomcat, for JBOSS Android is not working on my emulator
>
> private static final String URL =
> "http://yourIP:8080/Axis2ServiceServer/services/CalcService";
> Integer a = null;
> Integer b = null;
>
> @Override
> public void run()
> {
> String stA = ((EditText)
> findViewById(R.id.EditText01)).getText().toString();
> String stB = ((EditText)
> findViewById(R.id.EditText02)).getText().toString();
> SoapSerializationEnvelope
> envelope = null;
> try
> {
> a =
> Integer.valueOf(stA);
> b =
> Integer.valueOf(stB);
> SoapObject request =
> new SoapObject(NAMESPACE,METHOD_NAME);
>
> request.addProperty("a", a);
>
> request.addProperty("b", b);
> envelope = new
> SoapSerializationEnvelope(SoapEnvelope.VER11);
>
> envelope.setOutputSoapObject(request);
> AndroidHttpTransport
> androidHttpTransport = new
> AndroidHttpTransport(URL);
>
> androidHttpTransport.call(SOAP_ACTION, envelope);
> Object result =
> envelope.getResponse();
> KSoapClient.res =
> result.toString();
> }
> catch (NumberFormatException
> nfe)
> {
> KSoapClient.res =
> "Only Integer numbers ";
> Log.e("Input Error:
> ", nfe.getMessage());
> }
> catch (SoapFault sf)
> {
> Log.e("Service
> Response Error, "+ sf.faultcode+":",
> sf.faultstring);
> }
> catch (IOException ioe)
> {
> Log.e("Service
> Response Error: ", ioe.getMessage());
> }
> catch (XmlPullParserException
> xppe)
> {
> Log.e("Service
> Response Error: ", xppe.getMessage());
> }
> }
> };
> t.start();
>
> And if you like to create your own SOAP Engine(Custom Parser will do),
> you may do,
>
> public String serviceResponse(String a , String b)
> {
> String s=null;
> Integer ai = null;
> Integer bi = null;
> Document doc;
> try
> {
> DocumentBuilderFactory factory =
> DocumentBuilderFactory.newInstance();
> DocumentBuilder parser = factory.newDocumentBuilder();
>
> ai = Integer.valueOf(a);
> bi = Integer.valueOf(b);
> doc = parser.parse(new
> URL("http://192.168.1.101:8089/axis/Calc.jws?method=add&a="+a+"&b="+b).openConnection().getInputStream());
> if(null!=doc.getElementsByTagName("soapenv:Envelope"))
> if(null!=doc.getElementsByTagName("soapenv:Body"))
> {
> if(null!=doc.getElementsByTagName("addReturn"))
> {
> NodeList nl
> =doc.getElementsByTagName("addReturn");
> s=nl.item(0).getFirstChild().getNodeValue();
>
> }
> else // not working due to IO error
> {
>
> if(null!=doc.getElementsByTagName("soapenv:Fault"))
> {
> s = "Unable to get Service";
> }
> else
> {
>
> }
> }
> }
> } catch (ParserConfigurationException e) {
>
> Log.e("Error", e.getMessage());
> } catch (FactoryConfigurationError e) {
>
> Log.e("Error", e.getMessage());
> } catch (SAXException e) {
>
> Log.e("Error", e.getMessage());
> } catch (MalformedURLException e) {
>
> Log.e("Error", e.getMessage());
> } catch (IOException e) {
>
> Log.e("Error", e.getMessage());
> }
> catch(Exception e)
> {
> if (ai == null || bi == null) {
> s = "Addition service is only for integers!!";
> }
> }
> return s;
> On Thu, Oct 16, 2008 at 6:07 PM, christian110011
>
> <[EMAIL PROTECTED]> wrote:
>
> > hi all
> > does anybody know how to call a soap web service from an android
> > application (ie. the android app is the web service client)? which
> > approaches are the best? any alternatives?
> > thx :-)
> > regards, christian
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---