从Google Apps调用GAE应用程序时未设置名称空间值

时间:2011-09-28 15:35:42

标签: google-app-engine google-apps google-apps-marketplace

我已将应用与谷歌应用市场集成。当从谷歌应用程序(通用导航栏)上的下拉“更多”链接调用应用程序时,我希望应用程序命名空间键自动设置为域值,但它不会发生。

NamespaceManager.getGoogleAppsNamespace()返回的值为“”。知道我可能做错了什么吗?谢谢你的帮助。

public class NamespaceFilter实现Filter {

.....

public void doFilter(ServletRequest请求,ServletResponse响应,FilterChain链)

  throws IOException, ServletException {

      case GOOGLE_APPS_DOMAIN : {

                 NamespaceManager.set(NamespaceManager.getGoogleAppsNamespace());

更新: 我将尝试将命名空间值显式设置为com.google.appengine.api.users.UserService.user_organization而不是NamespaceManager.getGoogleAppsNamespace()方法所携带的值。我希望后者有效,但事实并非如此。另一方面,user_organization正在正确设置到调用域。

2 个答案:

答案 0 :(得分:0)

您必须自己管理Appengine中的命名空间。 AppEngine不了解谷歌应用程序市场。使用domain参数手动设置Appengine命名空间。

答案 1 :(得分:0)

问题可能是访问应用程序的方式。是yourapp.yourcustomerdomain.comyourapp.appspot.com还是www.yourapp.com

在我自己的应用程序上测试了方法调用的预期结果如下:

  1. 代表yourapp.yourcustomerdomain.comyourcustomerdomain.com
  2. for yourapp.appspot.com它是空的
  3. 代表www.yourapp.comyourapp.com
  4. 因此,鉴于您所编写的内容,您需要以第一种方式部署应用程序。