#google-app-engine #google-apps #google-apps-marketplace
#google-app-engine #google-приложения #google-приложения-торговая площадка
Вопрос:
Я интегрировал приложение с Google Apps Marketplace. Когда приложение вызывается из выпадающей ссылки «подробнее» в приложениях Google (универсальная панель навигации), я ожидаю, что ключу пространства имен приложений будет автоматически присвоено значение домена, но этого не происходит.
Значение, возвращаемое NamespaceManager.getGoogleAppsNamespace(), равно «». Есть идеи, что я могу делать неправильно? Спасибо за вашу помощь.
общедоступный класс 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 правильно устанавливается для вызывающего домена.
Комментарии:
1. Обратите внимание, что способ использования универсальных навигационных ссылок изменился с появлением нового интерфейса Google Apps Marketplace. Более подробную информацию см. В документации разработчика .
Ответ №1:
Вы должны управлять пространством имен в Appengine самостоятельно. AppEngine не знает о Google Apps Marketplace. Используйте параметр domain, чтобы вручную задать пространство имен Appengine.
Ответ №2:
Проблема может заключаться в способе доступа к приложению. Это yourapp.yourcustomerdomain.com
yourapp.appspot.com
или даже www.yourapp.com
?
Проверено на моих собственных приложениях, ожидаемые результаты вызова метода следующие:
- поскольку
yourapp.yourcustomerdomain.com
этоyourcustomerdomain.com
- поскольку
yourapp.appspot.com
оно пустое - поскольку
www.yourapp.com
этоyourapp.com
Итак, учитывая то, что вы написали, вам нужно, чтобы приложение было развернуто первым способом.