BlackBerry Forums Support Community

Closed Thread
LinkBack Thread Tools
Old 05-09-2007, 05:23 PM   #1 (permalink)
New Member
Join Date: May 2007
Model: 8800J
Carrier: Cingular
Posts: 6
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default JDE + ksoap web service invocation

Please Login to Remove!

I wrote a Web service Client using ksoap2 to invoke the StockQuote Service available with axis in Blackberry JDE. I am getting the following error.
"org.xmlpull.vl.XmlPullParserException: unexpected type (position: TEXT Not authorized t...@1:39 in". Did anyone get this error before? Any suggestions? I would really appreciate if someone can help me with this. Please find the code snippet below. Thank you.

import net.rim.device.api.ui.*;
import net.rim.device.api.ui.component.*;
import net.rim.device.api.ui.container.*;

import org.ksoap2.*;
import org.ksoap2.serialization.*;
import org.ksoap2.transport.*;

class StockQuoteScreen extends MainScreen{


LabelField applicationTitle = new LabelField("Stock Quote");
RichTextField stockQuoteTextField = new RichTextField("gotResponse");

// Create the outgoing message
SoapObject requestObject = new SoapObject("x", "getQuote");
// ask for the specially encoded symbol in the included service
requestObject.addProperty("symbol", "XXX");

// use version 1.1 of soap
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);

// add the outgoing object as the request
//new MarshalFloat().register(envelope); // not really needed for j2se version

// Create a transport layer for the J2SE platform. You should change this for
// another transport on midp or j2me devices.
HttpTransport transportSE = new HttpTransport("http://localhost:8080/axis/StockQuoteService.jws");
// turn on debug mode if you want to see what is happening over the wire.
//transport.debug = true;
try {
// call and print out the result"getQuote", envelope);
//stockQuoteTextField.setText(((Float)envelope.getRe sponse()).toString());
stockQuoteTextField.setText( tText() + " called ");
//stockQuoteTextField = new RichTextField("gotResponse");
} catch (Exception e) {
// if we get an error print the stacktrace and dump the response out.
stockQuoteTextField.setText( tText() + e);
//stockQuoteTextField = new RichTextField(transportSE.responseDump);

public boolean onClose()
Dialog.alert("Bye Stock Quote!");
return true;

I tried executing the HelloWorld program with a method echo which returns back the string you pass to invoke the service. But I still have the same error showing up on BlackBerry.

Thank you,
Old 05-10-2007, 01:34 PM   #2 (permalink)
New Member
Join Date: May 2007
Model: 8800J
Carrier: Cingular
Posts: 6
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default It works

Never mind. The problem was I changed the URL from localhost to complete domain name and it works. Obviously the device simulator doesnt have any localhost web service running.

thank you.

Copyright 2004-2016
The names RIM and BlackBerry are registered Trademarks of BlackBerry Inc.