У меня есть приложение Spring с интеграцией Hibernate, развернутое на сервере JBoss локально. Я настроил приложение, используя аннотации и класс Config.java для конфигураций Spring и Hibernate.
Я получаю это предупреждение в своих журналах:
17:13:18,153 WARN spi.TypeConfiguration$Scope:273 - HHH000233: Scoping types to session factory org.hibernate.internal.SessionFactoryImpl@4945417e after already scoped org.hibernate.internal.SessionFactoryImpl@4945417e
Когда я попробовал отладить всю свою программу, я узнал о том месте в моей программе, откуда был получен журнал. В одном из моих сервлетов у меня есть следующее:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
ApplicationContext context = new AnnotationConfigApplicationContext(Config.class);
...
}
Вместо этого я пробовал использовать
@Autowired
private ApplicationContext context;
в классе, но это нарушает мое приложение.
Немного более подробное ведение журнала:
17:57:35,211 DEBUG internal.SessionFactoryImpl:292 - Instantiated session factory
17:57:35,211 DEBUG spi.TypeConfiguration:146 - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@42990ff8] to SessionFactoryImpl [org.hibernate.internal.SessionFactoryImpl@494db1a3]
17:57:35,211 DEBUG spi.TypeConfiguration:148 - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@42990ff8] to SessionFactory [org.hibernate.internal.SessionFactoryImpl@494db1a3]
17:57:35,211 WARN spi.TypeConfiguration$Scope:273 - HHH000233: Scoping types to session factory org.hibernate.internal.SessionFactoryImpl@494db1a3 after already scoped org.hibernate.internal.SessionFactoryImpl@494db1a3
17:57:35,225 TRACE internal.AbstractServiceRegistryImpl:228 - Initializing service [role=org.hibernate.persister.spi.PersisterFactory]
17:57:35,227 TRACE internal.AbstractServiceRegistryImpl:228 - Initializing service [role=org.hibernate.persister.spi.PersisterClassResolver]
Все это приводит к тому, что все мои транзакции происходят дважды, как в моих классах, так и в моей базе данных. У кого-нибудь есть идеи?
Это приложение не настроено как проект Spring MVC. На данный момент я использую Spring для интеграции с Hibermate. @PrakashAyappan
Надеюсь, это должно быть в Spring MVC для веб-приложения Spring. Я что-то упустил в понимании вашей проблемы !!!




Я чувствую, что это может быть связано с использованием аннотации Controller / RestController для создания вашей конечной точки. Не рекомендуется создавать собственные классы сервлетов в приложении Spring MVC.