2010-03-02 46 views
0

我有一个MIDlet通过网络将TCP消息发送到驻留在同一内部网络上的服务器。 每当我试着用这条线来连接:隧道失败,BlackBerry Curve 8900

StreamConnection writeSock = (StreamConnection) Connector.open("socket://" + serverIp + ":" + serverPort, Connector.READ_WRITE); 

我得到一个错误说

隧道失败

据netstat的,服务器在其上设置要侦听的端口实际上是打开的并处于聆听模式。我从移动应用程序打印了IP和端口值,他们似乎是正确的。 我在网上看过,许多人通过设置他们的APN细节解决了这个问题。我做了这样的事情,问题依然存在。我不知道接下来我该做什么。只是为了检查的目的,这些都是APN细节我进入:

APN:互联网 用户名APN:互联网 密码APN:互联网

我载体是沃达丰马耳他。正如旁注所示,应用程序的这部分工作在仿真器上。我正在使用j2me软件包附带的默认模拟器(DefaultFxPhone1),并使用Netbeans 6.8。

我试过启用和禁用防火墙,但无济于事。

在此先感谢。

回答

1

您可能还想考虑尝试在连接字符串的末尾添加“; deviceside = true”参数。默认值为false,这意味着MDS(BES基础架构)。要通过APN执行直接TCP,您需要将其设置为true。

+0

这样做。非常感谢 :) – npinti 2010-03-03 09:39:57

1

“隧道失败”表示您的APN未在设备中正确配置。您可能需要执行一些Google搜索来为您的运营商找到适当的APN。