bean-managed-transactions

    0熱度

    2回答

    我正在Glassfish 3.1.1上運行Oracle數據庫,並且遇到了無法回滾的交易問題,但僅限於目前的特定環境。相同的應用程序在其他機器上按預期工作。但是,同一臺機器上的兩個獨立的Glassfish域會受到影響。 在受影響的環境中,我在EJB中引發RuntimeException的容器管理事務(CMT)和帶有UserTransaction#rollback()的Bean管理事務(BMT)的結果

    2熱度

    1回答

    Seam建議使用擴展持久上下文在有狀態會話Bean,以便擁有Seam管理的持久性。 我不清楚上述建議是否會影響我們希望進行Seam管理的交易的方式。這是因爲我們的架構不同。我們有一個無國籍 EJB下面的持久化上下文: @Stateless @TransactionAttribute(TransactionAttributeType.REQUIRED) public class CrudServ

    3熱度

    2回答

    首先我的問題是java中Transaction API的需求是什麼?給我一個實際的例子? Container Managed Transaction和Bean Managed Transaction是什麼意思? 聲明式交易和程序化交易之間的區別? 請幫我提前

    1熱度

    1回答

    此方案使用CMT的無狀態會話bean工作: 無狀態會話bean與CMT,一種方法標註了@TransactionAttribute(TransactionAttributeType.MANDATORY)。在此方法中,使用XA數據源和普通JDBC將記錄寫入RDBMS。 的獨立客戶端(獨立的JVM,命令行Java應用程序)正從應用程序服務器(通過JNDI查找)一個UserTransaction, 開始交

    16熱度

    3回答

    我有bean管理的事務無狀態Bean和方法是這樣的: @Stateless @TransactionManagement(TransactionManagementType.BEAN) public class ... { @Resource private UserTransaction ut; @EJB private OtherStateless

    0熱度

    1回答

    我有兩個無狀態EJB。 一個使用容器管理的事務,另一個使用bean管理。從容器管理的EJB中,我調用一個bean管理的EJB的方法。 public class firstEJB{ public void myMethod(){ ejb.longRunningMethod(); } @EJB private secondEJB ejb; }

    0熱度

    1回答

    我有一個使用容器管理持久性的JSF/EJB/JPA應用程序。有一種情況是通過HTTP向外部服務發起呼叫,其中有一個費用,這個費用被分配回請求用戶。在當前實現中,通過在後臺定期運行 的EJB定時器方法執行進行HTTP請求的過程。 計時器方法可能不得不在一次調用中處理多個請求,但每個請求需要獨立處理,獨立於將 成本分配給用戶,也就是說。如果用戶A沒有足夠的積分購買 書籍,則這阻止了用戶B成功購買了書籍

    0熱度

    1回答

    在會話bean中使用CMT時,我們在哪裏提交事務? 使用REQUIRES_NEW屬性容器創建一個新的事務並且呼叫者事務被暫停 只需更好地理解REQUIRES_NEW,它是否通過將事務與新連接相關聯來實現上述行爲。一旦完成當前的 交易,它會假設上一次連接? 當提交發生新的事務? 有人可以指出我使用JDBC的sesion bean的簡短實現的CMT和BMT。 基本上看我們如何獲得連接,提交,在CMT和

    1熱度

    1回答

    事務語義和狀態滿度在EJB3中被視爲實現細節。 實現可以決定是使用bean還是容器管理的事務。 它可以決定容器管理事務的類型。它可以決定它是滿狀態還是無狀態。 但從邏輯上講,這些是重要的接口細節。例如:(a)使用bean管理事務的bean不能使用容器管理事務調用bean。 (b)無狀態bean不能調用狀態滿bean。 當提供一個EJB3接口時,你不知道它需要什麼樣的事務語義。同樣,你也不知道它是否

    1熱度

    1回答

    我是EJB新手。我讀過豆管理事務(BMT)的一個副作用,就是如果我們調用另一個BMT bean的方法,事務不會傳播。 但由於第三個ACID屬性(隔離)是否意味着第二個方法(內部)不會看到第一個方法(外部)中所做的更改?