Android调用WebService的时候出现问题 5C

我按照网上代码写出来的调用WebService的程序,总是返回'服务器无法处理请求。-->未将对象应用设置到对象实例'

我的代码如下:
public void other() {

// 命名空间

String nameSpace = " www.webxml.com.cn/";
// 调用的方法名称

String methodName = "getSupportCity";

// EndPoint

String endPoint = "http://www.webxml.com.cn/WebServices/WeatherWebService.asmx";

// SOAP Action

String soapAction = "http://WebXml.com.cn/getSupportCity";

    HttpTransportSE transport = new HttpTransportSE(endPoint);

    // 指定WebService的命名空间和调用的方法名  
    SoapObject rpc = new SoapObject(nameSpace, methodName);  

    rpc.addProperty("byProvinceName", "重庆");   

    // 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本  
    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10);  

    // 设置是否调用的是dotNet开发的WebService  
    envelope.dotNet = true;  
    transport.debug = true;
    // 等价于envelope.bodyOut = rpc;  
    envelope.setOutputSoapObject(rpc);  


    try {  
        // 调用WebService  
        transport.call(soapAction, envelope);  
    } catch (Exception e) {  
        e.printStackTrace();  
    }  


    // 获取返回的数据  
    Object object = envelope.bodyIn;   
    if(object==null){
        Log.i(TAG, "return object is null!");
        return;
    }
    if(object instanceof SoapFault){
        Log.i(TAG, "SoapFault refult is :"+  object.toString());
        return;
    }else if(object instanceof SoapObject){
          // 获取返回的结果  
        Log.i(TAG, "SoapObject refult is :"+  object.toString());
    }


} 


    ----------------------------------------------------
    返回的logcat打印如下:
    01-22 16:43:34.966: I/MainActivity(1898): SoapFault refult is :SoapFault - faultcode: 'soap:Server' faultstring: '服务器无法处理请求。 ---> 未将对象引用设置到对象的实例。' faultactor: 'null' detail: org.kxml2.kdom.Node@4228be08

我调用了很多webservice接口,结果都是返回这个,应该不是服务器的问题,大神求指教!!

3个回答

直接建立一个java工程,然后测试,
ok后在android测试

你的服务器的web service是否正确处理,然后就是你请求的格式是否正确。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
android 调用 webservice 返回字符串想在listview中显示。出现问题……

