1

我正在尝试在黑莓中使用网络凭据调用 HTTP 请求。我已经在 J​​ava、Android 上实现了,它运行良好,但不适用于黑莓。按照我在黑莓中完成的步骤。

对于设置网络凭据,我添加了三个以下 jar。

  1. commons-codec-1.6.jar
  2. commons-httpclient-3.0.1.jar
  3. commons-logging-1.1.1.jar

添加这个 jar 文件在黑莓项目中。

遵循在 Core Java 中运行良好的示例代码。

尝试{
        HttpClient 客户端 = 新 HttpClient();
        GetMethod get = new GetMethod("http://www.google.com");
        get.setDoAuthentication(true);
        尝试 {
            int status = client.executeMethod(get);
            System.out.println(status + "\n" + get.getResponseBodyAsString());

        } 最后 {
            get.releaseConnection();
        }
    }catch(异常 e){
        System.out.println("错误:>>>>>>"+e);
    }

现在代码上没有错误,但是每当尝试单击应用程序图标错误面时,例如“错误启动应用程序名称:找不到模块'commons-httpclient-3.0.1'”

任何人都可以建议这个错误是什么。

4

1 回答 1

1

BB不支持HttpClient。但它确实支持 J2MEHttpConnection并且与 非常相似HttpClient,因此您可以轻松地使用它进行调整。这里有一些示例代码可以帮助您入门:

try{
HttpConnection mConn = (HttpConnection)Connector.open(urlToPost);

mConn.setRequestMethod(HttpConnection.POST);
mConn.setRequestProperty("IF-Modified-Since", "20 Jan 2001 16:19:14 GMT");
mConn.setRequestProperty("User-Agent","Profile/MIDP-1.0 Configuration/CLDC-1.0");
mConn.setRequestProperty("Content-Language", "en-CA");
//---------------------------------------------------
mConn.setRequestProperty("User",usr);
mConn.setRequestProperty("pass",pass);

//---------------------------------------------------
catch(Exception e){//---handle your exceptions---//}
} finally {
    mConn.close();//don't forget to close connections, only a limited number are available
}

是一篇很好的文章,可以更好地理解。

于 2012-02-17T17:15:14.013 回答