Вложенные транзакции в JBoss/WildFly с помощью Spring BootJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Вложенные транзакции в JBoss/WildFly с помощью Spring Boot

Сообщение Anonymous »

У нас есть необходимость использовать вложенные транзакции в нашем приложении. Мы используем JBoss 7.4, Spring Boot и Postgres.
Я пробовал кое-что, о чем расскажу ниже, но все равно получаю это исключение:

Код: Выделить всё

org.springframework.transaction.NestedTransactionNotSupportedException: JTA implementation does not support nested transactions
Основываясь на моем исследовании, JBoss/Wildfly не поддерживает вложенные транзакции «из коробки». Чтобы получить поддержку вложенных транзакций, вы должны настроить JBoss для использования JTS. Ниже приведена конфигурация, которую я использовал для настройки JTS и источника данных.
Из интерфейса командной строки я использовал следующие команды для настройки идентификатора узла:
включите полные транзакции IIOP, включите СТС:

Код: Выделить всё

    /system-property=jboss.tx.node.id:add(value="Node1234")

/subsystem=iiop-openjdk:write-attribute(name=transactions,value=full)
/subsystem=transactions:write-attribute(name=jts,value=true)
/subsystem=transactions:write-attribute(name=node-identifier,value="${jboss.tx.node.id}")
Это приводит к следующей конфигурации:

Код: Выделить всё

    


...





...











Мой источник данных настроен как:

Код: Выделить всё

    

jdbc:postgresql://myServer/myDB

postgresql

someuser
somepassword


И мой драйвер настроен так:

Код: Выделить всё

  

org.postgresql.xa.PGXADataSource


Для проверки я написал небольшой сервисный класс, который выглядит вот так...

Код: Выделить всё

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

@Service
public class NestedTransService {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
NestedTransService self;

@Transactional
public void doSomeWork() {
logger.info("******** I'm doing some work in the outer transaction!");
self.doSomeSubWork();

}

@Transactional(propagation = Propagation.NESTED)
public void doSomeSubWork() {

logger.info("****** Now I'm doing done work in the nested transaction");

}
}
При вызове self.doSomeSubWork() происходит сбой с помощью:

Код: Выделить всё

