BlackBerry java.io.IOException:没有要打开的隧道

时间:2010-10-02 05:49:22

标签: java http blackberry java-me

我写了一个简单的BB应用程序来执行HTTP请求并下载一些JSON编码信息。 当我在模拟器上使用“; deviceSide = true”在URL之后运行它可以正常工作。但是当我在我的BlackBerry Storm实际设备中尝试它时,我得到以下例外:

java.io.IOException: No tunnels to open

以下是我用来执行HTTP请求的代码:

public static String doHttpRequest(String addr) {
    HttpConnection hConn = null;
    DataInputStream dis = null;
    String strData = "";

    try {
        hConn = (HttpConnection)Connector.open( addr );
        dis = new DataInputStream(hConn.openInputStream());

        //Get the string in the stream
        int c;

        while ( (c = dis.read()) != -1 ) {
            strData = strData + (char) c;
        }
    }catch (Exception e) {
        net.rim.device.api.ui.component.Dialog.alert( e.toString() );
    } finally {
        try{
            if(dis != null) dis.close();
            if(hConn != null) hConn.close();
        } catch(Exception e) {
            net.rim.device.api.ui.component.Dialog.alert( e.toString() );
        }
    }

    return strData;
}

2 个答案:

答案 0 :(得分:0)

看来你有一些APN问题,你应该重新配置这部分。

一般情况下,如果您的代码在模拟器上运行良好,则可能需要在手机上进行一些配置调整。


资源:

答案 1 :(得分:-1)

Colin,请在网址后面附加此字符串 - “; deviceside = true; interface = wifi”。它应该工作。我发现了类似的问题。我改变了这个设置。现在,它正在发挥作用。 : - )