Файл политики сериализации RPC в AppEngine - PullRequest
4 голосов
/ 19 октября 2011

Интерфейс RPC GWT / AppEngine жрет меня! Я получаю такие ошибки:

INFO: javax.servlet.ServletContext log: UserService: ERROR: The serialization policy file '/55585D0849A4549E3FCE91B33725B02F.gwt.rpc' was not found; did you forget to include it in this deployment?

каждый раз, когда я запускаю Devserver. Я правильно установил public-root в appengine-web.xml (остальная часть приложения обслуживается нормально, за исключением файлов .gwt.rpc).

  <static-files>
    <include path="**" />
    <include path="**.nocache.*" expiration="0s" />
    <include path="**.rpc" expiration="0s" />
    <include path="**.cache.*" expiration="365d" />
  </static-files>

  <resource-files>
    <include path="**.gwt.rpc" />
  </resource-files>

Что я делаю не так? Помогите пожалуйста!

Ответы [ 2 ]

4 голосов
/ 19 октября 2011

После некоторых экспериментов вот что я придумал:

  • Не забудьте включить файлы .rpc в развертывание appengine (файл appengine-web.xml) и остерегайтесь проблем с кэшированием! (например, изменения в политике сериализации)
  • Лучше не использовать тег public-root в appengine-web.xml: удалите welcome file (например, index.html) в / каталога war и внесите соответствующие изменения в GWT, чтобы найти его файлы
  • Обновите теги сервлетов url-pattern, чтобы они указывали на каталог, сгенерированный GWT, внутри каталога war

  • Для сервлетов, связанных с tasks (т.е. web hooks), не изменяйте url-pattern

Следовательно, единственное место, которое требует некоторых знаний о сгенерированной GWT папке, находится в web.xml. Конечно, welcome-file проекта GWT также необходимо адаптировать.

Надеюсь, это кому-нибудь поможет

3 голосов
/ 26 сентября 2012

У меня была такая же проблема на развернутом сервере GAE, и только когда я добавил rpc include для раздела resource-files, ошибка исчезла.Вот что я закончил:

<resource-files>
    <include path="/resources/**" />
    <include path="**.gwt.rpc"/>
</resource-files>

<static-files>
  <include path="**" />
  <include path="**.nocache.*" expiration="0s" />
  <include path="**.cache.*" expiration="365d" />
  <exclude path="**.gwt.rpc"/>
</static-files>
...