12-14 16:17:35.926: WARN/System.err(3483): java.net.SocketException: The operation timed out
12-14 16:17:35.926: WARN/System.err(3483): at org.apache.harmony.luni.platform.OSNetworkSystem.connectStreamWithTimeoutSocketImpl(Native Method)
12-14 16:17:35.926: WARN/System.err(3483): at org.apache.harmony.luni.platform.OSNetworkSystem.connectStreamWithTimeoutSocket(OSNetworkSystem.java:130)
12-14 16:17:35.926: WARN/System.err(3483): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:246)
12-14 16:17:35.926: WARN/System.err(3483): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:533)
12-14 16:17:35.936: WARN/System.err(3483): at java.net.Socket.connect(Socket.java:1055)
12-14 16:17:35.936: WARN/System.err(3483): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:62)
12-14 16:17:35.936: WARN/System.err(3483): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:88)
12-14 16:17:35.936: WARN/System.err(3483): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHTTPConnection(HttpURLConnectionImpl.java:927)
12-14 16:17:35.936: WARN/System.err(3483): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:909)
12-14 16:17:35.946: WARN/System.err(3483): at org.ksoap2.transport.ServiceConnectionSE.connect(ServiceConnectionSE.java:76)
12-14 16:17:35.946: WARN/System.err(3483): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:146)
12-14 16:17:35.946: WARN/System.err(3483): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:95)
12-14 16:17:35.956: WARN/System.err(3483): at com.menten.until.ServerHelper.Call(ServerHelper.java:31)
12-14 16:17:35.956: WARN/System.err(3483): at com.menten.until.mainSevice.doTask(mainSevice.java:139)
12-14 16:17:35.956: WARN/System.err(3483): at com.meten.ui.Login$2.onClick(Login.java:85)
12-14 16:17:35.956: WARN/System.err(3483): at android.view.View.performClick(View.java:2408)
12-14 16:17:35.956: WARN/System.err(3483): at android.view.View$PerformClick.run(View.java:8816)
12-14 16:17:35.956: WARN/System.err(3483): at android.os.Handler.handleCallback(Handler.java:587)
12-14 16:17:35.956: WARN/System.err(3483): at android.os.Handler.dispatchMessage(Handler.java:92)
12-14 16:17:35.966: WARN/System.err(3483): at android.os.Looper.loop(Looper.java:123)
12-14 16:17:35.966: WARN/System.err(3483): at android.app.ActivityThread.main(ActivityThread.java:4669)
12-14 16:17:35.966: WARN/System.err(3483): at java.lang.reflect.Method.invokeNative(Native Method)
12-14 16:17:35.966: WARN/System.err(3483): at java.lang.reflect.Method.invoke(Method.java:521)
12-14 16:17:35.976: WARN/System.err(3483): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:876)
12-14 16:17:35.976: WARN/System.err(3483): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634)
12-14 16:17:35.976: WARN/System.err(3483): at dalvik.system.NativeStart.main(Native Method)
12-14 16:17:35.926: WARN/System.err(3483): at org.apache.harmony.luni.platform.OSNetworkSystem.connectStreamWithTimeoutSocketImpl(Native Method)
12-14 16:17:35.926: WARN/System.err(3483): at org.apache.harmony.luni.platform.OSNetworkSystem.connectStreamWithTimeoutSocket(OSNetworkSystem.java:130)
12-14 16:17:35.926: WARN/System.err(3483): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:246)
12-14 16:17:35.926: WARN/System.err(3483): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:533)
12-14 16:17:35.936: WARN/System.err(3483): at java.net.Socket.connect(Socket.java:1055)
12-14 16:17:35.936: WARN/System.err(3483): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:62)
12-14 16:17:35.936: WARN/System.err(3483): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:88)
12-14 16:17:35.936: WARN/System.err(3483): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHTTPConnection(HttpURLConnectionImpl.java:927)
12-14 16:17:35.936: WARN/System.err(3483): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:909)
12-14 16:17:35.946: WARN/System.err(3483): at org.ksoap2.transport.ServiceConnectionSE.connect(ServiceConnectionSE.java:76)
12-14 16:17:35.946: WARN/System.err(3483): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:146)
12-14 16:17:35.946: WARN/System.err(3483): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:95)
12-14 16:17:35.956: WARN/System.err(3483): at com.menten.until.ServerHelper.Call(ServerHelper.java:31)
12-14 16:17:35.956: WARN/System.err(3483): at com.menten.until.mainSevice.doTask(mainSevice.java:139)
12-14 16:17:35.956: WARN/System.err(3483): at com.meten.ui.Login$2.onClick(Login.java:85)
12-14 16:17:35.956: WARN/System.err(3483): at android.view.View.performClick(View.java:2408)
12-14 16:17:35.956: WARN/System.err(3483): at android.view.View$PerformClick.run(View.java:8816)
12-14 16:17:35.956: WARN/System.err(3483): at android.os.Handler.handleCallback(Handler.java:587)
12-14 16:17:35.956: WARN/System.err(3483): at android.os.Handler.dispatchMessage(Handler.java:92)
12-14 16:17:35.966: WARN/System.err(3483): at android.os.Looper.loop(Looper.java:123)
12-14 16:17:35.966: WARN/System.err(3483): at android.app.ActivityThread.main(ActivityThread.java:4669)
12-14 16:17:35.966: WARN/System.err(3483): at java.lang.reflect.Method.invokeNative(Native Method)
12-14 16:17:35.966: WARN/System.err(3483): at java.lang.reflect.Method.invoke(Method.java:521)
12-14 16:17:35.976: WARN/System.err(3483): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:876)
12-14 16:17:35.976: WARN/System.err(3483): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634)
12-14 16:17:35.976: WARN/System.err(3483): at dalvik.system.NativeStart.main(Native Method)
ksoap包是没有问题的。
方便的话,把webservice的网址,命名空间,调用的方法和参数发来,我测试下
以前一直都是在模拟器测试(兼容多个分辨率)。看到你的帖子,我心里一虚,在真机上用GPRS测了一下,还好可以连上。
看下是不是接入点问题我用的是:cmnet。
在把连接时间该长:30秒。
代码如下package com.glServiceTest;import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;public class GlServiceTestActivity extends Activity implements OnClickListener
{ /** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button=(Button)findViewById(R.id.btn);
button.setOnClickListener(this);
} public void onClick(View v)
{
// TODO Auto-generated method stub
EditText etBook=(EditText)findViewById(R.id.etBookName);
TextView tvResult=(TextView)findViewById(R.id.tvResult);
//private static final String NAMESPACE = "http:/ /WebXml.com.cn/";
//WSDL文档的URL,10.0.2.2为android平台对本地PC的localhost的别名
//String serviceUrl="http://10.168.13.251:8080/axis2/services/glService?wsdl";
//String serviceUrl="http://10.0.2.2:8080/axis2/services/glService?wsdl";
//BookService是.arr文件名字
String serviceUrl="http://10.0.2.2:8080/axis2/services/glService?wsdl";
//定义调用web服务的方法名称
String methodName="getBook";
//创建SoapObject对象
SoapObject request=new SoapObject("http://service",methodName);
request.addProperty("bookName",etBook.getText().toString());
System.out.println("-----------------------1");
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
System.out.println("-----------------------2");
envelope.bodyOut=request;
HttpTransportSE ht = new HttpTransportSE(serviceUrl);
try {
ht.call(null, envelope);
if (envelope.getResponse()!=null)
{
SoapObject soapObject=(SoapObject)envelope.getResponse();
System.out.println("-----------------------3");
String result="书名:"+soapObject.getProperty("name")+"\n";
result+="作者:"+soapObject.getProperty("editor")+"\n";
result+="价格:"+soapObject.getProperty("price");
// 将WebService返回的结果显示在TextView中
tvResult.setText(result);
System.out.println("-----------------------4");
}
else
{
tvResult.setText("没有这本书.");
System.out.println("-----------------------5");
}
} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
System.out.println("-----------------------6");
}
}
}