2016-11-07 9 views
0

Я пытался понять, как транзакции, управляемые контейнером, обрабатываются для асинхронного клиента jax-rs в JBOSS.Как обрабатывается транзакция в JBOSS для асинхронного клиента jax-rs?

Если в транзакции в JBOSS выполняется следующий код, выполняется ли такая же транзакция, когда асинхронный ответ получен в другом потоке? Или JBOSS завершает транзакцию, когда запрашивающий поток завершается (ответ приходит на другой поток)?

Client client = ClientBuilder.newClient(); 
final WebTarget target = client.target("http://quote.com/quote/RHT"); 
target.request().async().get(new InvocationCallback<String> { 

    public void completed(String quote) { 
     System.out.println("RHT: " + quote); 
    } 

    public void failed(Throwable t) {} 
} 

ответ

0

Основываясь на эксперименте, транзакция продолжается до тех пор, пока операция async не будет завершена.