2012-07-12 77 views
0

我是新的web服务问题。我想通过用户名和密码连接到网络服务器。我发现了一些解决方案,如何连接并获得响应,但经过一些试验后,我失败了。我正在开始下面显示的一些错误。这是我的代码,你可以帮我吗?通过使用用户名和密码连接到webservice

package com.isoft.uploader; 

import java.util.ArrayList; 

import org.json.JSONArray; 
import org.json.JSONObject; 
import org.ksoap2.SoapEnvelope; 
import org.ksoap2.serialization.SoapObject; 
import org.ksoap2.serialization.SoapSerializationEnvelope; 
import org.ksoap2.transport.HttpTransport; 

import android.app.Activity; 
import android.content.Intent; 
import android.database.Cursor; 
import android.net.Uri; 
import android.os.Bundle; 
import android.provider.MediaStore; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 

public class UploaderActivity extends Activity 
{ 

//ArrayList<Response> WebData= new ArrayList<Response>(); 
public static final int SELECT_VIDEO=1; 
public static final String TAG="UploadActivity"; 
String path=""; 
final String NAMESPACE = "http://tempuri.org/"; 
final String SERVICEURL = "http://192.168.10.177/androidws/isandroidws.asmx"; 
final String METHOD_NAME1="OzelVeriAlanlariniGetir"; 
final String METHOD_NAME="KullaniciGiris"; 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    Button enter=(Button)findViewById(R.id.Enter); 
    final EditText username=(EditText)findViewById(R.id.username); 
    final EditText password=(EditText)findViewById(R.id.password); 
    enter.setOnClickListener(new View.OnClickListener() 
    { 

     @Override 
     public void onClick(View arg0) 
     { 
      // TODO Auto-generated method stub 
      //request code for Webservice 
      SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 
      //sending the username to the webservice 
      request.addProperty("kullaniciAdi",username.getText().toString()); 
      //sending the password to the webservice 
      request.addProperty("password",password.getText().toString()); 
      SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 
      envelope.dotNet = true; 
      //Putting the request in an envelope 
      envelope.setOutputSoapObject(request); 
      HttpTransport transport = new HttpTransport(SERVICEURL); 
      try 
      { 
       transport.call("http://tempuri.org/"+METHOD_NAME, envelope); 
       //getting the response from the webservice 
       Boolean response = (Boolean) envelope.getResponse(); 
       if(response==true) 
       { 
        openGaleryVideo(); 
       }//end of if statement 

       else setContentView(R.layout.main); 

      }//end of try 
      catch(Exception exception) 
      { 
       exception.printStackTrace(); 
      }//end of catch 

     }//end of onClick method 
    });//end of OnclickListener method 
}//end of onCreate method 

public void openGaleryVideo() 
{ 
    Intent intent=new Intent(); 
    intent.setType("video/*"); 
    intent.setAction(Intent.ACTION_GET_CONTENT); 
    startActivityForResult(Intent.createChooser(intent, "Select Video"),SELECT_VIDEO); 
}//end of openGaleryVideo method 

public String getPath(Uri uri) 
{ 
    String[] projection = { MediaStore.Video.Media.DATA}; 
    Cursor cursor = managedQuery(uri, projection, null, null, null); 
    int column_index = cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA); 
    cursor.moveToFirst(); 
    return cursor.getString(column_index); 
}//end of getPath method 
}//end of main 

enter image description here

+0

你已经宣布在AndroidManifest.xml所有的活动?另外,请检查你的'UploaderActivity.java' - 第63行。看起来在那里的'onClick'方法有问题。 – pixelscreen 2012-07-12 11:51:15

+0

这是因为它onClick,他试图连接到web服务! – silentw 2012-07-12 11:52:33

+0

是的我没有任何问题,我认为这是关于jar文件,但我不知道如何解决它。 – answer88 2012-07-12 11:54:15

回答

1

你需要得到ksoap2罐子

ksoap2-android-assembly-2.4-jar-with-dependencies.jar

  • 下载这个罐子的正确版本,并将其添加classpath中

编辑 现在有更新的ksoap2 JAR

ksoap2-android-assembly-2.6.5-jar-with-dependencies.jar

尝试用这种

+0

对不起,但是当我尝试这个项目无法找到HttpTransport类。另外,当我添加他们两个,我得到'转换为Dalvik格式失败,错误1' – answer88 2012-07-12 12:09:49

+0

@ answer88你尝试过'HttpTransportSE'类从该JAR吗? – sunil 2012-07-12 12:15:21

+0

现在它工作!非常感谢!但现在openGaleryVideo()方法不工作,因为如果我变得真实,我需要开始选择视频。然而,屏幕并没有改变:S – answer88 2012-07-12 12:24:41

相关问题