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

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

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

    哎諍

    從此不能再哎諍--無(wú)聊的人,喜歡無(wú)病呻吟
    posts - 11, comments - 11, trackbacks - 0, articles - 0
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    前言

    ??? 本人所在項(xiàng)目中,由于我們的系統(tǒng)將業(yè)務(wù)邏輯單獨(dú)部署,以下稱(chēng)之為EJB層,和普通的WEB層相對(duì)獨(dú)立。從 WEB 層調(diào)用 EJB 層,通過(guò) Command 架構(gòu),其包含的 EJB 調(diào)用就是事務(wù)性質(zhì)的,所以我們 EJB 層再調(diào)用其它第三方提供的 EJB 接口時(shí),就經(jīng)常會(huì)出現(xiàn)一些莫名其妙的錯(cuò)誤,以下略作收集。

    1 、錯(cuò)誤現(xiàn)象(在被調(diào)用的 EJB 服務(wù)器屏幕上出現(xiàn)):

    <2005-1-20 下午 04 時(shí) 14 46 CST> <Error> <Security> <BEA-090513> <ServerIdentity failed validation, downgrading to anonymous.>

    <2005-1-20 下午 04 時(shí) 14 46 CST> <Error> <JTA> <BEA-110200> <User [<anonymous>] is not authorized to invoke startCommit on a transaction branch.>

    分析:

    這種異常是跨域傳播事務(wù)造成的 . 一定要傳播事務(wù)的話(huà) , 必須設(shè)置域信任 , 沒(méi)有其他辦法 . 但是域信任有相關(guān)的安全隱患 , 當(dāng)然對(duì)于大部分非關(guān)鍵業(yè)務(wù)應(yīng)用來(lái)說(shuō)也無(wú)所謂了 .

    具體設(shè)置方法為, domain node --> View Domain-wide Security Settings --> Configuration --> Advanced --> Enable Generated Credential --> Credential 中輸入密碼,兩個(gè) domain 的這個(gè)密碼要完全一致,然后重新啟動(dòng) server 就可以了。

    2 、錯(cuò)誤現(xiàn)象(在調(diào)用方的 EJB 屏幕上出現(xiàn)):

    <2005-11-4 下午 01 時(shí) 41 36 CST> <Error> <EJB> <BEA-010026> <Exception occurredduring commit of transaction Name=[EJB cn.com.jdls.foundation.architectures.comm

    and.ejb.TaxCommandBean.executeCommand(cn.com.jdls.foundation.architectures.command.commands.BaseCommand)],Xid=BEA1-0021A70EC385C5407B0E(31591114),Status=Committing,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=121,seconds left=0,XAServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceImpl]=(ServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceImpl]=(state=committed,assigned=ejbserver),xar=weblogic.jdbc.wrapper.JTSXAResourceImpl@1326f69,re-Registered = false),SCInfo[mydomain+ejbserver]=(state=committed),SCInfo[dmctais+app1]=(state=committing),properties=({weblogic.transaction.name=[EJB cn.com.jdls.foundation.architectures.command.ejb.TaxCommandBean.executeCommand(cn.com.jdls.foundation.architectures.command.commands.BaseCommand)], weblogic.jdbc=t3://92.16.16.43:6517}),local properties=({modifiedListeners=[]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=ejbserver+92.16.16.43:6517+mydomain+t3+, XAResources={},NonXAResources={})],CoordinatorURL=ejbserver+92.16.16.43:6517+mydomain+t3+): javax.transaction.SystemException: Timeout during commit processing

    分析:

    這種異常是由于 EJB 被調(diào)用方,通常具有記憶功能,對(duì)于調(diào)用它接口的遠(yuǎn)程 EJB 服務(wù)和相應(yīng)的 IP 以及 Port 都會(huì)記錄在內(nèi)存,如果下次相同的 EJB 服務(wù)來(lái)調(diào)用它的時(shí)候,它就會(huì)檢測(cè)內(nèi)存中該 EJB 服務(wù)對(duì)應(yīng)的 IP/Port 是否和當(dāng)前的實(shí)際情況相符,如果不符的話(huà),就會(huì)出現(xiàn)這種錯(cuò)誤。

    這種情況目前在我們 系統(tǒng)中,碰到的兩種典型的案例就是:一,我們的 EJB 服務(wù)器上有雙網(wǎng)卡,本來(lái)調(diào)用 某第三方 EJB 接口很正常,但是有次禁用了其中一個(gè)沒(méi)插網(wǎng)線(xiàn)的網(wǎng)卡后,就出現(xiàn)這種錯(cuò)誤,因?yàn)楸徽{(diào)用方 EJB 服務(wù)已經(jīng)記住了我們的 EJB 服務(wù)對(duì)應(yīng)的 IP Port ;二、本來(lái)我們的 EJB 服務(wù)器,調(diào)用另一個(gè) 第三方 EJB 接口也很正常,但是有次為了測(cè)試的需要,又在另外一臺(tái)服務(wù)器上,復(fù)制了一份完全一樣的系統(tǒng)環(huán)境,也連接到同一個(gè) 第三方EJB 測(cè)試服務(wù)器進(jìn)行測(cè)試,結(jié)果后一臺(tái)調(diào)用的時(shí)候就出現(xiàn)了這種錯(cuò)誤,因?yàn)楸徽{(diào)用方 EJB 服務(wù)已經(jīng)記住了我們的 EJB 服務(wù),其對(duì)應(yīng)的 IP/Port 應(yīng)該是前一臺(tái)服務(wù)器。

    對(duì)于這種情況,簡(jiǎn)單的處理辦法就是,將被調(diào)用方的 EJB 服務(wù)重啟一下,則它內(nèi)存中的記錄就會(huì)清除,下次就會(huì)記住最新的 EJB 服務(wù)和相應(yīng)的 IP/Port 。

    但是針對(duì)我們 系統(tǒng)來(lái)說(shuō),通常我們系統(tǒng)調(diào)用的第三方的 EJB 接口, 往往不能隨便重啟 第三方 服務(wù),所以變通的辦法,就是將要使用的我們系統(tǒng)中,將涉及到的 每個(gè) WEBLOGIC 域服務(wù)器對(duì)應(yīng)的 server 名字都改掉,這樣被調(diào)用方就不會(huì)在內(nèi)存中找到相應(yīng)的記錄,因此也就不會(huì)出現(xiàn)這種莫名的調(diào)用出錯(cuò)問(wèn)題。 同時(shí)將域根目錄下的臨時(shí)目錄全部刪除,再重新啟動(dòng)服務(wù)應(yīng)該即可生效。

    總結(jié)
    以上所述都是本人所在項(xiàng)目碰到的問(wèn)題,可能并不一定具有共性,也不全面,所以大家碰到的莫名其妙的錯(cuò)誤,也希望貼出來(lái),共享看看?


    評(píng)論

    # re: Weblogic域間調(diào)用EJB常見(jiàn)事務(wù)錯(cuò)誤  回復(fù)  更多評(píng)論   

    2008-08-25 14:45 by susu
    這篇文章幫了我很大的忙,謝了。^_^

    # re: Weblogic域間調(diào)用EJB常見(jiàn)事務(wù)錯(cuò)誤  回復(fù)  更多評(píng)論   

    2014-06-09 11:31 by 小笨
    這篇文章幫了我很大的忙,謝了。^_^
    主站蜘蛛池模板: 国产精品麻豆免费版| 在线观看亚洲免费视频| 久草视频在线免费| 亚洲中文字幕乱码一区| 亚洲中文字幕无码爆乳av中文| a级毛片在线免费看| 亚洲国产情侣一区二区三区| 亚洲AV日韩精品一区二区三区| 99精品在线免费观看| 亚洲AV无码AV男人的天堂不卡| 亚洲国产精品国自产拍AV| 成人在线视频免费| a级毛片免费全部播放| 亚洲免费福利在线视频| 伊人久久大香线蕉亚洲| 操美女视频免费网站| 日本高清不卡aⅴ免费网站| 亚洲欧美日韩综合久久久| 亚洲AV中文无码乱人伦下载 | 国内精品免费麻豆网站91麻豆| 激情婷婷成人亚洲综合| 亚洲综合亚洲国产尤物| 亚洲精品色婷婷在线影院| 日本一道在线日本一道高清不卡免费| 日韩精品视频免费网址| 久久久WWW免费人成精品| 亚洲午夜电影在线观看| 亚洲免费日韩无码系列| 中文字幕av无码无卡免费| GOGOGO免费观看国语| 亚洲aⅴ无码专区在线观看| 亚洲福利在线观看| 亚洲综合区小说区激情区| 成年女人免费碰碰视频| 120秒男女动态视频免费| 大妹子影视剧在线观看全集免费| 亚洲AV成人精品日韩一区| 国产亚洲精品影视在线| 亚洲一区二区三区首页| 亚洲日本乱码在线观看| 亚洲国产成人爱av在线播放|