Got a tricky question here and i am getting desparate for some pointers. Here it goes.

Ok, i'm writing an app targeted for all phones that is MIDP 1.0 compatible. I was testing out the basic HTTP connection between the client (mobile app on the phone) and server (standard J2SE server application). The app is to establish a standard HTTP connection and a POST header set. Then, data in bytearray is sent to the server. The connection will be established using GPRS.

I find that there are vast differences between running the app on the emulator, Nokia phones and other phones. The actual stuff received on the server varies, which might be due to the different MIDP layer on the phones.

The problem is that running the simple test on the Nokia 3100 phone produces vastly bigger headers than using other phones such as a Sony-Ericsson T610. Besides that, it is weird to see that the headers are extras that was not set by the test app. The fact that i only set the httpconnection.POST method and nothing else.

I initially sent about 80bytes of data but ended up with around 1kilobyte of data, fatal for the app i'm gonna write. For other actual phones, i get various results as well. But the variation comes from the POST method i set. The Sony-Ericsson sent information such as transfer encoding and host ID to the server before the actual pay load, a massive reduction in comparison to the Nokia 3100.

Since both the test on different mobile phones used the same sim card (Telstra austalia), i dun think its the telco doing this. The only thing i can think of is the MIDP layer. So, is there any way of "turning off" these headers and eliminating these things being sent to the server?

AFAIK, most of all that stuff is send by the WAP gateway, and not the actual device? Likewise with cookies. Once set, the gateway will handle them for you (though A LOT of gateways wont! - bottom line, don't rely on cookies).

The test app actually uses GPRS and not WAP services. I dont think these two are the same services are they...? I'm not sure. But yes, seems like both will still go through the same WAP gateway. But the thing is that i'm using different phones (1 Nokia, 2 Sony Ericsson), with same test app, same SIM card from the same telco. Even if the test app do use the WAP gateway, wouldn't it be the same gatewawy that we are talking about? If thats the case, would all the test cases be producing the massive header on the server? But it is only producing that on one phone....the Nokia 3100.

Anyway, would the users be actually paying for these extra headers if it ever be an application of sort or is it going to be paid by the telco themselves?

if this were to be send by the device each time a connection is done, there would be an overhead of ~ 800 bytes PER CONNECTION!Thats certainly not what my phone is telling me after a GPRS session is done...

Anyway, would the users be actually paying for these extra headers if it ever be an application of sort or is it going to be paid by the telco themselves?

ANY data send or received by the device (be it connection establishment, transmission control packages, routing, data) will be billed by the telco. At least in Denmark we pay per bytes send and received.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org