下文是 主查询模块 Query_xiaofeijilu.java, ``` package com.gongneng.chaxun; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.StringTokenizer; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.view.View; import android.widget.Button; import android.widget.ListView; import android.widget.SimpleAdapter; import org.json.JSONException; import org.ksoap2.SoapEnvelope; import org.ksoap2.SoapFault; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; import org.ksoap2.transport.HttpTransportSE; import org.xmlpull.v1.XmlPullParserException; import com.constant.Constant; import com.example.kehuduan.R; public class Query_xiaofeijilu extends Activity { private Button okButton; private ListView listview; private Handler handler = null; private SimpleAdapter adapter; private List<Map<String,Object>> muldata; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.query_xiaofeijilu); okButton = (Button) this.findViewById(R.id.xiaofeijiluchaxun); listview = (ListView) this.findViewById(R.id.listxiaofeijilu); handler = new Handler(); okButton.setOnClickListener(new Button.OnClickListener() { @Override public void onClick(View v) { new Thread() { @Override public void run() { try { try { getWebservice(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (XmlPullParserException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }.start(); } }); } public void getWebservice() throws InterruptedException, IOException, XmlPullParserException, JSONException { // 创建属于主线程的handler HttpTransportSE ht = new HttpTransportSE(Constant.SERVICE_URL); SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); SoapObject request = new SoapObject(Constant.SERVICE_NS,Constant.QueryAction_chaxunxiaofeijilu); request.addProperty("aac999", "2200000"); envelope.bodyOut = request;// 往出走的数据Out,也就是服务器的传入值 try { ht.call(null, envelope); Object object = (Object) envelope.getResponse();// 就用Object来取 muldata = new ArrayList<Map<String,Object>>(); if (envelope.getResponse() != null) { String a = object.toString(); String b = a.replace("[","");//变[为空 String c = b.replace("]",""); String d = c.replace("{",""); String e = d.replace("}",""); String f = e; // String[] arr = c.split(",");//将字符串转为数组,以,为分割 Map<String, Object> aa = transStringToMap(f); Iterator<?> iter = aa.entrySet().iterator(); while (iter.hasNext()) { Map<String,Object> map=new HashMap<String, Object>(); Map.Entry entry = (Map.Entry) iter.next(); Object key = entry.getKey(); Object val = entry.getValue(); map.put(key.toString(),val.toString()); // map.put("text", "测试文本:"); muldata.add(map); } adapter = buildListAdapter(this, muldata); new Thread() { public void run() { handler.post(runnableUi); } }.start(); return; } else { System.out.println("没有返回值"); return; } } catch (SoapFault e) { // TODO Auto-generated catch block e.printStackTrace(); } } // 构建adapter. public SimpleAdapter buildListAdapter(Context context,List<Map<String, Object>> data) { SimpleAdapter adapter = new SimpleAdapter(context, data, R.layout.chaxunxiaofeijilulist, new String[] { "AKB021","AKE038","KS","JS","ROWNUM" }, new int[] { R.id.akb021, R.id.ake038,R.id.ks,R.id.js ,R.id.rownum}); return adapter; } // 构建Runnable对象,在runnable中更新界面 // 更新页面list 需要单独写个线程 Runnable runnableUi = new Runnable() { @Override public void run() { // 更新界面 listview.setAdapter(adapter); Looper.loop(); } }; //=================================== //字符串转MAP public static Map<String, Object> transStringToMap(String mapString){ Map<String, Object> map = new HashMap<String, Object>(); java.util.StringTokenizer items; for(StringTokenizer entrys = new StringTokenizer(mapString, ","); entrys.hasMoreTokens(); map.put(items.nextToken(), items.hasMoreTokens() ? ((Object) (items.nextToken())).toString() : null)) items = new StringTokenizer(entrys.nextToken(), ":"); return map; } } ``` 下文是list页面 ``` <?xml version="1.0" encoding="UTF-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/child" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > <!-- 若想隐藏id加入此属性: android:visibility="gone",这样做有点类似于Html中hidden域 android:background="#E3D25E" --> <TextView android:id="@+id/akb021" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#6633FF" android:text=" akb021 " /> <TextView android:id="@+id/ake038" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=" ake038 "/> <TextView android:id="@+id/ks" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=" ks "/> <TextView android:id="@+id/js" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=" js "/> <TextView android:id="@+id/rownum" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=" rownum "/> </LinearLayout> ``` 主显示页面 ``` <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <EditText android:id="@+id/editTextShenfenzheng" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/listxiaofeijilu" android:layout_alignParentTop="true" android:layout_alignRight="@+id/listxiaofeijilu" android:ems="10" android:hint="@string/shenfenzheng" > </EditText> <Button android:id="@+id/chongzhi" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:text="@string/chongzhi" /> <ListView android:id="@+id/listxiaofeijilu" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_above="@+id/xiaofeijiluchaxun" android:layout_alignRight="@+id/chongzhi" android:layout_below="@+id/editTextShenfenzheng" > </ListView> <Button android:id="@+id/xiaofeijiluchaxun" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/chongzhi" android:layout_alignBottom="@+id/chongzhi" android:layout_toLeftOf="@+id/chongzhi" android:text="@string/xiaofeijilu" /> </RelativeLayout> ``` 但是现在只把行数显示出来了,里边没有值,附图: ![图片说明](https://img-ask.csdn.net/upload/201504/18/1429357099_489390.png) 这个问题,困扰了我好几天了,烦请各位好友,帮忙出出招,在此写过了!!!

android调用webservice的传至问题

webservice端(地址:http://qingfeng-bbs.oicp.net:61/TCLYWebService.asmx) ================================================== using System; using System.Collections.Generic; using System.Web; using System.Web.Services; using TCLYWebService.Bean; using TCLYWebService.DB; using System.Web.Services.Protocols; namespace TCLYWebService { /// <summary> /// TCLYWebService 的摘要说明 /// </summary> [WebService(Namespace = "http://qingfeng-bbs.oicp.net:61/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] public class TCLYWebService : System.Web.Services.WebService { [WebMethod] public string HelloWorld() { return "Hello World"; } [WebMethod] public string InsertJd(string guojia, string shengji, string shiji, string xianji, string jdindex, string jdName, string locationX, string locationY) { DB.DB d = new DB.DB(); //JD jd = new JD(); //jd.Guojia = guojia; //jd.Shengji = shengji; //jd.Shiji = shiji; //jd.Xianji = xianji; //jd.Jdindex = jdindex; //jd.JdName = jdName; //jd.LocationX = Double.Parse(locationX); //jd.LocationY = Double.Parse(locationY); //string sql = string.Format("insert jd values('{0}','{1}','{2}','{3}','{4}','{5}',{6},{7})", jd.Guojia, jd.Shengji, jd.Shiji, jd.Xianji, jd.Jdindex, jd.JdName, jd.LocationX, jd.LocationY); string sql = string.Format("insert jd values('{0}','{1}','{2}','{3}','{4}','{5}',{6},{7})", guojia, shengji, shiji, xianji, jdindex, jdName, locationX, locationY); return d.inupdelData(sql); } } } ``` ``` android端传参数调用 ================================================== private void initBtnListener() { // TODO Auto-generated method stub btninsertjd.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub // 执行webservice后返回的结果 final Handler handler = new Handler() { @Override public void handleMessage(Message msg) { // TODO Auto-generated method stub if (msg.what == msg_suc) { SoapObject result = (SoapObject) msg.obj; // JSONObject obj=new // JSONObject(result.getProperty(0).toString()); new AlertDialog.Builder(MainActivity.this).setTitle("提示") .setMessage(result.getProperty(0).toString()).setPositiveButton("OK", null).show(); } } }; // 执行webService new Thread(new Runnable() { public void run() { // 命名空间 String nameSpace = "http://qingfeng-bbs.oicp.net:61"; // 调用的方法名称 // String methodName = "InsertJd"; String methodName = "HelloWord"; // EndPoint String endPoint = "http://qingfeng-bbs.oicp.net:61/TCLYWebService.asmx"; // SOAP Action // String soapAction = "http://qingfeng-bbs.oicp.net:61/InsertJd"; String soapAction = "http://qingfeng-bbs.oicp.net:61/HelloWord"; // 实例化SoapObject对象 SoapObject soapObject = new SoapObject(nameSpace, methodName); // soapObject.addAttribute("guojia", "中国"); // soapObject.addAttribute("shengji", "云南"); // soapObject.addAttribute("shiji", "保山"); // soapObject.addAttribute("xianji", "腾冲"); // soapObject.addAttribute("jdindex", "银杏村"); // soapObject.addAttribute("jdName", "银杏"); // soapObject.addAttribute("locationX", "45.12331"); // soapObject.addAttribute("locationY", "564.122313"); // soapObject.addProperty("guojia", "中国"); // soapObject.addProperty("shengji", "云南"); // soapObject.addProperty("shiji", "保山"); // soapObject.addProperty("xianji", "腾冲"); // soapObject.addProperty("jdindex", "银杏村"); // soapObject.addProperty("jdName", "银杏"); // soapObject.addProperty("locationX", "45.12331"); // soapObject.addProperty("locationY", "564.122313"); // JSONObject req = new JSONObject(); // try { // req.accumulate("guojia", "中国"); // req.accumulate("shengji", "云南"); // req.accumulate("shiji", "保山"); // req.accumulate("xianji", "腾冲"); // req.accumulate("jdindex", "银杏"); // req.accumulate("jdName", "银杏村"); // req.accumulate("locationX", "45.12331"); // req.accumulate("locationY", "564.122313"); // } catch (JSONException e1) { // // TODO Auto-generated catch block // e1.printStackTrace(); // } // soapObject.addProperty("parameters", req.toString()); // 使用soap1.1协议创建Envelop对象 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER12); envelope.bodyOut = soapObject; envelope.dotNet = true; // 等价于envelope.bodyOut = soapObject; // envelope.setOutputSoapObject(soapObject); HttpTransportSE ht = new HttpTransportSE(endPoint); try { ht.call(soapAction, envelope); if (envelope.getResponse() != null) { // 获取服务器响应返回的soap消息 SoapObject result = (SoapObject) envelope.bodyIn; Message msg = new Message(); msg.obj = result; msg.what = msg_suc; handler.sendMessage(msg); } } catch (Exception e) { e.printStackTrace(); } } }).start(); // new AlertDialog.Builder(MainActivity.this) // .setTitle("提示") // .setMessage("执行了") // .setPositiveButton("OK", null) // .show(); } }); } ``` ```

android webservice接口调用问题

public String login(String uid ,String pwd){ String result=null; // 设置需调用WebService接口需要传入的两个参数mobileCode、userId rpc.addProperty("uid", uid); rpc.addProperty("pwd",pwd); // 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10); envelope.bodyOut = rpc; // 等价于envelope.bodyOut = rpc; envelope.setOutputSoapObject(rpc); HttpTransportSE transport = new HttpTransportSE(url); try { // 调用WebService transport.call(null, envelope); result = envelope.getResponse().toString(); } catch (Exception e) { e.printStackTrace(); } // 获取返回的数据 // SoapObject object = (SoapObject) envelope.bodyIn; // String result = object.getProperty("getMobileCodeInfoResult").toString(); return result; } ``` ``` 在进行访问的时候 transport.call(null, envelope); 报错。 百度说是传值方式不对,,不知道是啥原因

关于android 调用 .net webservice

各位大神好,我是自学安卓,我按照回答里二楼的网址里的方法,可惜出了错误,我不知道该怎么改。 主函数如下: public class MainActivity extends Activity{ public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); OnClickListener listener = new OnClickListener() { public void onClick(View v) { try { DBUtil dbUtil=new DBUtil(); dbUtil.IsUserNameExist(); } catch (Exception e) {} }}; Button button = (Button) findViewById(R.id.query_btn); button.setOnClickListener(listener); } } 然后调用DBUtil这个类: public class DBUtil { private ArrayList<String> arrayList = new ArrayList<String>(); private ArrayList<String> brrayList = new ArrayList<String>(); private GetWebService gws = new GetWebService(); public boolean IsUserNameExist() { arrayList.clear(); brrayList.clear(); return gws.GetWebService1("GetCountry", arrayList, brrayList); } } 然后就是webservice public class GetWebService { private String result; //Except method "getAllInfo" and "getAllTestData" public boolean GetWebService1(String methodName, ArrayList<String> Parameters, ArrayList<String> ParValues) { //命名空间 String nameSpace = "http://www.shijinet.com.cn/kunlun/kws/1.1/"; //EndPoint String endPoint = "http://http://10.0.2.2:8082/kws/InformationService.asmx"; //SOAP Action final String soapAction = nameSpace + methodName; final HttpTransportSE transport = new HttpTransportSE(endPoint); transport.debug = true; //指定WebService的命名空间和调用的方法名 SoapObject rpc = new SoapObject(nameSpace, methodName); for (int i = 0; i < Parameters.size(); i++) { rpc.addProperty(Parameters.get(i), ParValues.get(i)); } //生成调用WebService方法的SOAP请求信息,并指定SOAP的版本(10、11或者12) final SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.bodyOut = transport; //设置是否调用的是.Net开发的WebService envelope.dotNet = true; envelope.setOutputSoapObject(rpc); //android 4.0以后的版本在主程中不允许联网 Thread thread; thread = new Thread() { public void run() { try { //调用WebService transport.call(soapAction, envelope); SoapObject object = (SoapObject) envelope.bodyIn;//获取返回值,并封装成SoapObject result = object.getProperty(0).toString(); } catch (IOException e) { e.printStackTrace(); } catch (XmlPullParserException e) { e.printStackTrace(); } catch (Exception ex) { ex.printStackTrace(); } } }; thread.start(); try { thread.join();//等待该子程结束 } catch (InterruptedException e) { e.printStackTrace(); } if (result.equals("true")) { return true; } else { return false; } } } 出错点就在走到webservice方法里面的 //android 4.0以后的版本在主程中不允许联网 Thread thread; thread = new Thread() 这个地方的时候,没有进去里面,直接跳到了 thread.start(); 这个地方 实在搞不出来了,特来求教,谢谢各位

android studio 调用 webservice 莫名闪退

编译的APP,电机按钮就会闪退! 下面是代码,求助看看有没有问题! ``` package com.zt.lesson2_4; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.TextView; import android.widget.Button; import android.widget.EditText; import android.view.View.OnClickListener; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; import org.ksoap2.transport.HttpTransportSE; import android.os.AsyncTask; import java.util.regex.Matcher; import java.util.regex.Pattern; public class MainActivity extends AppCompatActivity { private String result1; private TextView textView1; private TextView textView2; private TextView textView3; private EditText editText1; private Button button1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView1=(TextView)findViewById(R.id.textView2 ); textView2=(TextView)findViewById(R.id.textView4 ); textView3=(TextView)findViewById(R.id.textView6 ); editText1=(EditText)findViewById(R.id.editText); button1=(Button)findViewById(R.id.button); button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { QueryTask newQuery=new QueryTask(); newQuery.execute(editText1.getText().toString()); } }); } private class QueryTask extends AsyncTask<String,Integer,String>{ @Override protected String doInBackground(String... params) { try{ getRemoteInfo(params[0]); } catch (Exception e){ e.printStackTrace(); } return null; } @Override protected void onPostExecute(String result) { textView3.setText("返回数据是:\n\r" + result1); Pattern pattern1 = Pattern.compile("string=(.+?);"); Matcher matcher1 = pattern1.matcher(result1); int j = 0; String[] strings = new String[5]; while (matcher1.find()) { strings[j] = matcher1.group(); j = j + 1; } textView1.setText(strings[3].substring(7)); textView2.setText(strings[1].substring(7)); } } private void getRemoteInfo(String en_word) throws Exception{ String Target_URI = "http://fy.webxml.com.cn/webservices/EnglishChinese.asmx"; String namespace = "http://WebXml.com.cn/";//namespace String methodName = "TranslatorString";//要调用的方法名称TranslatorString SoapObject request = new SoapObject(namespace, methodName); // 设置需调用WebService接口需要传入的参数wordKey request.addProperty("wordKey", en_word); //创建SoapSerializationEnvelope 对象,同时指定soap版本号 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapSerializationEnvelope.VER12); envelope.bodyOut = request;//由于是发送请求,所以是设置bodyOut envelope.dotNet = true; HttpTransportSE httpTransportSE = new HttpTransportSE(Target_URI); httpTransportSE.call(null, envelope);//调用 // 获取返回的数据 SoapObject object = (SoapObject) envelope.bodyIn; // 获取返回的结果 result1 = object.getProperty(0).toString(); } } ```

android 调用webservice出现错误

![图片说明](https://img-ask.csdn.net/upload/201706/21/1498040359_428187.png) 新手第一次做,在网上找的资料,报的这个错误,不知道是什么错误哇 求大神指引一下

Android程序无法调用webservice服务

先描述一下问题: 在VS2010上用C#写webservice,里边就一个方法HelloWorld,返回string类型webservice,然后发布到iis上;再用eclipse开发的android程序,真机调试,不能访问再自己电脑上用iis发布的这个webservice。 补充:Android程序没问题,一样的程序,改个URL地址就能访问别人电脑发布的webservice;自己发布的webservice在自己电脑上和别人电脑上都能访问,也能调用。就是用手机真机调试Android程序的时候出错,客户端运行异常,直接关了。 一直找不到原因,重装系统了,然后用相同的步骤,相同的方法,能访问自己电脑上发布的webservice了,后来360提示修复漏洞,关于iis信息泄露的,手贱修复了一下,程序就再也运行不了了。后来我把修复的漏洞卸载,还是不行!求助大神,这个问题困扰了我一个礼拜了!

Android中调用webService,如何获取其返回的Dataset中的数据

调用航班信息获取的webservice(http://webservice.webxml.com.cn/webservices/DomesticAirline.asmx?op=getDomesticAirlinesTime) 其返回数据:DataSet,Table(0)结构为 Item(Company)航空公司、Item(AirlineCode)航班号、Item(StartDrome)出发机场、Item(ArriveDrome)到达机场、Item(StartTime)出发时间、Item(ArriveTime)到达时间、Item(Mode)机型、Item(AirlineStop)经停、Item(Week)飞行周期(星期),如何取出对应项的值? [b]问题补充:[/b] 在android手机系统平台下,获取信息

关于Android调用webservice后SoapObject数据解析问题

![图片说明](https://img-ask.csdn.net/upload/201811/22/1542877739_462964.png) 现在的问题是我能拿到所有数据,就想知道这两个不同的表格怎么各拿各的数据

Android用ksoap2调用Webservice怎么传递List集合参数?

最近用到ksoap2调用Webservice获取数据,需要传递一些参数过去,除了基本类型的参数,还有List集合参数,各种试都报错,求教怎么传递List集合参数?

xutils如何调用webservice接口

xutils3.0 如何调用webservice接口 请大神赐教

请问各位大大,你们Android调用WebService用什么框架?

谷歌官方有ksoap,但是感觉过时了,上次项目用的HttpClient也不提倡了,所以不知道该用什么技术实用一点

安卓端调用WebService传参,服务端接收不了数据

代码如下: public class MainActivity extends Activity { private static final String NAMESPACE="http://service.ams.com/"; private static final String URL="http://220.231.228.87:8080/InstallWebService/intallService"; private static final String METHOD_NAME="installDevice"; private SoapObject detail; private TextView message; private Handler handler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); message=(TextView) findViewById(R.id.message); this.findViewById(R.id.button).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { new Thread(){ public void run() { installtion(); }; }.start(); } }); handler=new Handler(){ public void handleMessage(Message msg) { message.setText("从webService获取的数据:"+(String)msg.obj); }; }; } protected void installtion() { SoapObject rpc = new SoapObject(NAMESPACE,METHOD_NAME); String json="{"+""; json+="\"userId\""+":"+"\""+207+"\""+","; json+="\"loginId\""+":"+"\""+"AHAHAHAHAA"+"\""+","; json+="\"deviceId\""+":"+47397+","; json+="\"groupId\""+":"+559+","; json+="\"Time\""+":"+"\""+new SimpleDateFormat().format(new Date())+"\""+","; json+="\"brand\""+":"+"\"宝马\""+","; json+="\"model\""+":"+"\"R1\""+","; json+="\"color\""+":"+"\"黑\""+","; json+="\"carNum\""+":"+"\"粤B88888\""+","; json+="\"carName\""+":"+"\"宝马\""+","; json+="\"connectionType\""+":"+"1"+","; json+="\"oilPump\""+":"+"1"+","; json+="\"VDD\""+":"+"\"黑色\""+","; json+="\"GND\""+":"+"\"黑色\""+","; json+="\"deviceImgUrl\""+":"+"\"\""+","; json+="\"connectionIntallImgUrl\""+":"+"\"\""+","; json+="\"obligateUrl\""+":"+"\"\""+","; json+="\"InstallPosition\""+":"+"\"车头\""+","; json+="\"DBServer\""+":"+1+"}"; JSONObject myjson = null; try { myjson=new JSONObject(json); } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } rpc.addProperty("arg0",myjson.toString()); SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.bodyOut = rpc; // 设置是否调用的是dotNet开发的WebService envelope.dotNet = true; // 等价于envelope.bodyOut = rpc; envelope.setOutputSoapObject(rpc); HttpTransportSE transport = new HttpTransportSE(URL); try { // 调用WebService transport.call(NAMESPACE+METHOD_NAME, envelope); } catch (Exception e) { e.printStackTrace(); } // 获取返回的数据 SoapObject object = (SoapObject) envelope.bodyIn; // 获取返回的结果 String result = object.getProperty(0).toString(); Message msg=new Message(); msg.obj=result; handler.sendMessage(msg); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } } 调用成功了,不过传参传不了,哪位大神帮忙看下,谢谢了

Android使用ksoap2调用本地webservice一直出现问题

D/NetworkSecurityConfig: No Network Security Config specified, using platform default W/System.err: java.io.IOException: HTTP request failed, HTTP status: 405 W/System.err: at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:195) W/System.err: at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:116) W/System.err: at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:111) W/System.err: at com.mycompany.myfirstapp.webserviceclient.Visitor4Activity.add(Visitor4Activity.java:113) W/System.err: at com.mycompany.myfirstapp.webserviceclient.Visitor4Activity$QueryAddressTask.doInBackground(Visitor4Activity.java:135) W/System.err: at com.mycompany.myfirstapp.webserviceclient.Visitor4Activity$QueryAddressTask.doInBackground(Visitor4Activity.java:129) W/System.err: at android.os.AsyncTask$2.call(AsyncTask.java:304) W/System.err: at java.util.concurrent.FutureTask.run(FutureTask.java:237) W/System.err: at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243) W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) W/System.err: at java.lang.Thread.run(Thread.java:761) 访问网络权限已加,模拟器可以访问网络。

