ksoap соединение с веб-сервисом, без андроида (используя ksoap) - PullRequest
0 голосов
/ 27 марта 2011

хорошо, я делаю соединение ... sql сервер с веб-сервисом, веб-сервис с j2me, но сейчас я делаю один helloworld ... я мог бы, но сейчас, чем я хочу сделать один "привет мир" Номбр ... параметр не получен в веб-сервисе, здесь веб-сервис

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// Para permitir que se llame a este servicio web desde un script, usando ASP.NET AJAX, quite la marca de comentario de la línea siguiente. 
// [System.Web.Script.Services.ScriptService]
public class Service : System.Web.Services.WebService
{

    public Service () {


    }

    [WebMethod]
    public string HelloWorld(String nombre)
    {
        return "Que onda " + nombre;
    }

}

и это код для вызова его с помощью ksoap ...

String nombremetodo="HelloWorld";
String url="http://localhost:49175/WebSite1/Service.asmx";
String namespace="http://tempuri.org/";
String SOAP_ACTION=namespace+nombremetodo;

public void traer()
{
SoapObject busqueda =new SoapObject(namespace,nombremetodo);
HttpTransport transportacion = new HttpTransport(url);
busqueda.addProperty(new String("nombre"),new String("Angel"));
System.out.println("parametro agregado");

//busqueda.addProperty(PropertyInfo.OBJECT_TYPE, "Angel");

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);

transportacion.debug=true;

envelope.bodyOut=busqueda;
System.out.println("todo ok");
try{
    System.out.println("comenzando transportacion");

transportacion.call(SOAP_ACTION, envelope);
System.out.println("transportacion ok");

respuesta = envelope.getResponse().toString();
System.out.println("respuesta ok");

}
catch(Exception e)
{
texto.setString("fallo");
System.out.println("falla en el try");

System.out.println(e);

}


}

я получаю, он возвращает "que onda" с пробелом, потому что я помещаю его в веб-сервис, но никогда не возвращает "que onda" + nombre ... это приложение для j2me, не Android, я смотрю на Android, это так ...

PropertyInfo p1 = new PropertyInfo();
p1.setName("nombre");
p11.setValue("Angel");
busqueda.addProperty(p1);

но ksoap для j2me не имеет этих методов .. "setName, setValue"; Я загружаю эту библиотеку, но получаю ужасную ошибку, и приложение не запускается ... с этим я вижу параметр добавляется так ..

 busqueda.addProperty("nombre","Angel");

но это не работает ... он запускается без ошибок, но веб-сервис никогда не получает параметр ...

спасибо, люди из STACKOVERFLOW мой английский не очень хорошо извините

1 Ответ

0 голосов
/ 27 марта 2011

я это решил, надо написать

envelope.dotNet=true;
...