20:33:18,755 ERROR [com.myOrganization.GlobalExceptionHandler] (default task-1) stacktrace: org.springframework.transaction.NestedTransactionNotSupportedException: JTA implementation does not support nested transactions;  nested exception is javax.transaction.NotSupportedException: WFTXN0001:  A   t r a n s a c t i o n   i s   a l r e a d y   i n   p r o g r e s s < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . j t a . J t a T r a n s a c t i o n M a n a g e r . d o B e g i n ( J t a T r a n s a c t i o n M a n a g e r . j a v a : 8 5 2 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . s u p p o r t . A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . s t a r t T r a n s a c t i o n ( A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . j a v a : 4 0 0 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . s u p p o r t . A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . h a n d l e E x i s t i n g T r a n s a c t i o n ( A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . j a v a : 4 6 4 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . s u p p o r t . A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . g e t T r a n s a c t i o n ( A b s t r a c t P l a t f o r m T r a n s a c t i o n M a n a g e r . j a v a : 3 5 2 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . i n t e r c e p t o r . T r a n s a c t i o n A s p e c t S u p p o r t . c r e a t e T r a n s a c t i o n I f N e c e s s a r y ( T r a n s a c t i o n A s p e c t S u p p o r t . j a v a : 5 7 4 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . i n t e r c e p t o r . T r a n s a c t i o n A s p e c t S u p p o r t . i n v o k e W i t h i n T r a n s a c t i o n ( T r a n s a c t i o n A s p e c t S u p p o r t . j a v a : 3 6 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . i n t e r c e p t o r . T r a n s a c t i o n I n t e r c e p t o r . i n v o k e ( T r a n s a c t i o n I n t e r c e p t o r . j a v a : 1 1 8 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . R e f l e c t i v e M e t h o d I n v o c a t i o n . p r o c e e d ( R e f l e c t i v e M e t h o d I n v o c a t i o n . j a v a : 1 8 6 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . C g l i b A o p P r o x y $ C g l i b M e t h o d I n v o c a t i o n . p r o c e e d ( C g l i b A o p P r o x y . j a v a : 7 4 9 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . C g l i b A o p P r o x y $ D y n a m i c A d v i s e d I n t e r c e p t o r . i n t e r c e p t ( C g l i b A o p P r o x y . j a v a : 6 9 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / c o m . m y O r g a n i z a t i o n . N e s t e d T r a n s S e r v i c e $ $ E n h a n c e r B y S p r i n g C G L I B $ $ a 7 1 0 d c e 3 . d o S o m e I n t e r i o r W o r k ( & l t ; g e n e r a t e d & g t ; ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / c o m . m y O r g a n i z a t i o n . N e s t e d T r a n s S e r v i c e . d o S o m e W o r k ( N e s t e d T r a n s S e r v i c e . j a v a : 2 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / c o m . m y O r g a n i z a t i o n . N e s t e d T r a n s S e r v i c e $ $ F a s t C l a s s B y S p r i n g C G L I B $ $ 3 f b b 8 7 6 3 . i n v o k e ( & l t ; g e n e r a t e d & g t ; ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . c g l i b . p r o x y . M e t h o d P r o x y . i n v o k e ( M e t h o d P r o x y . j a v a : 2 1 8 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . C g l i b A o p P r o x y $ C g l i b M e t h o d I n v o c a t i o n . i n v o k e J o i n p o i n t ( C g l i b A o p P r o x y . j a v a : 7 7 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . R e f l e c t i v e M e t h o d I n v o c a t i o n . p r o c e e d ( R e f l e c t i v e M e t h o d I n v o c a t i o n . j a v a : 1 6 3 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . C g l i b A o p P r o x y $ C g l i b M e t h o d I n v o c a t i o n . p r o c e e d ( C g l i b A o p P r o x y . j a v a : 7 4 9 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . i n t e r c e p t o r . T r a n s a c t i o n A s p e c t S u p p o r t . i n v o k e W i t h i n T r a n s a c t i o n ( T r a n s a c t i o n A s p e c t S u p p o r t . j a v a : 3 6 7 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . t r a n s a c t i o n . i n t e r c e p t o r . T r a n s a c t i o n I n t e r c e p t o r . i n v o k e ( T r a n s a c t i o n I n t e r c e p t o r . j a v a : 1 1 8 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . R e f l e c t i v e M e t h o d I n v o c a t i o n . p r o c e e d ( R e f l e c t i v e M e t h o d I n v o c a t i o n . j a v a : 1 8 6 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . C g l i b A o p P r o x y $ C g l i b M e t h o d I n v o c a t i o n . p r o c e e d ( C g l i b A o p P r o x y . j a v a : 7 4 9 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . a o p . f r a m e w o r k . C g l i b A o p P r o x y $ D y n a m i c A d v i s e d I n t e r c e p t o r . i n t e r c e p t ( C g l i b A o p P r o x y . j a v a : 6 9 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / c o m . m y O r g a n i z a t i o n . N e s t e d T r a n s S e r v i c e $ $ E n h a n c e r B y S p r i n g C G L I B $ $ a 7 1 0 d c e 3 . d o S o m e W o r k ( & l t ; g e n e r a t e d & g t ; ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / c o m . m y O r g a n i z a t i o n . N e s t e d T r a n s C o n t r o l l e r . d o I t ( N e s t e d T r a n s C o n t r o l l e r . j a v a : 2 4 ) < b r   / >                 a t   j a v a . b a s e / j d k . i n t e r n a l . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e 0 ( N a t i v e   M e t h o d ) < b r   / >                 a t   j a v a . b a s e / j d k . i n t e r n a l . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e ( N a t i v e M e t h o d A c c e s s o r I m p l . j a v a : 6 2 ) < b r   / >                 a t   j a v a . b a s e / j d k . i n t e r n a l . r e f l e c t . D e l e g a t i n g M e t h o d A c c e s s o r I m p l . i n v o k e ( D e l e g a t i n g M e t h o d A c c e s s o r I m p l . j a v a : 4 3 ) < b r   / >                 a t   j a v a . b a s e / j a v a . l a n g . r e f l e c t . M e t h o d . i n v o k e ( M e t h o d . j a v a : 5 6 6 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . m e t h o d . s u p p o r t . I n v o c a b l e H a n d l e r M e t h o d . d o I n v o k e ( I n v o c a b l e H a n d l e r M e t h o d . j a v a : 1 9 0 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . m e t h o d . s u p p o r t . I n v o c a b l e H a n d l e r M e t h o d . i n v o k e F o r R e q u e s t ( I n v o c a b l e H a n d l e r M e t h o d . j a v a : 1 3 8 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . m v c . m e t h o d . a n n o t a t i o n . S e r v l e t I n v o c a b l e H a n d l e r M e t h o d . i n v o k e A n d H a n d l e ( S e r v l e t I n v o c a b l e H a n d l e r M e t h o d . j a v a : 1 0 5 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . m v c . m e t h o d . a n n o t a t i o n . R e q u e s t M a p p i n g H a n d l e r A d a p t e r . i n v o k e H a n d l e r M e t h o d ( R e q u e s t M a p p i n g H a n d l e r A d a p t e r . j a v a : 8 7 8 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . m v c . m e t h o d . a n n o t a t i o n . R e q u e s t M a p p i n g H a n d l e r A d a p t e r . h a n d l e I n t e r n a l ( R e q u e s t M a p p i n g H a n d l e r A d a p t e r . j a v a : 7 9 2 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . m v c . m e t h o d . A b s t r a c t H a n d l e r M e t h o d A d a p t e r . h a n d l e ( A b s t r a c t H a n d l e r M e t h o d A d a p t e r . j a v a : 8 7 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . D i s p a t c h e r S e r v l e t . d o D i s p a t c h ( D i s p a t c h e r S e r v l e t . j a v a : 1 0 4 0 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . D i s p a t c h e r S e r v l e t . d o S e r v i c e ( D i s p a t c h e r S e r v l e t . j a v a : 9 4 3 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . F r a m e w o r k S e r v l e t . p r o c e s s R e q u e s t ( F r a m e w o r k S e r v l e t . j a v a : 1 0 0 6 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . F r a m e w o r k S e r v l e t . d o G e t ( F r a m e w o r k S e r v l e t . j a v a : 8 9 8 ) < b r   / >                 a t   j a v a x . s e r v l e t . a p i @ 2 . 0 . 0 . F i n a l - r e d h a t - 0 0 0 0 1 / / j a v a x . s e r v l e t . h t t p . H t t p S e r v l e t . s e r v i c e ( H t t p S e r v l e t . j a v a : 5 0 3 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . F r a m e w o r k S e r v l e t . s e r v i c e ( F r a m e w o r k S e r v l e t . j a v a : 8 8 3 ) < b r   / >                 a t   j a v a x . s e r v l e t . a p i @ 2 . 0 . 0 . F i n a l - r e d h a t - 0 0 0 0 1 / / j a v a x . s e r v l e t . h t t p . H t t p S e r v l e t . s e r v i c e ( H t t p S e r v l e t . j a v a : 5 9 0 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . S e r v l e t H a n d l e r . h a n d l e R e q u e s t ( S e r v l e t H a n d l e r . j a v a : 7 4 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . F i l t e r H a n d l e r $ F i l t e r C h a i n I m p l . d o F i l t e r ( F i l t e r H a n d l e r . j a v a : 1 2 9 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / c o m . m y O r g a n i z a t i o n . F i l t e r R e q u e s t . d o F i l t e r ( F i l t e r R e q u e s t . j a v a : 1 3 2 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . c o r e . M a n a g e d F i l t e r . d o F i l t e r ( M a n a g e d F i l t e r . j a v a : 6 1 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . F i l t e r H a n d l e r $ F i l t e r C h a i n I m p l . d o F i l t e r ( F i l t e r H a n d l e r . j a v a : 1 3 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . f i l t e r . R e q u e s t C o n t e x t F i l t e r . d o F i l t e r I n t e r n a l ( R e q u e s t C o n t e x t F i l t e r . j a v a : 1 0 0 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . f i l t e r . O n c e P e r R e q u e s t F i l t e r . d o F i l t e r ( O n c e P e r R e q u e s t F i l t e r . j a v a : 1 1 9 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . c o r e . M a n a g e d F i l t e r . d o F i l t e r ( M a n a g e d F i l t e r . j a v a : 6 1 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . F i l t e r H a n d l e r $ F i l t e r C h a i n I m p l . d o F i l t e r ( F i l t e r H a n d l e r . j a v a : 1 3 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . f i l t e r . F o r m C o n t e n t F i l t e r . d o F i l t e r I n t e r n a l ( F o r m C o n t e n t F i l t e r . j a v a : 9 3 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . f i l t e r . O n c e P e r R e q u e s t F i l t e r . d o F i l t e r ( O n c e P e r R e q u e s t F i l t e r . j a v a : 1 1 9 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . c o r e . M a n a g e d F i l t e r . d o F i l t e r ( M a n a g e d F i l t e r . j a v a : 6 1 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . F i l t e r H a n d l e r $ F i l t e r C h a i n I m p l . d o F i l t e r ( F i l t e r H a n d l e r . j a v a : 1 3 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . f i l t e r . C h a r a c t e r E n c o d i n g F i l t e r . d o F i l t e r I n t e r n a l ( C h a r a c t e r E n c o d i n g F i l t e r . j a v a : 2 0 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / o r g . s p r i n g f r a m e w o r k . w e b . f i l t e r . O n c e P e r R e q u e s t F i l t e r . d o F i l t e r ( O n c e P e r R e q u e s t F i l t e r . j a v a : 1 1 9 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . c o r e . M a n a g e d F i l t e r . d o F i l t e r ( M a n a g e d F i l t e r . j a v a : 6 1 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . F i l t e r H a n d l e r $ F i l t e r C h a i n I m p l . d o F i l t e r ( F i l t e r H a n d l e r . j a v a : 1 3 1 ) < b r   / >                 a t   d e p l o y m e n t . m y - a p p . w a r / / c o m . m y O r g a n i z a t i o n . F i l t e r R e q u e s t . d o F i l t e r ( F i l t e r R e q u e s t . j a v a : 1 3 2 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . c o r e . M a n a g e d F i l t e r . d o F i l t e r ( M a n a g e d F i l t e r . j a v a : 6 1 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . F i l t e r H a n d l e r $ F i l t e r C h a i n I m p l . d o F i l t e r ( F i l t e r H a n d l e r . j a v a : 1 3 1 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . F i l t e r H a n d l e r . h a n d l e R e q u e s t ( F i l t e r H a n d l e r . j a v a : 8 4 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . s e c u r i t y . S e r v l e t S e c u r i t y R o l e H a n d l e r . h a n d l e R e q u e s t ( S e r v l e t S e c u r i t y R o l e H a n d l e r . j a v a : 6 2 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . S e r v l e t C h a i n $ 1 . h a n d l e R e q u e s t ( S e r v l e t C h a i n . j a v a : 6 8 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . S e r v l e t D i s p a t c h i n g H a n d l e r . h a n d l e R e q u e s t ( S e r v l e t D i s p a t c h i n g H a n d l e r . j a v a : 3 6 ) < b r   / >                 a t   o r g . w i l d f l y . e x t e n s i o n . u n d e r t o w @ 7 . 4 . 0 . G A - r e d h a t - 0 0 0 0 5 / / o r g . w i l d f l y . e x t e n s i o n . u n d e r t o w . s e c u r i t y . S e c u r i t y C o n t e x t A s s o c i a t i o n H a n d l e r . h a n d l e R e q u e s t ( S e c u r i t y C o n t e x t A s s o c i a t i o n H a n d l e r . j a v a : 7 8 ) < b r   / >                 a t   i o . u n d e r t o w . c o r e @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v e r . h a n d l e r s . P r e d i c a t e H a n d l e r . h a n d l e R e q u e s t ( P r e d i c a t e H a n d l e r . j a v a : 4 3 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . R e d i r e c t D i r H a n d l e r . h a n d l e R e q u e s t ( R e d i r e c t D i r H a n d l e r . j a v a : 6 8 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . s e c u r i t y . S S L I n f o r m a t i o n A s s o c i a t i o n H a n d l e r . h a n d l e R e q u e s t ( S S L I n f o r m a t i o n A s s o c i a t i o n H a n d l e r . j a v a : 1 1 7 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . s e c u r i t y . S e r v l e t A u t h e n t i c a t i o n C a l l H a n d l e r . h a n d l e R e q u e s t ( S e r v l e t A u t h e n t i c a t i o n C a l l H a n d l e r . j a v a : 5 7 ) < b r   / >                 a t   i o . u n d e r t o w . c o r e @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v e r . h a n d l e r s . P r e d i c a t e H a n d l e r . h a n d l e R e q u e s t ( P r e d i c a t e H a n d l e r . j a v a : 4 3 ) < b r   / >                 a t   i o . u n d e r t o w . c o r e @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e c u r i t y . h a n d l e r s . A b s t r a c t C o n f i d e n t i a l i t y H a n d l e r . h a n d l e R e q u e s t ( A b s t r a c t C o n f i d e n t i a l i t y H a n d l e r . j a v a : 4 6 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . s e c u r i t y . S e r v l e t C o n f i d e n t i a l i t y C o n s t r a i n t H a n d l e r . h a n d l e R e q u e s t ( S e r v l e t C o n f i d e n t i a l i t y C o n s t r a i n t H a n d l e r . j a v a : 6 4 ) < b r   / >                 a t   i o . u n d e r t o w . c o r e @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e c u r i t y . h a n d l e r s . A u t h e n t i c a t i o n M e c h a n i s m s H a n d l e r . h a n d l e R e q u e s t ( A u t h e n t i c a t i o n M e c h a n i s m s H a n d l e r . j a v a : 6 0 ) < b r   / >                 a t   i o . u n d e r t o w . s e r v l e t @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e r v l e t . h a n d l e r s . s e c u r i t y . C a c h e d A u t h e n t i c a t e d S e s s i o n H a n d l e r . h a n d l e R e q u e s t ( C a c h e d A u t h e n t i c a t e d S e s s i o n H a n d l e r . j a v a : 7 7 ) < b r   / >                 a t   i o . u n d e r t o w . c o r e @ 2 . 2 . 5 . F i n a l - r e d h a t - 0 0 0 0 1 / / i o . u n d e r t o w . s e c u r i t y . h a n d l e r s . N o t i f i c a t i o n R e c e i v e r H a n d l e r . h a n d l e R e q u e s t ( N o t i f i c a t i o n R e c e i v e r H a n d l e r . j a v a : 5 0 )
at io.undertow.core@2.2.5.Final-redhat-00001//io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
at io.undertow.core@2.2.5.Final-redhat-00001//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at org.wildfly.extension.undertow@7.4.0.GA-redhat-00005//org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
at io.undertow.core@2.2.5.Final-redhat-00001//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at org.wildfly.extension.undertow@7.4.0.GA-redhat-00005//org.wildfly.extension.undertow.deployment.GlobalRequestControllerHandler.handleRequest(GlobalRequestControllerHandler.java:68)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
at io.undertow.core@2.2.5.Final-redhat-00001//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:269)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:78)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:133)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:130)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
at org.wildfly.extension.undertow@7.4.0.GA-redhat-00005//org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java:105)
at org.wildfly.extension.undertow@7.4.0.GA-redhat-00005//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at org.wildfly.extension.undertow@7.4.0.GA-redhat-00005//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at org.wildfly.extension.undertow@7.4.0.GA-redhat-00005//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at org.wildfly.extension.undertow@7.4.0.GA-redhat-00005//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at org.wildfly.extension.undertow@7.4.0.GA-redhat-00005//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:78)
at io.undertow.servlet@2.2.5.Final-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:99)
at io.undertow.core@2.2.5.Final-redhat-00001//io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
at io.undertow.core@2.2.5.Final-redhat-00001//io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:841)
at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990)
at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1348)
at org.jboss.xnio@3.8.4.Final-redhat-00001//org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1280)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by:  javax.transaction.NotSupportedException: WFTXN0001: A transaction is already in progress
at org.wildfly.transaction.client@1.1.13.Final-redhat-00001//org.wildfly.transaction.client.ContextTransactionManager.begin(ContextTransactionManager.java:60)
at org.wildfly.transaction.client@1.1.13.Final-redhat-00001//org.wildfly.transaction.client.LocalUserTransaction.begin(LocalUserTransaction.java:48)
at deployment.my-app.war//org.springframework.transaction.jta.JtaTransactionManager.doJtaBegin(JtaTransactionManager.java:886)
at deployment.my-app.war//org.springframework.transaction.jta.JtaTransactionManager.doBegin(JtaTransactionManager.java:849)
... 105 more
Я безуспешно искал подсказки о том, в чем может быть проблема. Я неясно, является ли это проблемой конфигурации проблем JBoss или конфигурацией загрузки Sprint. Я был бы очень признателен за любую информацию, которую кто-либо может предоставить.

Подробнее здесь: https://stackoverflow.com/questions/783 ... pring-boot
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»