android连接c#webservice问题

我是做android的,现在公司要我把后台也做了,可是我对c#webservice一窍不通,现写了一个webservice尝试与android端交互遇到了点问题,不知道是android错了还是webservice错了请各位大神指教![![![图片说明](https://img-ask.csdn.net/upload/201605/01/1462109088_420554.png)图片说明](https://img-ask.csdn.net/upload/201605/01/1462109076_935002.png)图片说明](https://img-ask.csdn.net/upload/201605/01/1462109065_51803.png)运行到HttpResponse httpResponse = client.execute(httpPost);时提示说ConnectTimeoutExecption:Connect to/192.168.2.101:80time out

android 调用webservice 报错SoapFault - faultcode: '

![代码](https://img-ask.csdn.net/upload/201706/22/1498094840_167388.png)![报错](https://img-ask.csdn.net/upload/201706/22/1498094905_452784.png) 新手刚入门,不知道怎么办

android 访问webservice获取返回结果

// 访问webservice WebServiceUtils.callWebService(WebServiceUtils.LOCAL_SERVER_URL, "uploadAttendance", pro, new WebServiceCallBack() { @Override public void callBack(SoapObject result) { ProgressDialogUtils.dismissProgressDialog(); if (result != null) { //获取返回结果 if (result.getPropertyAsString(0) .equals("true")) { // System.out.println("result:" // + result.getPropertyAsString(0)); tmpresult = true; } else { // Toast.makeText(getActivity(), "上传失败!", // Toast.LENGTH_SHORT).show(); tmpresult = false; } } else { // Toast.makeText(getActivity(), "连接服务器失败!", // Toast.LENGTH_SHORT).show(); tmpresult = false; } // runingTheadNum.countDown(); } }); ``` ``` 该方法用来访问webservice,在回调函数中处理webservice返回的结果,我现在有两个问题。1、需要在方法外获得回调函数中取得的webservice返回的结果,但是如图显示,语法都无法通过。2、访问webservice是子线程操作。我想主线程能在获得子线程处理结果后再继续往下运行

Android代码调用mysql数据库,怎样调用,webservice方法调用怎么调用

Android客户端调用远程动态mysql数据库,要求能向里面添加数据,并能把数据库中 的数据显示到Android代码客户端,新手,希望能给点给点demo参考一下!

android 通过ksoap2调用webservice

就是报这个错:org.xmlpull.v1.XmlPullParserException: expected: END_TAG {http://schemas.xmlsoap.org/soap/envelope/}Body (position:END_TAG </{http://schemas.xmlsoap.org/soap/envelope/}SOAP-ENV:Fault>@2:212 in java.io.InputStreamReader@419f6958) Java代码: SoapSerializationEnvelope envelop = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelop.setOutputSoapObject(soapObject); envelop.dotNet = true; envelop.bodyOut = soapObject; // 注册envelope new MarshalBase64().register(envelop); HttpTransportSE transport = new HttpTransportSE(WSDL); try { transport.debug = true; transport.call(NameSpace + Name, envelop); //程序跑到这儿就报错 nlvbyte = (byte[]) envelop.getResponse(); } catch (Exception e) { e.printStackTrace(); } xml代码: <message name="GetFileResponse"><part name="file" type="xsd:base64Binary" /> </message> 请哪位大神帮帮忙,比较着急,谢谢咯

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

Vue + Spring Boot 项目实战(十九):Web 项目优化解决方案

快来一起探索如何打脸我们的破项目,兄弟姐妹们把害怕打在公屏上!

你连存活到JDK8中著名的Bug都不知道,我怎么敢给你加薪

CopyOnWriteArrayList.java和ArrayList.java,这2个类的构造函数,注释中有一句话 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 public ArrayList(Collection&lt;? ...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解!

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解! 目录 博客声明 大数据了解博主粉丝 博主的粉丝群体画像 粉丝群体性别比例、年龄分布 粉丝群体学历分布、职业分布、行业分布 国内、国外粉丝群体地域分布 博主的近期访问每日增量、粉丝每日增量 博客声明 因近期博主写专栏的文章越来越多,也越来越精细,逐步优化文章。因此,最近一段时间,订阅博主专栏的人数增长也非常快,并且专栏价

一个HashMap跟面试官扯了半个小时

一个HashMap能跟面试官扯上半个小时 关注 安琪拉的博客 1.回复面试领取面试资料 2.回复书籍领取技术电子书 3.回复交流领取技术电子书 前言 HashMap应该算是Java后端工程师面试的必问题,因为其中的知识点太多,很适合用来考察面试者的Java基础。 开场 面试官: 你先自我介绍一下吧! 安琪拉: 我是安琪拉,草丛三婊之一,最强中单(钟馗不服)!哦,不对,串场了,我是**,目...

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

记录下入职中软一个月(外包华为)

我在年前从上一家公司离职,没想到过年期间疫情爆发,我也被困在家里,在家呆着的日子让人很焦躁,于是我疯狂的投简历,看面试题,希望可以进大公司去看看。 我也有幸面试了我觉得还挺大的公司的(虽然不是bat之类的大厂,但是作为一名二本计算机专业刚毕业的大学生bat那些大厂我连投简历的勇气都没有),最后选择了中软,我知道这是一家外包公司,待遇各方面甚至不如我的上一家公司,但是对我而言这可是外包华为,能...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

培训班出来的人后来都怎么样了?(二)

接着上回说,培训班学习生涯结束了。后面每天就是无休止的背面试题,不是没有头脑的背,培训公司还是有方法的,现在回想当时背的面试题好像都用上了,也被问到了。回头找找面试题,当时都是打印下来天天看,天天背。 不理解呢也要背,面试造飞机,上班拧螺丝。班里的同学开始四处投简历面试了,很快就有面试成功的,刚开始一个,然后越来越多。不知道是什么原因,尝到胜利果实的童鞋,不满足于自己通过的公司,嫌薪水要少了,选择...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

工作八年,月薪60K,裸辞两个月,投简历投到怀疑人生!

近日,有网友在某职场社交平台吐槽,自己裸辞两个月了,但是找工作却让自己的心态都要崩溃了,全部无果,不是已查看无回音,就是已查看不符合。 “工作八年,两年一跳,裸辞两个月了,之前月薪60K,最近找工作找的心态崩了!所有招聘工具都用了,全部无果,不是已查看无回音,就是已查看不符合。进头条,滴滴之类的大厂很难吗???!!!投简历投的开始怀疑人生了!希望 可以收到大厂offer” 先来看看网...

大牛都会用的IDEA调试技巧!!!

导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA的调试用过吧,你说说怎么设置断点...

都前后端分离了,咱就别做页面跳转了!统统 JSON 交互

文章目录1. 无状态登录1.1 什么是有状态1.2 什么是无状态1.3 如何实现无状态1.4 各自优缺点2. 登录交互2.1 前后端分离的数据交互2.2 登录成功2.3 登录失败3. 未认证处理方案4. 注销登录 这是本系列的第四篇,有小伙伴找不到之前文章,松哥给大家列一个索引出来: 挖一个大坑,Spring Security 开搞! 松哥手把手带你入门 Spring Security,别再问密...

97年世界黑客编程大赛冠军作品(大小仅为16KB),惊艳世界的编程巨作

这是世界编程大赛第一名作品(97年Mekka ’97 4K Intro比赛)汇编语言所写。 整个文件只有4095个字节, 大小仅仅为16KB! 不仅实现了3D动画的效果!还有一段震撼人心的背景音乐!!! 内容无法以言语形容,实在太强大! 下面是代码,具体操作看最后! @echo off more +1 %~s0|debug e100 33 f6 bf 0 20 b5 10 f3 a5...

程序员是做全栈工程师好?还是专注一个领域好?

昨天,有位大一的同学私信我,说他要做全栈工程师。 我一听,这不害了孩子么,必须制止啊。 谁知,讲到最后,更确定了他做全栈程序员的梦想。 但凡做全栈工程师的,要么很惨,要么很牛! 但凡很牛的,绝不是一开始就是做全栈的! 全栈工程师听起来好听,但绝没有你想象的那么简单。 今天听我来给你唠,记得帮我点赞哦。 一、全栈工程师的职责 如果你学习编程的目的只是玩玩,那随意,想怎么学怎么学。...

不要再到处使用 === 了

我们知道现在的开发人员都使用 === 来代替 ==,为什么呢?我在网上看到的大多数教程都认为,要预测 JavaScript 强制转换是如何工作这太复杂了,因此建议总是使用===。这些都...

什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!

A站 AcFun弹幕视频网,简称“A站”,成立于2007年6月,取意于Anime Comic Fun,是中国大陆第一家弹幕视频网站。A站以视频为载体,逐步发展出基于原生内容二次创作的完整生态,拥有高质量互动弹幕,是中国弹幕文化的发源地;拥有大量超粘性的用户群体,产生输出了金坷垃、鬼畜全明星、我的滑板鞋、小苹果等大量网络流行文化,也是中国二次元文化的发源地。 B站 全称“哔哩哔哩(bilibili...

十个摸鱼,哦,不对,是炫酷(可以玩一整天)的网站!!!

文章目录前言正文**1、Kaspersky Cyberthreat real-time map****2、Finding Home****3、Silk – Interactive Generative Art****4、Liquid Particles 3D****5、WINDOWS93****6、Staggering Beauty****7、Ostagram图片生成器网址****8、全历史网址*...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

用了这个 IDE 插件,5分钟解决前后端联调!

点击上方蓝色“程序猿DD”,选择“设为星标”回复“资源”获取独家整理的学习资料!作者 |李海庆我是一个 Web 开发前端工程师,受到疫情影响,今天是我在家办公的第78天。开发了两周,...

大厂的 404 页面都长啥样?最后一个笑了...

每天浏览各大网站,难免会碰到404页面啊。你注意过404页面么?猿妹搜罗来了下面这些知名网站的404页面,以供大家欣赏,看看哪个网站更有创意: 正在上传…重新上传取消 腾讯 正在上传…重新上传取消 网易 淘宝 百度 新浪微博 正在上传…重新上传取消 新浪 京东 优酷 腾讯视频 搜...

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

Java14 新特性解读

Java14 已于 2020 年 3 月 17 号发布,官方特性解读在这里:https://openjdk.java.net/projects/jdk/14/以下是个人对于特性的中文式...

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

爬虫(101)爬点重口味的

小弟最近在学校无聊的很哪,浏览网页突然看到一张图片,都快流鼻血。。。然后小弟冥思苦想,得干一点有趣的事情python 爬虫库安装https://s.taobao.com/api?_ks...

工作两年简历写成这样,谁要你呀!

作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获! 一、前言 最近有伙伴问小傅哥,我的简历怎么投递了都没有反应,心里慌的很呀。 工作两年了目前的公司没有什么大项目,整天的维护别人的代码,有坑也不让重构,都烦死了。荒废我一身技能无处施展,投递的简历也没人看。我是不动物园里的猩猩,狒狒了! 我要加班,我要996,我要疯狂编码,求给我个机会… ...

相关热词 c# 局部 截图 页面 c#实现简单的文件管理器 c# where c# 取文件夹路径 c# 对比 当天 c# fir 滤波器 c# 和站 队列 c# txt 去空格 c#移除其他类事件 c# 自动截屏
立即提问