BlackBerry Forums Support Community

Closed Thread
LinkBack Thread Tools
Old 09-06-2010, 01:05 PM   #1 (permalink)
New Member
Join Date: Aug 2010
Model: 7100T
Carrier: Orange
Posts: 1
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default Connection Closed When trying to post over 1K of url encoded data

Please Login to Remove!

From the simulator, this all works.

I'm using wifi on the device as i'm assuming it's the most stable.

The problem occurs when i try to post more than 1K of urlencoded data.

If i send less then it's fine.

It seems to hang the .flush command();

I've written a small testapp, and using the main thread so i know that it's not threads getting confused

If anyone has any ideas that would be great.

Here is the code:

private String PostEventsTest()
String returnValue = "Error";
HttpConnection hc = null;
DataInputStream dis = null;
DataOutputStream dos = null;
StringBuffer messagebuffer = new StringBuffer();
URLEncodedPostData postValuePairs;

postValuePairs = new URLEncodedPostData(null, false);
postValuePairs.append("DATA",postData);// postData);
hc = (HttpConnection), Connector.READ_WRITE);
hc.setRequestProperty("User-Agent", "BlackBerry");
hc.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
hc.setRequestProperty("Content-Length", Integer.toString(postValuePairs.getBytes().length) );
//hc.setRequestProperty("Content-Length", Integer.toString(postData.length()));

dos = hc.openDataOutputStream();
// Retrieve the response back from the servlet
dis = new DataInputStream(hc.openInputStream());
int ch;
// Check the Content-Length first
long len = hc.getLength();
if (len != -1)
for (int i = 0; i < len; i++)

if ((ch = != -1)
messagebuffer.append((char) ch);
{ // if the content-length is not available
while ((ch = != -1)
messagebuffer.append((char) ch);
returnValue = "Yahoo";
catch (Exception ex)
returnValue = ex.toString();

return returnValue;



Copyright 2004-2016
The names RIM and BlackBerry are registered Trademarks of BlackBerry Inc.