2011-12-17 70 views
3

我在AppEngine上使用了Quercus/PHP。当我运行一个简单的脚本file_get_contents($url);我得到一个错误:Google AppEngine java.net.Socket受限制错误

java.lang.NoClassDefFoundError: java.net.Socket is a restricted class. Please see the Google App Engine developer's guide for more details.

我GOOGLE了,虽然我发现,其他的都碰到了同样的错误,但原因似乎有所不同。你认为这是对我来说这个错误?

我正在使用最新的AppEngine Java SDK和最新的Quercus。

回答

0

根据你的api的主页(http://quercus.caucho.com/)它可以使用休眠。快速谷歌搜索给我这个:GWT and Hibernate - NoClassDefFoundError when using Hibernate

它说冬眠将不适用于谷歌应用程序引擎。也许这是答案。

+1

据我所知,我没有使用hibernate,但我想我应该随后用stacktrace重新发布这个问题。我现在不在家中,现在不能发布。 – ofko 2011-12-17 15:47:30

+0

好吧,发布它。我会帮你的。 – 2011-12-18 19:25:28

2

olivierlemasle是正确的,但这里是我找到了一些更多的搜索后的解决方案;在评论部分,user "Phil" recommend

import java.net.URL; 
define('URLFetchServiceFactory', new Java('com.google.appengine.api.urlfetch.URLFetchServiceFactory')); 
$data = URLFetchServiceFactory->getURLFetchService()->fetch(new URL($url))->getContent(); 

经过测试,它的工作!

+0

如果你发现在线,请留下一个链接到源代码。 – hakre 2011-12-18 06:37:15