gpt4 book ai didi

java.io.IOException : HTTP request failed, HTTP 状态:500 在 android 中使用 WCF for android

转载 作者:行者123 更新时间:2023-11-29 05:24:49 25 4
gpt4 key购买 nike

我一直在尝试从 wcf dot net webservices 获取数据响应,但无法获得正确的响应。从 2 天开始,在连接网络服务期间出现此错误。

我也检查了 SoapEnvelope.VER11 但无法获取数据。

public class MainActivity extends Activity {

private static final String METHOD_NAME = "SayHello";

private static final String NAMESPACE = "http://tempuri.org/IWFPService/";
private static final String URL = "http://*****.svc";

private static final String SOAP_ACTION = NAMESPACE+METHOD_NAME;
private TextView textView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) findViewById(R.id.test);
AsyncTaskRunner runner = new AsyncTaskRunner();
runner.execute();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
private class AsyncTaskRunner extends AsyncTask<String, String, String> {

private String resp;
@Override
protected String doInBackground(String... params) {
publishProgress("Loading contents..."); // Calls onProgressUpdate()
try {
// SoapEnvelop.VER11 is SOAP Version 1.1 constant
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER12);
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
//request.addProperty("TestNumber", 12);
//bodyOut is the body object to be sent out with this envelope
envelope.bodyOut = request;
envelope.dotNet = true;
Log.e(SOAP_ACTION, "-->URL>"+URL);
Log.e(SOAP_ACTION, "-->METHOD_NAME>"+METHOD_NAME);
Log.e(SOAP_ACTION, "-->SOAP_ACTION>"+SOAP_ACTION);
Log.e(SOAP_ACTION, "-->envelope>"+envelope);
Log.v("", "=========== Request : " + request);
HttpTransportSE transport = new HttpTransportSE(URL);
try {
transport.call(SOAP_ACTION, envelope);
} catch (IOException e) {
e.printStackTrace();
} catch (XmlPullParserException e) {
e.printStackTrace();
}
//bodyIn is the body object received with this envelope
if (envelope.bodyIn != null) {
//getProperty() Returns a specific property at a certain index.
SoapPrimitive resultSOAP = (SoapPrimitive) ((SoapObject) envelope.bodyIn)
.getProperty(0);
resp=resultSOAP.toString();
Log.e(SOAP_ACTION, "-->>"+resp);
}
Log.e(SOAP_ACTION, "<<<-->>"+resp);
} catch (Exception e) {
e.printStackTrace();
resp = e.getMessage();
}
return resp;
}

/**
*
* @see android.os.AsyncTask#onPostExecute(java.lang.Object)
*/
@Override
protected void onPostExecute(String result) {
// execution of result of Long time consuming operation
// In this example it is the return value from the web service
textView.setText(resp);
}

/**
*
* @see android.os.AsyncTask#onPreExecute()
*/
@Override
protected void onPreExecute() {
// Things to be done before execution of long running operation. For
// example showing ProgessDialog
}

/**
*
* @see android.os.AsyncTask#onProgressUpdate(Progress[])
*/
@Override
protected void onProgressUpdate(String... text) {
textView.setText(text[0]);
// Things to be done while execution of long running operation is in
// progress. For example updating ProgessDialog
}
}

我有绿色的 logcat:

04-16 12:10:41.363: E/http://tempuri.org/IWFPService/SayHello(22684): -->URL>http://192.168.169.133/WFPeWin2/content/WFPService.svc
04-16 12:10:41.363: E/http://tempuri.org/IWFPService/SayHello(22684): -->METHOD_NAME>SayHello
04-16 12:10:41.363: E/http://tempuri.org/IWFPService/SayHello(22684): -->SOAP_ACTION>http://tempuri.org/IWFPService/SayHello
04-16 12:10:41.363: E/http://tempuri.org/IWFPService/SayHello(22684): -->envelope>org.ksoap2.serialization.SoapSerializationEnvelope@4212da18
04-16 12:10:41.363: V/(22684): =========== Request : SayHello{}
04-16 12:10:41.598: W/System.err(22684): java.io.IOException: HTTP request failed, HTTP status: 500
04-16 12:10:41.598: W/System.err(22684): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:195)
04-16 12:10:41.598: W/System.err(22684): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:116)
04-16 12:10:41.598: W/System.err(22684): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:111)
04-16 12:10:41.598: W/System.err(22684): at com.example.samplews.MainActivity$AsyncTaskRunner.doInBackground(MainActivity.java:67)
04-16 12:10:41.598: W/System.err(22684): at com.example.samplews.MainActivity$AsyncTaskRunner.doInBackground(MainActivity.java:1)
04-16 12:10:41.598: W/System.err(22684): at android.os.AsyncTask$2.call(AsyncTask.java:287)
04-16 12:10:41.598: W/System.err(22684): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
04-16 12:10:41.598: W/System.err(22684): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
04-16 12:10:41.598: W/System.err(22684): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
04-16 12:10:41.598: W/System.err(22684): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
04-16 12:10:41.598: W/System.err(22684): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
04-16 12:10:41.598: W/System.err(22684): at java.lang.Thread.run(Thread.java:856)
04-16 12:10:41.598: E/http://tempuri.org/IWFPService/SayHello(22684): <<<-->>null

我的代码有什么问题,你知道吗??

最佳答案

嗯.. HTTP 500 是一个内部服务器错误,因此您可能应该检查服务器是否正在使用 SOAPUI 或其他一些初学者工具。然后确保您可以从设备访问 URL(在本例中为 IP 号),然后开始调试 ksaop 调用。

关于java.io.IOException : HTTP request failed, HTTP 状态:500 在 android 中使用 WCF for android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23076478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com