HTTPConnection对象什么也没有返回
问题描述:
我想通过黑莓中的HttpConnection发送一些值到服务器。我想我更接近我正在尝试的解决方案。但一旦我建立连接并使用getResponseCode()方法。它没有任何回报。我也尝试过使用调试选项。但我无法找到什么是回报。控制过程一直顺利,直到该陈述。一旦达到了特定的声明,它甚至会从调试模式中出来。下面是我附加的代码片段,请让我知道你的建议。HTTPConnection对象什么也没有返回
// MyHttpConnectionService.java
........
........
........
OutputStream _outputStream = _connection.openOutputStream();
try {
int rc = _connection.getResponseCode(); // My control is getting lost here
System.out.println("Response Code :" + rc);
System.out.println("Response Code :" + rc + " if HTTP OK :"
+ (rc == HttpConnection.HTTP_OK));
.........
.........
}catch(Exception e){
e.printStackTrace();
}
它不抛出任何异常了。
任何帮助表示赞赏。
答
看着documentation for HTTPConnection,我想你应该把你的值写入_outputStream
,然后打电话outputStream.flush()
。
你提到控制在致电_connection.getResposeCode()
时丢失了,我认为这是因为这个方法做了几件事情。从示例源代码中的注释:
获取响应代码将打开连接,发送请求并读取HTTP响应头。标题被存储直到被请求。
如果到达服务器有问题,它可能与您的连接字符串有关。你是否正确设置连接字符串?
是的,'HttpConnection.getResposeCode()'打开连接,发送请求并读取HTTP响应头。这就是为什么它应该首先被调用(在任何流打开之前)。 – 2011-05-02 19:49:43
嗨,这是我自己的帖子的解决方案。我在运行代码时使用了MDS模拟器。它工作正常。感谢你的支持 – 2011-05-04 12:19:08