【问题标题】:Access Denied exception when using google-api-java-client使用 google-api-java-client 时访问被拒绝异常
【发布时间】:2013-09-13 17:32:12
【问题描述】:

我正在尝试使用 google-api-java-client for OAuth2.0 创建一个简单的第 3 方应用程序来访问基于 OAuth2.0 的网络服务。

当我尝试初始化时程序中断

private static final HttpTransport HTTP_TRANSPORT = new ApacheHttpTransport();

它们被导入为:

导入 com.google.api.client.http.HttpTransport;

导入 com.google.api.client.http.apache.ApacheHttpTransport;

这是一个在 Eclipse 中使用 Google App Engine 插件的简单 Web 应用程序项目。

原因:java.security.AccessControlException:访问被拒绝(java.net.NetPermission getProxySelector) 在 java.security.AccessControlContext.checkPermission(AccessControlContext.java:376) 在 java.security.AccessController.checkPermission(AccessController.java:549) 在 java.lang.SecurityManager.checkPermission(SecurityManager.java:532) 在 com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManager.checkPermission(DevAppServerFactory.java:383) 在 java.net.ProxySelector.getDefault(ProxySelector.java:73) 在 com.google.api.client.http.apache.ApacheHttpTransport.newDefaultHttpClient(ApacheHttpTransport.java:157) 在 com.google.api.client.http.apache.ApacheHttpTransport.(ApacheHttpTransport.java:100) 在 com.mytest.demo.TestApiDemoServlet.(TestApiDemoServlet.java:17)

我正在使用 App Engine 1.8.4 和 google-api-java-client 1.16.0-rc

任何帮助将不胜感激!

【问题讨论】:

    标签: google-app-engine google-api-java-client


    【解决方案1】:

    您不能在 GAE 环境中使用 ApacheHttpTransport,因为这是受到限制的。这就是它失败的原因。您需要改用 UrlFetchTransport ,它应该可以工作。要使用它,您需要直接从此链接导入相应的 jar 并放入您的 libs 或 jar 文件夹 -

    https://code.google.com/p/google-http-java-client/wiki/Setup#google-http-client-appengine

    【讨论】:

      猜你喜欢
      • 2012-11-15
      • 1970-01-01
      • 2013-09-30
      • 1970-01-01
      • 2012-05-19
      • 2014-11-19
      • 1970-01-01
      • 2014-09-25
      • 1970-01-01
      相关资源
      最近更新 更多