02-05-2010 12:35 PM
This is consistent - happened on three different phones.
Action taken from the BES
1. Deployed an app that uses an HTTP connection (Setting a custom IT policy)via the BES. Everything works fine
2. Remove the app (by making it's configuration disallowed.
3. Set IT policy for the device to default
4. Set software configuration for the device to none
5. deploy
5. Wait and make sure app was removed from the device ad default IT policy in place
Now, actions taken at the device
1. Install the same app via Javaloader - now http connections fail
On Curve (Rogers)
java.io.IOException: Tunnel failed
on Tour(Verizon)
javax.microedition.io.ConnectionNotFoundException
Any ideas?
Solved! Go to Solution.
02-08-2010 04:51 PM
Tunnel failed generally indicates missing information required to make a direct TCP connection. Has the appropriate information been configured under Options, (Advanced Options), TCP?
What route are you trying to make a connection over? You can read about the various options here:
What Is - Different ways to make an HTTP or socket connection
Article Number: DB-00396
02-08-2010 09:28 PM
This is the form I'm using
conn = (HttpConnection) Connector.open("http://xxxx.com:8080/testscript.php");
I've also tried
conn = (HttpConnection) Connector.open("http://xxxx.com:8080/testscript.php;deviceside=false");
On the curve they both give me
Error: java.io.IOException: Tunnel failed
Under the TCP settings I have the default settings (blank for APN, username and APN).
This used to work fine before the device was provisioned on the BES. (Note that it is now fully removed from the BES)
This particular device I'm testing with is has a Rogers SIM.
02-09-2010 09:53 AM
On a BlackBerry Curve, both of those connection URLs would attempt to make a connection through the BlackBerry Enterprise Server. Unless the BlackBerry Smartphone was wiped after being removed from the BES, it would still think it can connect through it (it still has the Desktop service books from the BES). It is trying to connect through the BES but failing, resulting in the Tunnel failed.
Rogers does require TCP settings in order to make a direct TCP connection. You could fill in those and use deviceside=true instead.
02-09-2010 08:54 PM
Shouldn't a wipe delete the BES servicebook entries?
Also, when I try to put the device back on the BES and try
conn = (HttpConnection) Connector.open("http://xxxx.com:8080/testscript.php");
I get a different exception:
javax.microedition.io.ConnectionNotFoundException: Protocol not found: net.rim.device.cldc.io."http.Protocol
Is this a different problem?
(We do have other BB devices on our BES that work fine)
After BES activation getCoverageStatus() returns 7 (COVERAGE_NONE&COVERAGE_DIRECT&COVERAGE_MDS)
02-10-2010 09:38 AM
scoleman2272 wrote:
Shouldn't a wipe delete the BES servicebook entries?
Yes it will.
For the protocol not found exception, make sure you don't have any white space or invalid characters in your URL (ie: a ' beside the ").
02-10-2010 03:03 PM
Turns out that I had an extra set of quotes in my url string. It works fine now.
This Network diagnostic tools (DB-00684) was very helpful.