Нет Будьте в спящем режиме Сессия, обязанная распараллеливать, и конфигурация не позволяет создание нетранзакционного здесь

Этот простой метод должен выполнить задание:

import re

def convert(name):
    return re.sub(r'([A-Z]*)([A-Z][a-z]+)', lambda x: (x.group(1) + '_' if x.group(1) else '') + x.group(2) + '_', name).rstrip('_').lower()
  • Мы ищем заглавные буквы, которым предшествует любое количество (или нулевых) заглавных букв, за которым следует любое количество строчных букв символы.
  • Подчеркивание помещается непосредственно перед вступлением последней заглавной буквы, найденной в группе, и ее можно разместить до этой заглавной буквы, если ей предшествуют другие заглавные буквы.
  • Если есть завершающие символы подчеркивания, удалите их.
  • Наконец, вся строка результата изменяется на нижний регистр.

(взято из здесь , см. рабочий пример онлайн )

26
задан chedine 20 July 2010 в 12:42
поделиться

2 ответа

Вы определили TransactionManager в конфигурации Spring, но пытаетесь выполнить запрос гибернации методом, который не является транзакционным. Попробуйте добавить @Transactional в свой метод или класс.

34
ответ дан 28 November 2019 в 07:31
поделиться

Я справился с этой проблемой, указав current_session_context_class в hibernate config как «thread» в соответствии с простой конфигурацией, показанной в документации конфигурации гибернации .

Но он рекомендует, чтобы его не безопасно для использования в промышленности.

Попытка добавить следующее в hibernate config также должна помочь:

<property name="current_session_context_class">org.hibernate.context.ThreadLocalSessionContext</property>

Ознакомьтесь с http://docs.jboss.org/hibernate/core/3.6/reference/en. -US / html / architect.html # architect-current-session для получения более подробной информации.

4
ответ дан Tony Rad 28 November 2019 в 07:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: