java - 异常(exception);建立连接后无法设置请求属性;发生在 Android Lollipop HTC M8 上

标签 java android web-services android-5.0-lollipop android-ksoap2

我正在使用 Soap 请求从 Android 应用程序调用 Java Web 服务。有一种特定的方法可以通过应用程序调用,它在几乎所有设备和三星 LollipopAndroid 版本中都能正常工作,直到 Kit Kat > 设备也一样,但不适用于 HTC M8 Lollipop 更新设备。
以下是我的代码。

HttpTransportSE ht = new HttpTransportSE("URL");
SoapObject so = new SoapObject("Namespace", "Method");
try {
    SoapSerializationEnvelope se = new SoapSerializationEnvelope(SoapEnvelope.VER11);
    so.addProperty("input1", data);
    data = se.getResponse().toString();//This is where Exception occurs

}catch(Exception ex){
    ex.printStackTrace();
}

当尝试获取评论指示的响应时发生Exception,确切的Exception如下。

java.lang.IllegalStateException: Cannot set request property after connection is made
at com.android.okhttp.internal.http.HttpURLConnectionImpl.setRequestProperty(HttpURLConnectionImpl.java:496)
at com.android.okhttp.internal.http.DelegatingHttpsURLConnection.setRequestProperty(DelegatingHttpsURLConnection.java:258)
at com.android.okhttp.internal.http.HttpsURLConnectionImpl.setRequestProperty(HttpsURLConnectionImpl.java:25)
at org.ksoap2.transport.ServiceConnectionSE.setRequestProperty(ServiceConnectionSE.java:101)
at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:156)
at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:116)

我一直在寻找这个,但找不到合适的答案或解决方法。

我找过
Ksoap2 Android IllegalStateException

setRequestProperty method giving java.lang.IllegalStateException: Cannot set method after connection is made

我不知道为什么它会出现在 HTC M8 Lollipop 设备中,但不会出现在 Samsung Lollipop 设备中。
非常感谢任何建议或解决方法。
谢谢

最佳答案

我认为这可以解释这个问题。在线程中查找第 4 个th 粒子。
https://code.google.com/p/ksoap2-android/issues/detail?id=205&can=1&start=200
它说,

Ahh.. they might have added ksoap2 android in their firmware.. that would explain it. Not sure that is anything you can do beyond shading the whole ksoap2-android package you use and any dependencies into your own namespace. A rather huge undertaking..

您可以做两件事来准确确定这是否是问题所在。

  1. 尝试重命名 ksoap2 类名
  2. 名称前直接访问ksoap2 类。

关于java - 异常(exception);建立连接后无法设置请求属性;发生在 Android Lollipop HTC M8 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29765186/

相关文章:

java - OWLAPI : Use of 'Imports' enum

java - 在矩形内创建字符串

android - 如何将布局与 ImageView 和文本重叠在另一个布局上作为堆栈/堆

iphone - 如何将 -lxml2 添加到链接器标志?

java - 为什么调用 .getBytes() 时字符串 "¿"会被转换为 "¿"

java - allocateIds DatastoreService 实际使用情况

android - token 不是来自此身份池的受支持提供商 Amazon Mobile Hub Android

android - 如何在不使用绝对布局的情况下正确定位android布局?

c# - 使用 SOAP、Javascript、C#、Webservices、jQuery 的 Windows Gadget for Sharepoint 2007 列表

ios - 在网络服务中注册一个 iphone 应用程序