Applet在从Eclipse运行时运行,在浏览器中运行得不是很好

时间:2010-08-22 17:42:45

标签: json applet digg

我有一个与Java applet相关的问题,我将非常感谢您的帮助。这是故事: 我尝试创建一个小程序,尝试连接到digg.com,并使用它的API,显示100个最受欢迎的故事(还包括一些选项来排序和过滤结果)。
无论如何,applet打开并在浏览器中显示GUI很好,但是当我按下加载新闻的按钮时,它不会加载它们,但是当我在Eclipse中运行applet时加载新闻。
我想,也许问题与从eclipse创建可运行的jar有关,因为我有一些引用的库(谷歌GSON用于处理来自digg.com的JSON)。以下是我用于创建runnable jar的设置(我还试过“将所需的包打包到生成的JAR中):” http://img816.imageshack.us/img816/417/exportjar.png

这是applet的图片(从eclipse运行),当新闻被加载时: http://img841.imageshack.us/img841/9121/applet.png

我很感激有关如何在网络浏览器中加载新闻的任何想法。

2 个答案:

答案 0 :(得分:1)

我认为torah是对的。小程序应该只能连接到自己的服务器。您可以尝试欺骗浏览器,将请求发送回服务器,要求它检索数据并将其返回到applet。

答案 1 :(得分:0)

当您尝试打开与digg的连接时会发生什么?有安全例外吗?得知浏览器中的JVM正在实现same origin policy,我不会感到惊讶。如果是这种情况,当您尝试连接到digg.com时,应该会出现某种异常(我认为是SecurityException)。

快速搜索“同源策略java”,发现以下文章似乎都证实这可能是你的问题。 http://www.zdnet.com/blog/security/defeating-the-same-origin-policy-part-1/946