Play 2.5.3 не может использовать JPAApi.withTransactional при запуске приложения

Я использую Play 2.5.3. Я пытался записать исходные данные в свою базу данных, но она вылетает с ошибками "Нет запущенного приложения" и "Попытаться аннотировать с помощью @play.jpa.Transactional". Раньше я использовал 2.4.6, все работало нормально. Я проверил руководство по миграции. Но я не нашел свой ответ.


Я использую AbstractModule класс, чтобы создать свой собственный Module, Переопределение configure() абстрактный метод. В этом методе я связываю свой статический внутренний класс как EagerSingleton, Он вводит все необходимые переменные. В этом классе я хотел бы запустить код с jpa.withTransactional(), Но все же исключения появляются, когда я хочу сделать jpa-взаимодействие.

Что мне не хватает?

public class ApplicationModule extends AbstractModule {

   @Override
   public void configure() {
       bind(ApplicationInitializer.class).asEagerSingleton();
   }

   private static class ApplicationInitializer  {

      @Inject
      public ApplicationInitializer(JPAApi jpa) {

         Logger.info("Application init...");
         jpa.withTransaction(() -> {
                //... database interactions
         });
      }
  }

}

0 ответов

Другие вопросы по тегам