<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 1,  comments - 0,  trackbacks - 0

    OracleXAException: XAER_RMERR (Internal XA Error)

    在第一次運(yùn)行范例時(shí),您可能會(huì)得到以下錯(cuò)誤:

    WSRdbDataSour I DSRA8203I: 
    Database product name : Oracle
    WSRdbDataSour I DSRA8204I: Database product version :
    Personal Oracle9i Release 9.2.0.1.0 - Production
    With the Partitioning, OLAP and Oracle Data Mining options
    JServer Release 9.2.0.1.0 - Production
    WSRdbDataSour I DSRA8205I: JDBC driver name? : Oracle JDBC driver
    WSRdbDataSour I DSRA8206I: JDBC driver version? : 9.2.0.1.0
    WSRdbXaResour E DSRA0304E:?
    XAException occurred. XAException contents and details are:
    The XA Error is??????????? : -3
    The XA Error message is??? : A resource manager error has occurred in the transaction branch.
    The Oracle Error code is?? :
    65535
    The Oracle Error message is:
    Internal XA Error
    The cause is?????????????? : null.
    WSRdbXaResour E DSRA0302E:?XAException occurred.? Error code is:
    XAER_RMERR.?
    Exception is: <null>
    RegisteredRes E WTRN0078E:
    An attempt by the transaction manager to call start
    on a transactional resource has resulted in an error.
    The error code was XAER_RMERR.
    The exception stack trace follows:
    oracle.jdbc.xa.
    OracleXAException
    ???? at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:1157)
    ???? at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:295)
    ???? at com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl.start(WSRdbXaResourceImpl.java:927)
    ???? at com.ibm.ejs.j2c.XATransactionWrapper.start(XATransactionWrapper.java:1267)
    ???? at com.ibm.ws.Transaction.JTA.JTAResourceBase.start(JTAResourceBase.java:164)
    ???? at com.ibm.ws.Transaction.JTA.RegisteredResources.startRes(RegisteredResources.java:389)
    ???? at com.ibm.ws.Transaction.JTA.TransactionImpl.enlistResource(TransactionImpl.java:1903)
    ???? at com.ibm.ws.Transaction.JTA.TranManagerSet.enlist(TranManagerSet.java:494)
    . . .

    該錯(cuò)誤是因?yàn)槭聞?wù)管理程序不能將事務(wù)轉(zhuǎn)換為 XA 事務(wù)。Oracle 明確的返回錯(cuò)誤 XAER_RMERR ,錯(cuò)誤代碼編號(hào)為 65535。 ORA-65535 不是一個(gè)有效錯(cuò)誤代碼,并且 XAER_RMERR 實(shí)質(zhì)上意味著 XA 發(fā)生了某些錯(cuò)誤。這說(shuō)明您的 Oracle 數(shù)據(jù)庫(kù)沒(méi)有被配置為支持 XA 事務(wù)。因此,當(dāng) WebSphere Application Server 事務(wù)管理程序命令 Oracle 事務(wù)管理程序參與這個(gè) XA 事務(wù)時(shí),Oracle 拒絕該命令并拋出這個(gè)異常。

    解決方法是運(yùn)行 Oracle 安裝中包含的兩個(gè)腳本。這很可能需要通過(guò)您的 Oracle DBA 來(lái)執(zhí)行,您必須以 SYSOPERSYSDBA 身份登錄到 Oracle,以擁有足夠的權(quán)限來(lái)運(yùn)行這些腳本。這些腳本是:

    • directory: <ORACLE_HOME>\javavm\install
      • file: initxa.sql
      • file: initjvm.sql

    initxa.sql 腳本配置 XA 數(shù)據(jù)庫(kù)。一旦它成功運(yùn)行,您的數(shù)據(jù)庫(kù)就被配置為 XA。該腳本在您第一次運(yùn)行的時(shí)候可能成功。不幸的是,由于一些數(shù)據(jù)庫(kù)的內(nèi)存空間太小,該腳本也可能無(wú)法成功運(yùn)行。為修改該問(wèn)題,運(yùn)行 initjvm.sql 腳本。它可能也會(huì)運(yùn)行失敗,但是在失敗時(shí),該腳本會(huì)說(shuō)明哪個(gè)參數(shù)需要調(diào)整。參數(shù)被保存在該文件中:

    • directory: <ORACLE_HOME>\database
      • file: init<DATABASE_SID>.ora

    這個(gè)表說(shuō)明了有兩個(gè)參數(shù)的值特別需要增大。對(duì)于特定的數(shù)據(jù)庫(kù)配置可能需要調(diào)整不同的參數(shù)。

    Oracle Initialization Values

    Parameter Name Minimum Value
    java_pool_size 12000000
    shared_pool_size 24000000

    一旦 initjvm.sql 運(yùn)行成功,則 initxa.sql 就應(yīng)該也可以成功運(yùn)行。Oracle 數(shù)據(jù)庫(kù)需要重新啟動(dòng),以使修改生效。您可以重新啟動(dòng) WebSphere Studio 測(cè)試服務(wù)器并重新嘗試運(yùn)行該范例。

    XAException: XAER_RMERR (xa_recover)

    您 也許能夠很正常的運(yùn)行該范例,起碼在修改了這些問(wèn)題之后變得正常。您可以開(kāi)發(fā)通過(guò) Oracle 使用 XA 事務(wù)的應(yīng)用程序并正常運(yùn)行該程序。但是可能有一天您會(huì)發(fā)現(xiàn)無(wú)法啟動(dòng) WebSphere Application Server。該問(wèn)題的發(fā)生可能是由于您沒(méi)有正常的關(guān)閉服務(wù)器,導(dǎo)致 WebSphere 和/或 Oracle 崩潰。WebSphere 的啟動(dòng)錯(cuò)誤類似于以下所示:

    SecurityCompo I SECJ0243I: Security service started successfully
    SecurityCompo I SECJ0210I: Security enabled false
    WSRdbXaResour E DSRA0304E:?
    XAException occurred.
    XAException contents and details are: The cause is?????????????? : null.
    36185510 WSRdbXaResour E DSRA0302E:? XAException occurred.?
    Error code is:
    XAER_RMERR.? Exception is: <null>
    XARminst????? E WTRN0037W:
    The transaction service encountered an error
    on an xa_recover operation.
    The resource was J2CXAResourceInfo :
    cfName = XA Example Data Source
    configProps = [Deployed Resource Adapter Properties]
    ???? OptionC_authDataAlias ??? ?java.lang.String ?????????? ?scott
    ???? UserName ????????? ?java.lang.String ?????????? ?
    scott
    ???? Password ?????????? ?java.lang.String ?????????? ?********
    ???? TransactionResourceRegistration ?java.lang.String ?????????? ?dynamic
    ???? InactiveConnectionSupport ????????? ?java.lang.Boolean ?????? ?true
    ???? secureMode ?????? ?boolean ????????? ?true
    . . .
    The error code was XAER_RMERR. The exception stack trace follows:
    javax.transaction.xa.XAException
    ???? at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:626)
    ???? at com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl.recover(WSRdbXaResourceImpl.java:672)
    ???? at com.ibm.ws.Transaction.JTA.XARminst.recover(XARminst.java:130)
    ???? at com.ibm.ws.Transaction.JTA.XARecoveryData.recover(XARecoveryData.java:673)
    ???? at com.ibm.ws.Transaction.JTA.RecoveryManager.resync(RecoveryManager.java:1369)
    ???? at com.ibm.ws.Transaction.JTA.ResyncThread.run(RecoveryManager.java:1440)

    ApplicationMg A WSVR0200I: Starting application: IBMUTC

    該錯(cuò)誤是由于事務(wù)管理程序無(wú)法執(zhí)行 XA 恢復(fù)操作。Oracle 明確的返回錯(cuò)誤 XAER_RMERR。作為最后一個(gè)錯(cuò)誤, XAER_RMERR 指出了 XA 發(fā)生了一些問(wèn)題。這表明 WebSphere 沒(méi)有使用 Oracle 正常的關(guān)閉連接,可能是由于其中一個(gè)服務(wù)器沒(méi)有正常關(guān)閉,或者是全都沒(méi)有正常關(guān)閉。因?yàn)?WebSphere Application Server 試圖重新建立連接,則 Oracle 需要回滾進(jìn)程中的任何事務(wù),但是使用 WebSphere 登錄到數(shù)據(jù)庫(kù)的 Oracle 用戶(在本范例中是 scott )不能執(zhí)行恢復(fù)工作。

    解決方法是為 Oracle 用戶賦予權(quán)限以執(zhí)行恢復(fù)操作,特別是訪問(wèn)內(nèi)部使用的 Oracle 表以管理恢復(fù)。在 SQL Plus 中以 SYSOPERSYSDBA 身份運(yùn)行下列命令:

     grant select on DBA_PENDING_TRANSACTIONS to PUBLIC 

    如果您不希望將該權(quán)限授予所有的用戶,可以僅指定錯(cuò)誤中列出的用戶(在本范例中是 scott)。然后重新啟動(dòng)數(shù)據(jù)庫(kù),這一次您應(yīng)該能夠成功的重啟 WebSphere 服務(wù)器。

    posted on 2007-02-04 12:23 jncz 閱讀(2795) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2007年2月>
    28293031123
    45678910
    11121314151617
    18192021222324
    25262728123
    45678910

    常用鏈接

    留言簿(1)

    隨筆檔案

    搜索

    •  

    最新評(píng)論

    主站蜘蛛池模板: 亚洲狠狠婷婷综合久久久久| 美女又黄又免费的视频| 亚洲一区二区高清| 毛片免费在线观看网站| 国产猛男猛女超爽免费视频| 国产偷国产偷亚洲高清人| 91嫩草亚洲精品| 亚洲国产成人精品无码区在线观看| 日本媚薬痉挛在线观看免费| 成人免费大片免费观看网站| 热99RE久久精品这里都是精品免费 | 免费成人激情视频| 99久久婷婷免费国产综合精品| 亚洲a∨无码一区二区| 亚洲毛片基地日韩毛片基地| 国产精品亚洲精品日韩已满| 亚洲?v女人的天堂在线观看| 啦啦啦www免费视频| 美女裸身网站免费看免费网站| 久久免费国产视频| 国产又黄又爽胸又大免费视频| 污污视频免费观看网站| 亚洲乱码日产精品一二三| 亚洲在成人网在线看| 91精品国产亚洲爽啪在线观看| 亚洲国产精品无码专区| 日日噜噜噜噜夜夜爽亚洲精品 | 亚洲综合区图片小说区| 亚洲成在人线av| 亚洲中文字幕无码中文字在线| 亚洲欧洲日产国码高潮αv| 波多野结衣中文一区二区免费| 免费国产怡红院在线观看| 国产精品嫩草影院免费| 免费在线不卡视频| 日韩精品成人亚洲专区| 亚洲AV无码乱码精品国产| jjzz亚洲亚洲女人| 国产成人精品曰本亚洲79ren| 久久精品国产亚洲7777| 亚洲日韩欧洲乱码AV夜夜摸|