首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Smack异常-由我的Java安装或Smack引起

Smack异常-由我的Java安装或Smack引起
EN

Stack Overflow用户
提问于 2011-07-02 03:37:17
回答 1查看 1.3K关注 0票数 1

我正在使用Smack API开发一个多用户游戏客户端。我的smack应用程序有一个问题:我可以向服务器发送消息和请求,但我的应用程序无法从服务器读取响应。

代码语言:javascript
复制
Exception in thread "Smack Packet Reader (0)" java.lang.ExceptionInInitializerError
          at java.lang.Class.forName0(Native Method)
          at java.lang.Class.forName(Class.java:169)
          at org.jivesoftware.smack.provider.ProviderManager.initialize(ProviderManager.java :193)
          at org.jivesoftware.smack.provider.ProviderManager.<init>(ProviderManager.java:436 )
          at org.jivesoftware.smack.provider.ProviderManager.getInstance(ProviderManager.jav a:134)
          at org.jivesoftware.smack.util.PacketParserUtils.parseIQ(PacketParserUtils.java:30 3)
          at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:229)
          at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:43)
          at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:70)
Caused by: java.lang.NullPointerException
          at java.util.TimeZone.parseCustomTimeZone(TimeZone.java:767)
          at java.util.TimeZone.getTimeZone(TimeZone.java:471)
          at java.util.TimeZone.getTimeZone(TimeZone.java:465)
          at org.jivesoftware.smackx.workgroup.packet.TranscriptsProvider.<clinit>(Transcrip tsProvider.java:44)
          ... 9 more
No response from the server.:

它不是网络(防火墙、nat...)问题(在同一子网中的另一台Macintosh上,相同的代码运行良好,没有任何异常)。我检查了我的MacOS防火墙,似乎我可以做ok...what来解决这个问题?我不知道这个问题是取决于java还是Smack...提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-02 07:37:45

这更像是评论的延续,而不是一个完整的答案(但希望它能有所帮助)。

java源代码中有问题的行读作zi.setID("GMT+00:00");。zi的类型是sun.util.calendar.ZoneInfo。这只能意味着zi是null。再往上看,它的创建方式如下:

代码语言:javascript
复制
zi = ZoneInfoFile.getZoneInfo("GMT");

所以我写了下面的小测试程序:

代码语言:javascript
复制
class Foobar {
    public static void main(String[] args) {
        sun.util.calendar.ZoneInfo zi = sun.util.calendar.ZoneInfoFile.getZoneInfo("GMT");
        zi.setID("GMT+00:00:00");
    }
}

我没有得到任何NullPointerException或任何其他类型的异常。也许你可以运行同样的测试程序,看看会发生什么。我猜这对你来说是失败的。它可能表示Java安装已被拦截。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6552501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档