Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Java ile web servise bilgi gönderme ve cevabı almak
#1
Arkadaşlar merhaba delphide yazılmış web servisim var. bu web servise bilgi göndermem gerek ve web servis aldığı bilgili işleyecek. soapUI ile web servisimi test ediyorum çalışıyor.  bunun yanında javada hazırladığım mobil applicaiton var. ancak bununla veri gönderemiyorum. bilen arkadaşlar yardımcı olur mu acaba kodlarım aşağıdaki gibi

import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;


public class MainActivity extends Activity {
   EditText edtoda_no;
   EditText edtkullanici;
   EditText edtsifre;

   String kullanici_kodu = "";
   String sifre = "";
   String oda_no = "";
   String ip_adres = "";
   String komut = "";
   TextView textView;

   private static final String SOAP_ACTION = "????????";
   private static final String METHOD_NAME = "??????????";
   private static final String NAMESPACE = "??????????";
   private static final String URL = "?????????????";

   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);

       textView = (TextView) findViewById(R.id.textView1);
       edtoda_no = (EditText) findViewById(R.id.edtoda_no);
       edtkullanici = (EditText) findViewById(R.id.edtkullanici);
       edtsifre = (EditText) findViewById(R.id.edtsifre);
       Button button = (Button) findViewById(R.id.btn_gonder);

       button.setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View view) {
               oda_no = edtoda_no.getText().toString().trim();
               kullanici_kodu = edtkullanici.getText().toString().trim();
               sifre = edtsifre.getText().toString().trim();
               ip_adres = "??????????????";
               komut = "?????????";
               new asynTask().execute(kullanici_kodu,sifre,oda_no,ip_adres,komut);
           }

       });


   }

   class asynTask extends AsyncTask<String, String, String> {
       ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);
       AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
       AlertDialog alert;

       // Doğrula butonuna basıldığında ilk yapılacaklar..
       @Override
       protected void onPreExecute() {
           // ProgressDialog oluşturuyoruz.
           progressDialog.setMessage("Kontrol ediliyor...");
           progressDialog.show();
       }

       // Doğrula butonuna basıldığında arka planda yapılacaklar..
       @Override
       protected String doInBackground(String... strings) {
           String result ="";
           SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
           request.addProperty("kullanici_kodu", strings[0]);
           request.addProperty("sifre", strings[1]);
           request.addProperty("oda_no", strings[2]);
           request.addProperty("ip_adres", strings[3]);
           request.addProperty("komut", strings[4]);
               // SoapEnvelope oluşturduk ve Soap 1.1 kullanacağımız belirttik.
           SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
           envelope.dotNet = true;
               // Envelope ile requesti birbiri ile bağladık.
           envelope.setOutputSoapObject(request);
           HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
           androidHttpTransport.debug = true;
               // Web servisi çağırdık
           try
               {
               androidHttpTransport.call(SOAP_ACTION, envelope);
               // Gelen verileri değerlendirmek için objemizi oluşturuyoruz.
                   SoapPrimitive soapPrimitive = (SoapPrimitive)envelope.getResponse();
                   result = soapPrimitive.toString();
               // Gelen sonucu değerlendiriyoruz.
           } catch (Exception e) {
               e.printStackTrace();
           }
           return result;
       }
       // Arka plan işlemleri bittikten sonra yapılacaklar..

   }
}
Cevapla
#2
Mobilde, ksoap kütüphanesi kullanabilirsin...
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla
#3
kullanıyorum. sanırım hatam şurada androidHttpTransport.call(SOAP_ACTION, envelope);.. buradan sonra catch bloğuna geçiyor. eğer yardımcı olursanız sevinirim.
Cevapla
#4
Şu an tatildeyim en erken perşembe örnek kodlar atarım,

Catch de hangi hata var yazabilir misin belki basit bir şeydir. Ben yıllardır kullanıyorum
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla
#5
Düzeldi sorunu buldum çok teşekkürler ilginiz için
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Question delphi'yi satın almak ? BY-HAYALET 17 987 21-03-2018, Saat: 15:31
Son Yorum: BY-HAYALET



Konuyu Okuyanlar: 1 Ziyaretçi