2016-07-11 3 views
0

Есть ли способ работать с объективом, когда мы не используем сервлет или WEB-INF/web.xml? Я использую Play! Framework 2.5.4 с Java, и я не знаю, как с этим справиться ...Objectify with Play Framework 2

С этой ссылке: Objectify wiki setup

Я нашел способ выполнения этого кода путем создания нового модуля:

bind(ObjectifyFilter.class).in(Singleton.class); 

Но я не знаю, как выполнить:

filter("/*").through(ObjectifyFilter.class); 

Поскольку я не знаю, как сделать это, я пытался что:

ObjectifyService.begin(); 
ofy().save().entity(registration).now(); 

Но я только получаю следующее исключение:

Ошибка сохранения [email protected]: Нет среды API не зарегистрирован для данного потока.

Благодарим за помощь!

ответ

2

Это похоже на интересную задачу.

Регистрация фильтра в игровой инфраструктуре не очень сложна, хотя она не соответствует спецификации сервлета.

https://www.playframework.com/documentation/2.5.x/JavaHttpFilters

Но главная проблема, которую я вижу в том, что (для мало я прочитал) эта структура использует темы локального контекст для хранения информации о сделке, и асинхронных задачах. И это несовместимо с тем, как игровая среда использует протектор, следуя неблокирующей модели. https://www.playframework.com/documentation/2.5.x/ThreadPools

Не уверен, что эта информация поможет вам, но даст вам более полную картину игрового фреймворка.

Наслаждайтесь

+0

Да, вы правы (к сожалению). Я нашел обходной путь с этим сообщением, используя Google API. http://stackoverflow.com/questions/27762240/google-app-engine-connect-to-remote-datastore-locally-using-objectify В любом случае, спасибо за ваш ответ – Flo354

+0

Добро пожаловать. Удачи –