我创建了一个asp.net网络服务和使用模拟器,我可以很容易地访问我想要的网络服务,现在我想通过网络访问网络服务,所以我的手机将成为客户端和我的笔记本电脑将服务器试图做很多小时,但没有发生任何事情仍然给我java.lang.NullPointerException
。 我创建了一个本地网络和看图片,看网络信息http://s9.postimg.org/k3a7t754f/image.png,当我在手机连接到网络我的IP地址是192.168.173.205通过网络访问网络服务
这是我的第一类UserService这个类将调用从AsyncTaskclass
@Override protected User doInBackground(Void... params) { try { return new UserService("CheckFirstTimeLogin", "UserApi.asmx") .CheckLogin(mUsername, mPassword); } catch (Exception e) { return null; } } @Override protected void onPreExecute() { super.onPreExecute(); alertDialog = new AlertDialog.Builder(LoginActivity.this).create(); } @Override protected void onPostExecute(User user) { if (user == null) { onCancelled(); alertDialog.setTitle(R.string.login_connecnt_title); alertDialog.setMessage("خطأ اثناء عملية الإتصال"); alertDialog.show(); } }
package com.routingware.services;
import android.util.Log;
import com.routingware.database.models.User;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.PropertyInfo;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
public String NAMESPACE = "http://tempuri.org/";
public String METHOD = "";
public String ACTION = "";
public String URL = "http://192.168.173.1/projectnetwork/";
public class UserService extends CommonClass {
public UserService (String MethodName, String PageName) {
METHOD = MethodName;
ACTION = NAMESPACE + MethodName;
URL = URL + PageName;
}
public User CheckLogin (String Username, String Password) {
User user = null;
SoapObject Request = new SoapObject(NAMESPACE, METHOD);
// Send Username as parameter
PropertyInfo Pi = new PropertyInfo();
Pi.setName("Username");
Pi.setValue(Username);
Pi.setType(String.class);
Request.addProperty(Pi);
// Send Password as parameter
Pi = new PropertyInfo();
Pi.setName("Password");
Pi.setValue(Password);
Pi.setType(String.class);
Request.addProperty(Pi);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(Request);
envelope.implicitTypes = true;
envelope.addMapping(NAMESPACE, "User",new User().getClass());
HttpTransportSE httpTransport = new HttpTransportSE(URL);
httpTransport.debug = true;
try
{
Log.e("call","1");
httpTransport.call(ACTION, envelope);
SoapObject Response = (SoapObject)envelope.getResponse();
user = new User();
user.setUserID(Integer.parseInt(Response.getProperty(0).toString()));
user.setUserName(Response.getProperty(1).toString());
user.setUserPasswrd(Response.getProperty(2).toString());
user.setBranchID(Integer.parseInt(Response.getProperty(3).toString()));
user.setCompanyID(Integer.parseInt(Response.getProperty(4).toString()));
user.setUserState(Boolean.parseBoolean(Response.getProperty(5).toString()));
}
catch (Exception ex)
{
Log.e("call",ex.toString());
return null;
}
finally
{
return user;
}
}
}
呼叫的方法
对不起我的英文不好
是连接到同一个wifi网络 – user3367149
791-804的步骤是ksoap2 /com.routingware.app E/call:java.lang.NullPointerException – user3367149
你可以发布你得到的所有错误日志吗? –