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

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

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

    itstarting:IT進(jìn)行時(shí)

    想自己所想,做自己所愛(ài)

      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      28 隨筆 :: 3 文章 :: 55 評(píng)論 :: 0 Trackbacks

    2006年10月11日 #

         摘要: Buffalo是一個(gè)前后貫通的完整的Ajax框架,目前最新的版本是2.0.1,其主頁(yè)是:
    http://buffalo.sourceforge.net/,可通過(guò)該頁(yè)面找到下載。
    不過(guò)該版本自2007年來(lái)就沒(méi)有更新了,有點(diǎn)遺憾,不管怎樣,一出來(lái)就關(guān)注到了,早前通讀過(guò)代碼,是個(gè)好作品。
    上周開(kāi)始用了些零碎的時(shí)間,重新評(píng)估并進(jìn)行了深入的研究,其目的在于通過(guò)深度掌握某個(gè)優(yōu)秀的貫穿前后端的AJAX框架,以提高自己的整體認(rèn)知感。

    Buffalo最有價(jià)值之初,個(gè)人感覺(jué)有兩點(diǎn):
    1、后端實(shí)現(xiàn)了較為完整的基于xml的xml<->object序列化反序列化協(xié)議;
    2、前端提供了適配協(xié)議的調(diào)用封裝和響應(yīng)解析機(jī)制,并基于回調(diào)機(jī)制提供編碼API。
      閱讀全文
    posted @ 2010-01-12 14:38 IT進(jìn)行時(shí) 閱讀(3065) | 評(píng)論 (0)編輯 收藏

    經(jīng)過(guò)幾個(gè)晚上的奮戰(zhàn),Hadoop-0.20.1+Ubuntu9.10實(shí)戰(zhàn)終于出爐。

    目錄:
    一、環(huán)境準(zhǔn)備 1
    二、安裝JDK6 1
    三、配置SSH 2
    四、安裝配置hadoop 4
    4.1下載及安裝 4
    4.2配置 4
    4.2.1配置$HADOOP_HOME/conf/hadoop-env.sh 4
    4.2.2配置$HADOOP_HOME/conf/core-site.xml 4
    4.2.3配置$HADOOP_HOME/conf/mapred-site.xml 5
    4.2.4格式化namenode 5
    4.3啟動(dòng)及驗(yàn)證 5
    五、跑第一個(gè)wordcount例子 7
    4.1準(zhǔn)備工作 7
    4.2運(yùn)行例子 8
    4.3看結(jié)果 11
    4.4在eclipse中調(diào)試/運(yùn)行 12
    4.5分析代碼 15
    六、改進(jìn)的wordcount例子 17
    參考 23
    FAQ 23
    1、xxx is not in the sudoers file解決方法 23
    2、/etc/sudoers is mode 0640, should be 0440怎么回事? 24
    3、如何增加ubuntu的SWAP空間? 24
    4、bin/hadoop dfs到底有哪些命令? 25

    原文和文檔我放在了javaeye,這里給個(gè)鏈接吧:
    http://itstarting.javaeye.com/blog/520985
    posted @ 2009-12-15 22:46 IT進(jìn)行時(shí) 閱讀(1708) | 評(píng)論 (1)編輯 收藏

     

                   1JDK安裝配置

        選用最新的版本6.0.

        打開(kāi)終端,執(zhí)行以下命令:

            sudo apt-get install sun-java6-jdk

        按照提示做就是了。

        配置JAVA環(huán)境變量:

            sudo gedit /etc/environment

           在其中添加如下兩行:

            CLASSPATH=.:/usr/lib/jvm/java-6-sun/lib

            JAVA_HOME=/usr/lib/jvm/java-6-sun

        執(zhí)行命令:sudo gedit /etc/jvm,在最前面加入:

           /usr/lib/jvm/java-6-sun

                   2、Tomcat安裝配置

        還是喜歡經(jīng)典的Tomcat5.5,http://tomcat.apache.org去下載。

        文件為:apache-tomcat-5.5.28.zip

        解壓縮:

        unzip /home/zhengxq/下載/apache-tomcat-5.5.28.zip -d $HOME/java

                   3Eclipse安裝配置

        下載最新的版本,并解壓縮:

        zhengxq@zhengxq-desktop:~$ tar zxf $HOME/下載/eclipse-java-galileo-SR1-linux-gtk.tar.gz -C $HOME/java

        此時(shí)直接通過(guò)$HOME/java/eclipse/eclipse即可啟動(dòng)。

        Tomcat插件是必須的,下載并解壓縮到eclipse/plugins下,重啟eclipse即可。

        下面是高級(jí)篇:)。為了建立更方便的導(dǎo)航,可以這樣:

        1、在/usr/bin目錄下創(chuàng)建一個(gè)啟動(dòng)腳本eclipse

        sudo gedit /usr/bin/eclipse

       
    然后在該文件中添加以下內(nèi)容:

        #!/bin/sh
        export MOZILLA_FIVE_HOME="/usr/lib/mozilla/"
        export ECLIPSE_HOME="/home/zhengxq/java/eclipse"
        $ECLIPSE_HOME/eclipse $*

        2
    、讓修改該腳本的權(quán)限,讓它變成可執(zhí)行:

        sudo chmod +x /usr/bin/eclipse

        3
    、在桌面或者gnome菜單中添加eclipse啟動(dòng)圖標(biāo)
       
    1)在桌面或者啟動(dòng)面板上添加圖標(biāo):
       
    在桌面(右鍵單擊桌面->創(chuàng)建啟動(dòng)器)或面板(右鍵單擊面板->添加到面板 ->定制應(yīng)用程序啟動(dòng)器)上創(chuàng)建一個(gè)新的啟動(dòng)器,然后添加下列數(shù)據(jù):
       
    名稱:Eclipse Platform
       
    命令:eclipse
       
    圖標(biāo): /home/zhengxq/java/eclipse/icon.xpm
       
    2)在Applications(應(yīng)用程序)菜單上添加一個(gè)圖標(biāo)
       
    用文本編輯器在/usr/share/applications目錄里新建一個(gè)名為eclipse.desktop的啟動(dòng)器,如下面的命令:
        sudo gedit /usr/share/applications/eclipse.desktop
       
    然后在文件中添加下列內(nèi)容:

    [Desktop Entry]
    Encoding=UTF-8
    Name=Eclipse Platform
    Comment=Eclipse IDE
    Exec=eclipse
    Icon=/home/zhengxq/java/eclipse/icon.xpm
    Terminal=false
    StartupNotify=true
    Type=Application
    Categories=Application;Development;

        保存文件,此時(shí)即可通過(guò)雙擊桌面eclipse的圖標(biāo)來(lái)運(yùn)行eclipse。

        注意: Type=Application后面絕對(duì)不能有空格,否則出不來(lái)可別抓狂。

    posted @ 2009-12-15 22:44 IT進(jìn)行時(shí) 閱讀(2167) | 評(píng)論 (1)編輯 收藏

    ——IT 進(jìn)行時(shí)(Email & MSN:zhengxianquan AT hotmail.com)

    說(shuō)在前面的話: 作為一名技術(shù)人員,喜歡通過(guò)自己的實(shí)戰(zhàn)去學(xué)習(xí),也養(yǎng)成了寫學(xué)習(xí)筆記的習(xí)慣。個(gè)人做企業(yè)應(yīng)用更多,也涉及TB級(jí)別的非結(jié)構(gòu)化數(shù)據(jù),對(duì)于Hadoop倒是第一次接觸,分布式計(jì)算總歸有用武之地。但這個(gè)筆記只能說(shuō)是自己的盲學(xué),就是簡(jiǎn)單的看看。

    Keywords:Hadoop; HDFS; 學(xué)習(xí)筆記

    目錄:
    1. 準(zhǔn)備工作 2
    1.1. Supported Platforms 2
    1.2. Hadoop需要的基礎(chǔ)東西 2
    1.3. 安裝Cygwin注意事項(xiàng) 2
    2. 單機(jī)上配置過(guò)程 3
    2.1. 配置SSH 3
    2.1.1. 配置服務(wù) 3
    2.1.2. 啟動(dòng)Cygwin sshd服務(wù) 4
    2.1.3. Setup authorization keys 5
    2.2. 修訂/配置/conf/core-site.xml 7
    2.3. 修訂/配置/conf/mapred-site.xml 9
    2.4. 修訂/配置\conf\masters和slaves 9
    2.5. 修訂/配置\conf\hadoop-env.sh 9
    2.6. 其他數(shù)據(jù)節(jié)點(diǎn)類似,重復(fù)即可 10
    3. 格式化及啟動(dòng) 10
    3.1. 啟動(dòng)命令 10
    3.2. 如何驗(yàn)證啟動(dòng)成功 11
    4. 使用及開(kāi)發(fā) 12
    4.1. 常用命令行使用方法 12
    4.2. 可以通過(guò)瀏覽器訪問(wèn) 15
    5. FAQ 16
    5.1. 為什么啟動(dòng)不了? 16
    5.2. 配置文件可能導(dǎo)致的問(wèn)題 17
    5.3. JobTracker一直有問(wèn)題? 19
    5.4. 如何驗(yàn)證配置并啟動(dòng)成功? 19
    6. 常用命令 20
    7. 參考 21

    地址:http://itstarting.javaeye.com/blog/513659
    posted @ 2009-12-15 22:43 IT進(jìn)行時(shí) 閱讀(2031) | 評(píng)論 (1)編輯 收藏

    Aalst提出了工作流有20種基本模式。

    如果不知道的可參考《Workflow Patterns-2002》

     工作流20種基本模式的理解(當(dāng)然了,后人陸續(xù)擴(kuò)展、變化,模式數(shù)量不斷變化,但萬(wàn)變不離其宗,可從這些基本模式看起)

     

    下面是我的初步分析:

    模式名稱

    模式關(guān)鍵字

    模式說(shuō)明

    Basic Control Patterns

    Sequence

    Sequence

    1

    Parallel Split

    AND Split

    2

    Synchronization

    AND Join

    3

    Exclusive Choice

    XOR Split

    4

    Simple Merge

    XOR Join

    5

    ADVANCED BRANCHING AND SYNCHRONIZATION PATTERNS

    Multiple Choice

    OR Split

    6

    Synchronizing Merge

    AND Join

    7

    Multi-merge

    OR Join(+Multi)

    8

    Discriminator

    OR Join(+Reset/Ignore)

    9

    N-out-of-M-join

    OR Join(+Multi M)

    9a,N分支,M聚合即可

    STRUCTURAL PATTERNS 

    Arbitrary Cycles[自由循環(huán)]

    XOR Split

    10

    Implicit Termination

    Multi(OR/AND) Split End

    11

    PATTERNS INVOLVING MULTIPLE INSTANCES

    MI without synchronization

    Runtime independent thread by condition

    12,在運(yùn)行期創(chuàng)建獨(dú)立實(shí)例(線程、程序等)

    MI with a priori known design time knowledge

    Design time priori Instance

    13,設(shè)計(jì)期多實(shí)例,且需全部完成

    MI with a priori known runtime knowledge

    Runtime multi Instance by condition/free

    14,運(yùn)行期可基于條件創(chuàng)建多實(shí)例

    MI with no a priori runtime knowledge

    Runtime multi Instance free by people

    15,運(yùn)行期可手工隨意創(chuàng)建多實(shí)例

    STATE-BASED PATTERNS 

    Deferred Choice

    XOR Split(By choice)

    16,“推著走”流程,或基于既定條件分支

    Interleaved Parallel Routing

    OR Split + OR Join, Parallel

    17,多分支聚合,分支執(zhí)行順序由運(yùn)行期確定

    Milestone

    Wait by Milestone

    18,在“里程碑”節(jié)點(diǎn)等待

    CANCELLATION PATTERNS   

    Cancel Activity

    Cancel in specified Activity

    19,在指定的活動(dòng)取消

    Cancel Case

    Cancel Anywhere/Anytime

    20,任意時(shí)候可取消


    可以看到,其實(shí)很多是類似的,這為下一步的工作流引擎需求、設(shè)計(jì)打下基礎(chǔ)。

    拋磚引玉,供大家參考。

    posted @ 2009-12-15 22:38 IT進(jìn)行時(shí) 閱讀(1656) | 評(píng)論 (0)編輯 收藏

    1、基于現(xiàn)成的某個(gè)Style進(jìn)行針對(duì)性的開(kāi)發(fā)(這個(gè)開(kāi)發(fā)說(shuō)白了就是結(jié)合自己論文格式的要求不停的重復(fù):修改<->驗(yàn)證),保存為自己的Style(如“鄭式.ens”);
    2、把Style文件(如“鄭式.ens”)放到\EndNote9\Styles目錄下;
    3、重新啟用EndNote;
    4、打開(kāi)Open Style Manager…
    5、選中我的Style(如“鄭式.ens”),此時(shí)通過(guò)選中“鄭氏”啟用樣式:
     

     

    附上樣式文件,適合浙大碩士論文的編寫要求(其他學(xué)校是否符合,未知):/Files/itstarting/zheng.rar

    posted @ 2009-08-31 23:14 IT進(jìn)行時(shí) 閱讀(505) | 評(píng)論 (0)編輯 收藏

         摘要: 無(wú)論是商業(yè)化的還是開(kāi)源的Portal產(chǎn)品,符合國(guó)際標(biāo)準(zhǔn)規(guī)范是必不可少的要求。有的Portal可能不支持WSRP(Web Services for Remote Portlets),但必須符合JSR-168標(biāo)準(zhǔn)。比較突出的開(kāi)源Portal主要有JBoss Portal、Apache Jetspeet-2,Liferay Portal,還有兩個(gè)屬于歐洲的非美產(chǎn)品eXo Platform和GridSph...  閱讀全文
    posted @ 2009-04-15 13:19 IT進(jìn)行時(shí) 閱讀(987) | 評(píng)論 (0)編輯 收藏

    Q:WORD莫名其妙的所有引用(如Endnote和插入PPT對(duì)象)都變成了域代碼,怎么辦?
    A:工具->選項(xiàng)->視圖;“域代碼”,把它前面的對(duì)勾去掉即可!
    備注:我居然嘗試了一次一個(gè)一個(gè)選擇“切換域代碼”,累死了不說(shuō),居然重新打開(kāi)又這樣,暈死。

    參考:http://zhidao.baidu.com/question/75336298.html
    posted @ 2009-04-12 21:55 IT進(jìn)行時(shí) 閱讀(1620) | 評(píng)論 (1)編輯 收藏

    AIX下用nmon進(jìn)行監(jiān)控和分析實(shí)戰(zhàn)

    nmon從這里下載:
    http://www.ibm.com/developerworks/wikis/display/Wikiptype/nmonanalyser

    1、準(zhǔn)備
      1)用root用戶登錄到系統(tǒng)中
      2)建目錄:#mkdir /nmon/script
      3)確定版本:#oslevel,以便確定用哪個(gè)腳本,我是用530
            # oslevel -s
                5300-09-01-0847
      4)把nmon12e_aix530用ftp上傳到/nmon/script
      5)執(zhí)行授權(quán)命令:#chmod +x nmon12e_aix530

    2、使用
     1)直接使用:
     ./nmon/nmon12e_aix536 -f -N -m /nmon/log -s 30 -c 2880
     表示:
      -f 按標(biāo)準(zhǔn)格式輸出文件:<hostname>_YYYYMMDD_HHMM.nmon
      -N include NFS sections
      -m 切換到路徑去保存日志文件
      -s 每隔n秒抽樣一次,這里為30
      -c 取出多少個(gè)抽樣數(shù)量,這里為2880,即監(jiān)控=2880*(30/60/60)=24小時(shí)
       根據(jù)小時(shí)計(jì)算這個(gè)數(shù)字的公式為:c=h*3600/s,比如要監(jiān)控10小時(shí),每隔30秒采樣一次,則c=10*3600/30=1200
     
      2)用crontab定期使用:
     A、執(zhí)行命令:#crontab -e
     B、在最后一行添加如下命令:
      0 8 * * 1,2,3,4,5 /nmon/script/nmon12e_aix530 -f -N -m /nmon/log -s 30 -c 1200
     表示:
      周一到周五,從早上08點(diǎn)開(kāi)始,監(jiān)控10個(gè)小時(shí)(到18:00整為止),輸出到/nmon/log

    3、分析
      1)會(huì)在/tmp/nmon生成*.nmon的文件把它下載到你的電腦上
      2)打開(kāi)nmon analyser v339.xls,把宏的安全性設(shè)成最低,打開(kāi)下載好的*.nmon文件。
         并且保存為一個(gè)文件,生成的是視圖模式的,非常直觀!


    參考:
    附錄一:crontab參數(shù):
    參考:http://tech.ddvip.com/2008-11/122629526990895.html
         f1 f2 f3 f4 f5 program
    minute  hour  day_of_month  month  weekday  command這些字段接收以下值:
    minute 0 到 59
    hour 0 到 23
    day_of_month 1 到 31
    month 1 到 12
    weekday 0 到 6(星期天到星期六)

     其中f1 是表示分鐘,f2 表示小時(shí),f3 表示一個(gè)月份中的第幾日,f4 表示月份,f5 表示一個(gè)星期中的第幾天。program 表示要執(zhí)行的程序。
       當(dāng) f1 為 * 時(shí)表示每分鐘都要執(zhí)行 program,f2 為 * 時(shí)表示每小時(shí)都要執(zhí)行程序,其馀類推
       當(dāng) f1 為 a-b 時(shí)表示從第 a 分鐘到第 b 分鐘這段時(shí)間內(nèi)要執(zhí)行,f2 為 a-b 時(shí)表示從第 a 到第 b 小時(shí)都要執(zhí)行,其馀類推
       當(dāng) f1 為 */n 時(shí)表示每 n 分鐘個(gè)時(shí)間間隔執(zhí)行一次,f2 為 */n 表示每 n 小時(shí)個(gè)時(shí)間間隔執(zhí)行一次,其馀類推
       當(dāng) f1 為 a, b, c,... 時(shí)表示第 a, b, c,... 分鐘要執(zhí)行,f2 為 a, b, c,... 時(shí)表示第 a, b, c...個(gè)小時(shí)要執(zhí)行,其馀類推


    附錄二:nmon參數(shù):
    參考http://www.ibm.com/developerworks/wikis/display/Wikiptype/nmonanalyser
    nmon:
    -f            spreadsheet output format [note: default -s300 -c288]
               Output file is <hostname>_YYYYMMDD_HHMM.nmon

            -F <filename>  same as -f but user supplied filename
    -c <number>    number of snapshots
    -d      requests disk service and wait times (DISKSERV and DISKWAIT)
    -i <percent>   Ignore processes using less than this amount of CPU when generating TOP section – useful for reducing data volumes
    -g <filename> file containing disk group definitions
    -l <dpl>  number of hdisks per sheet - defaults to 150, maximum 250.  See notes
    -m <dir>    NMON changes to this directory before saving the file
    -r <runname>   goes into spreadsheet file [default hostname]
    -s <seconds>   interval between snap shots
    -x   capacity planning (15 mins for 1 day = -fdt -s900 -c96) 
     -t           include top processes in the output
    -T           as –t plus saves command line arguments in UARG section
    -A          include data for async I/O (PROCAIO) sections
    -D prevents DISK sections being produced (useful when Disk Groups are being used because there are too many hdisks to process)
    -E          stops ESS sections being produced (necessary when Disk Groups are being used because there are too many vpaths to process)
    -J  prevents JFS sections being produced (prevents Excel errors when you have more than 255 filesystems)
    -L includes LARGEPAGE section
    -N include NFS sections
    -S include WLM sections with subclasses
    -W include WLM sections without subclasses
    -Y include SUMMARY section (very efficient alternative to –t if PID level data is not required)

            example: nmon_aix51 -F asterix.nmon -r Test1 -s6 -c12

    posted @ 2009-02-19 20:24 IT進(jìn)行時(shí) 閱讀(25161) | 評(píng)論 (4)編輯 收藏

    解決連接池泄漏步驟

    登錄weblogic console,  %Domain% -> Services -> JDBC -> Connection Pools -> jdbc/ioa

     

    Configuration頁(yè) -> Connection, 點(diǎn)開(kāi)Advanced Options, 修改以下配置項(xiàng)狀態(tài):

     

    配置項(xiàng)名稱

    默認(rèn)值

    修改為

    說(shuō)明

    Enable Connection Leak Profiling

    禁用

    啟用

    開(kāi)啟連接池泄漏的監(jiān)控。

    Enable Connection Profiling

    禁用

    啟用

    開(kāi)啟連接池監(jiān)控。

    Inactive Connection Timeout

    0

    100

    連接在指定時(shí)間內(nèi)(單位:秒)沒(méi)有活動(dòng)的話,WebLogic會(huì)將之釋放并回收到連接池。

     

        以上配置項(xiàng)修改后不影響在跑的應(yīng)用,不需要重啟服務(wù)器或應(yīng)用(配置項(xiàng)前沒(méi)有黃色小圖標(biāo) <!--[if !vml]--><!--[endif]-->,WebLogic很明確的告訴我們這個(gè)配置是不需要重啟的),所以大可放心設(shè)置。只是啟用監(jiān)控后會(huì)對(duì)性能有一些影響,具體影響會(huì)有多大,我沒(méi)有測(cè)試過(guò),但開(kāi)啟這些設(shè)置只是暫時(shí)的,得到日志后我們就可以把配置還原會(huì)默認(rèn)值。

    在沒(méi)有解決連接池泄漏問(wèn)題之前,如果沒(méi)有請(qǐng)求時(shí)連接池將一直保持為0,不會(huì)再有連接池滿造成請(qǐng)求無(wú)法響應(yīng)的問(wèn)題,我們也不用擔(dān)心再挨客戶罵,也為我們解決問(wèn)題爭(zhēng)取了寶貴到時(shí)間。

     

           好了,下面才是關(guān)鍵。

     

           過(guò)一段時(shí)間后,在bea\user_projects\domains\%domainname%\%servername%目錄下,打開(kāi)%servername%.log,查找,"A JDBC pool connection leak was detected",如果WebLogic已經(jīng)監(jiān)控到有連接池泄漏的話,就可以找到以下日志,并且很清楚的告訴我們?cè)谀囊粋€(gè)類的哪行代碼創(chuàng)建了連接,但沒(méi)有關(guān)閉(注意紅色加粗字體):


     

    2008-5-22 上午11時(shí)4720 CST       Warning     JDBC                A JDBC pool connection leak was detected. A connection leak occurs when a connection obtained from the pool was not closed explicitly by calling close() and then was disposed by the garbage collector and returned to the connection pool. The following stack trace at create shows where the leaked connection was created. Stack trace at connection create:

           at weblogic.jdbc.wrapper.PoolConnection.init(PoolConnection.java:75)

           at weblogic.jdbc.pool.Driver.allocateConnection(Driver.java:254)

           at weblogic.jdbc.pool.Driver.connect(Driver.java:84)

           at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:546)

           at weblogic.jdbc.jts.Driver.connect(Driver.java:140)

           at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:344)

           at com.cp.fw.dao.BaseDAO.getConnection(BaseDAO.java:78)

           at com.cp.fw.dao.dataset.DataSetOp.init(DataSetOp.java:78)

           at com.cp.fw.dao.dataset.DataSetOp.<init>(DataSetOp.java:45)

           at com.cp.ia.util.WorkFlowUtil.getNextWrokFlowId(WorkFlowUtil.java:93)

           at

     

    ……

          

     

           另外一種方法:

    WebLogic Console,展開(kāi) %DomainName% -> Servers -> %ServerName%,選到Logging – Server頁(yè),在頁(yè)面最下方點(diǎn)擊 "View server log",同樣查找 "A JDBC pool connection leak was detected",也可以找到同樣的日志。

     

    WebLogic對(duì)于日志事件的說(shuō)明:

     

    Message ID

    BEA-001074

    Subsystem

    JDBC

    Message

    A JDBC pool connection leak was detected. A

    connection leak occurs when a connection obtained

    from the pool was not closed explicitly by calling

    close() and then was disposed by the garbage

    collector and returned to the connection pool. The

    following stack trace at create shows where the

    leaked connection was created.  Stack trace at

    connection create:

    Detail

    A JDBC pool connection leak was detected. A

    connection leak occurs when a connection obtained

    from the pool was not closed explicitly by calling

    close() and then was disposed by the garbage

    collector and returned to the connection pool. A

    stack trace is printed indicating where the leaked

    connection was created.

    Cause

    A JDBC pool connection leak was detected. A

    connection leak occurs when a connection obtained

    from the pool was not closed explicitly by calling

    close() and then was disposed by the garbage

    collector and returned to the connection pool. A

    stack trace is printed indicating where the leaked

    connection was created.

    Action

    Close the connection appropriately.



    原文:http://blog.csdn.net/esky2000/archive/2008/07/22/2689929.aspx
    posted @ 2008-11-13 00:41 IT進(jìn)行時(shí) 閱讀(1953) | 評(píng)論 (0)編輯 收藏

     

    ActiveMQ 5.0的文檔實(shí)在是太少了,尤其是集成Spring2.x方面更少。

            下面是配置方面的心得:
            一、服務(wù)器端配置:

     總體參考官方網(wǎng)站進(jìn)行整合,差點(diǎn)害死人,不停的出現(xiàn)各種配置錯(cuò)誤,后來(lái)經(jīng)過(guò)google查詢各種郵件列表,才發(fā)現(xiàn)xsd使用不當(dāng)。        

    <?xml version="1.0" encoding="UTF-8"?>
    <beans 
      
    xmlns="http://www.springframework.org/schema/beans" 
      xmlns:amq
    ="http://activemq.org/config/1.0"
      xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation
    ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
      http://activemq.org/config/1.0 http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd"
    >


    </beans>

    這個(gè)才是正確的,兩點(diǎn):

    1、去掉:

    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

    2、用這個(gè)而不是那個(gè):

    這個(gè):

               http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd

    那個(gè):     
         http://activemq.apache.org/snapshot-schema/activemq-core-5.0-SNAPSHOT.xsd


            完整的配置如下:        
            applicationContext-activeMQ.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <beans 
      
    xmlns="http://www.springframework.org/schema/beans" 
      xmlns:amq
    ="http://activemq.org/config/1.0"
      xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation
    ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
      http://activemq.org/config/1.0 http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd"
    >

      
    <amq:broker useJmx="true" persistent="true"> 
        
    <amq:persistenceAdapter> 
            
    <amq:jdbcPersistenceAdapter dataSource="#mysql-ds"/> 
          
    </amq:persistenceAdapter> 
        
    <amq:transportConnectors> 
           
    <amq:transportConnector uri="tcp://localhost:0"/> 
        
    </amq:transportConnectors> 
       
    </amq:broker>
      
      
    <!-- MySql DataSource Setup -->
      
    <bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        
    <property name="url" value="jdbc:mysql://localhost/activemq?relaxAutoCommit=true"/>
        
    <property name="username" value="activemq"/>
        
    <property name="password" value="activemq"/>
        
    <!--
        <property name="poolPreparedStatements" value="true"/>
    -->
      
    </bean>
    </beans>


            二、web.xml配置: 

        <!--activeMQ-->
        
    <context-param>
            
    <param-name>contextConfigLocation</param-name>
            
    <param-value>
                /WEB-INF/applicationContext-activeMQ.xml 
                /WEB-INF/applicationContext-jms.xml 
            
    </param-value>
        
    </context-param>

        
    <listener>
            
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        
    </listener>



            三、客戶端配置此處僅供參考,還未曾具體實(shí)戰(zhàn)確認(rèn)):
            applicationContext-jms.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <beans 
      
    xmlns="http://www.springframework.org/schema/beans" 
      xmlns:amq
    ="http://activemq.org/config/1.0"
      xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation
    ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
      http://activemq.org/config/1.0 http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd"
    >
      
    <!-- ActiveMQ destinations to use  -->
      
    <amq:queue id="destination"  physicalName="org.apache.activemq.spring.Test.spring.embedded"/>

      
    <!-- JMS ConnectionFactory to use, configuring the embedded broker using XML -->
      
    <amq:connectionFactory id="jmsFactory" brokerURL="vm://localhost"/>  
      
    <!-- Spring JMS Template -->
      
    <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
        
    <property name="connectionFactory">
          
    <!-- lets wrap in a pool to avoid creating a connection per send -->
          
    <bean class="org.springframework.jms.connection.SingleConnectionFactory">
            
    <property name="targetConnectionFactory">
              
    <ref bean="jmsFactory" />
            
    </property>
          
    </bean>
        
    </property>
        
    <property name="messageConverter">
            
    <ref bean="dynamicMessageConverter"/>
        
    </property>
      
    </bean>
      
      
    <bean id="dynamicMessageConverter" class="com.tuanzi.message.mq.impl.DynamicMessageConverter"/>  

      
    <bean id="consumerJmsTemplate" class="org.springframework.jms.core.JmsTemplate">
        
    <property name="connectionFactory">
            
    <ref bean="jmsFactory"/>
        
    </property>
        
    <property name="messageConverter">
            
    <ref bean="dynamicMessageConverter"/>
        
    </property>
        
    <property name="receiveTimeout">
            
    <value>10000</value>
        
    </property>
      
    </bean>

      
    <!-- a sample POJO which uses a Spring JmsTemplate -->
      
    <bean id="simpleMessageProducer" class="com.tuanzi.message.mq.impl.SimpleMessageProducer">
        
    <property name="jmsTemplate">
          
    <ref bean="jmsTemplate"></ref>
        
    </property>
        
    <property name="destination">
          
    <ref bean="destination" />
        
    </property>
      
    </bean>

      
    <!-- a sample POJO consumer -->
      
    <bean id="simpleMessageConsumer" class="com.tuanzi.message.mq.impl.SimpleMessageConsumer">
        
    <property name="jmsTemplate" ref="consumerJmsTemplate"/>
        
    <property name="destination" ref="destination"/>
      
    </bean>
    </beans>


        TODO:
        1、客戶端的配置需要實(shí)戰(zhàn)后進(jìn)行進(jìn)一步的確認(rèn)、更新;
        2、后期視情況增加一篇《Spring2.x與ActiveMQ5.0成功集成的心得(實(shí)戰(zhàn)篇)》


        主要參考:

    http://activemq.apache.org/spring-support.html

    http://activemq.apache.org/xml-reference.html

    posted @ 2008-01-20 23:41 IT進(jìn)行時(shí) 閱讀(3437) | 評(píng)論 (3)編輯 收藏

    ORA-00600是Oracle的內(nèi)部錯(cuò)誤。何謂內(nèi)部錯(cuò)誤,就是Oracle也認(rèn)為是uncheck的錯(cuò)誤了。

    我是在執(zhí)行查詢時(shí)出現(xiàn)了這樣的提示,用的是9.2.0.1版本,我查了好長(zhǎng)時(shí)間,當(dāng)時(shí)的第一反應(yīng)就是:完了,Oracle的BUG,要打補(bǔ)丁了。

    后來(lái)找到了一個(gè)論壇,這里:http://oracle.ittoolbox.com/groups/technical-functional/oracle-db-l/ora-00600-internal-error-code-arguments-20084-50364303-23-50364303-23-325619?cv=expanded#。有高人指點(diǎn),終于解決了。


    我的解決方法很簡(jiǎn)單,變更了一個(gè)參數(shù):
    STAR_TRANSFORMATION_ENABLED從原來(lái)的TRUE改為FALSE。

    只能知其然不知其所以然了。
    posted @ 2007-08-31 09:29 IT進(jìn)行時(shí) 閱讀(23246) | 評(píng)論 (6)編輯 收藏

    jmagick是什么?不用我說(shuō)了吧。

    jmagick的安裝(基于windows),精簡(jiǎn)版步驟:
    1、下載jmagick-win-5.5.7-Q8.zip,并把jmagick.jar放到應(yīng)用的lib下,jmagick.dll拷貝到SYSTEM32下;
    2、安裝ImageMagick-5.5.7-Q8-windows-dll.exe軟件
    3、重新啟動(dòng)機(jī)器
    麻煩點(diǎn),但對(duì)圖片的處理能力,確實(shí)超乎想象的(不過(guò)用6.2.6版本頻頻出現(xiàn)JVM Crach,嚇?biāo)溃?br>
    jmagick的使用,我只用了圖片縮放,還可以。
    代碼如下:
       System.setProperty("jmagick.systemclassloader", "no");//這個(gè)沒(méi)什么好說(shuō)的,照辦就是了
       ImageInfo info = new ImageInfo(fromFileName);
       MagickImage fromImage = new MagickImage(info);
       Dimension dim = fromImage.getDimension();
       double w = dim.getWidth();
       double h = dim.getHeight();
       int toHeight = (int)(h*toWidth/w);//按寬度比例縮放
          
       MagickImage toImage = fromImage.scaleImage(toWidth, toHeight);//縮放操作
       toImage.setFileName(toFileName);//設(shè)置輸出的文件名
       toImage.writeImage(info); //保存


    過(guò)程中發(fā)現(xiàn)最新版本的諸多問(wèn)題,要么NoClassDefFoundError要么Can't find dependent libraries,簡(jiǎn)直不勝其煩。

    后來(lái)降級(jí)到5.5.7,就好了,說(shuō)明IT人唯最新版本是從的想法不一定正確。

    說(shuō)心里話,過(guò)程中曾經(jīng)出現(xiàn)過(guò)多次JVM crach,現(xiàn)在還有心理陰影。
    posted @ 2007-07-26 12:53 IT進(jìn)行時(shí) 閱讀(5819) | 評(píng)論 (4)編輯 收藏

        對(duì)于開(kāi)發(fā)和實(shí)施人員來(lái)說(shuō),也許大家經(jīng)常會(huì)碰到這樣的對(duì)話:

        實(shí)施工程師:系統(tǒng)有問(wèn)題了,是哪里哪里(省略字若干+若干界面截圖)
        開(kāi)發(fā)工程師:不可能,我這邊還原了整個(gè)環(huán)境,包括數(shù)據(jù)庫(kù)、代碼和中間件……
        實(shí)施工程師:這邊是weblogic,你那邊是?
        開(kāi)發(fā)工程師:我的是Tomcat,但Tomcat和weblogic的差異呢,不知道……

        然后就沒(méi)有結(jié)果,因?yàn)槲覀兊膫€(gè)人電腦真的無(wú)法或者難以承受weblogic或者websphere之重。

        怎么辦呢,其實(shí)我們可以用遠(yuǎn)程調(diào)試的方法:
       
        三步配置遠(yuǎn)程調(diào)試:
        一、對(duì)于TOMCAT:
          1、打開(kāi)catalina.bat,并加入:
            SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5555
          2、配置Eclipse,如下圖(此時(shí)Port與上面的address一致,是5555):

     
        3、如果Tocat已經(jīng)起來(lái)(注意,可能在另外的機(jī)器上),那點(diǎn)擊debug,即可進(jìn)行與本地服務(wù)一樣的調(diào)試過(guò)程。

        二、對(duì)于Weblogic:
          1、打開(kāi)startWebLogic.cmd,并調(diào)整執(zhí)行java命令的地方:
    %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server
    調(diào)整為
    @REM ORG : %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server
    @REM Surport Remote Debug :
    set JAVA_DEBUG=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_Socket,address=4000,server=y,suspend=n
    %JAVA_HOME%\bin\java %JAVA_VM% %JAVA_DEBUG% %MEM_ARGS% %JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server
          2、其他配置類似Tomcat,如下:
        
        3、同樣,如果weblogic已經(jīng)起來(lái)(注意,我上面的例子就是weblogic不在本機(jī)上,而在于另外的機(jī)器上),那點(diǎn)擊debug,即可進(jìn)行與本地服務(wù)一樣的調(diào)試過(guò)程,如下:

        大家也許會(huì)問(wèn):這樣調(diào)試會(huì)不會(huì)影響客戶使用?當(dāng)然會(huì)影響,如果一旦hit了斷點(diǎn),則整個(gè)應(yīng)用會(huì)被掛起。那怎么樣才能盡可能的進(jìn)行調(diào)試呢?方法還是有的:
        1、如果是tomcat,重新復(fù)制一份tomcat,修改一下端口,然后起來(lái)后調(diào)試,此時(shí)整個(gè)環(huán)境都類似了,調(diào)試起來(lái)非常方便;
        2、如果是weblogic,重新建立一個(gè)新的domain即可,互不干擾;
        3、如果是websphere,呵呵,沒(méi)試過(guò),留給大家的作業(yè)。

        原理?好奇的人還會(huì)問(wèn),其實(shí)就是jdwp(Java(tm) Debug Wire Protocol),有興趣就google一下吧。

    posted @ 2007-06-13 16:22 IT進(jìn)行時(shí) 閱讀(2338) | 評(píng)論 (4)編輯 收藏

         摘要: 以前公司購(gòu)買過(guò)eWebEditor,功能應(yīng)該還是不錯(cuò)的,但即便到了現(xiàn)在,也還僅是一個(gè)IE only的版本,無(wú)法滿足現(xiàn)在差異化的需求。故前段時(shí)間下了最新的FCKeditor2.3.3版本下來(lái)(當(dāng)然了,連帶java的integration),demo來(lái)看看,發(fā)現(xiàn)有幾個(gè)地方非常不爽:1、上載的文件,只能放在URL可及的地方(如默認(rèn)只能放到嵌入應(yīng)用路徑的/UserFiles/下);2、沒(méi)有明確的上載視頻的...  閱讀全文
    posted @ 2007-03-11 20:20 IT進(jìn)行時(shí) 閱讀(6866) | 評(píng)論 (12)編輯 收藏

    此類話題已經(jīng)很多,可以參考的文檔也不少,我是參考這個(gè)blog的文檔做的:
    http://blogger.org.cn/blog/blog.asp?name=lhwork

    1)環(huán)境和版本:
    Apache2.0.59+Tomcat5.5.15(兩個(gè)),一開(kāi)始用的是Tomcat5.0.28,一直有問(wèn)題(在后面總結(jié)),就升級(jí)到5.5去做試驗(yàn)了,冤枉5.0.28兄弟了:)

    步驟小結(jié)為:
    1、安裝(忽略);
    2、配置Tomcat:
    ???1)第一個(gè)Tomcat:
    ??????A.啟用jvmRoute??????
    ??? <!-- You should set jvmRoute to support load-balancing via AJP ie :-->
    ??? <Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat1">??????????
    ??? <!-- Define the top level container in our container hierarchy
    ??? <Engine name="Catalina" defaultHost="localhost">-->
    ??????B.啟用原來(lái)禁用的Cluster設(shè)置
    ??????
    ??????? <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
    ???????????????? managerClassName="org.apache.catalina.cluster.session.DeltaManager"
    ???????????????? expireSessionsOnShutdown="false"
    ???????????????? useDirtyFlag="true"
    ???????????????? notifyListenersOnReplication="true">

    ??????????? <Membership
    ??????????????? className="org.apache.catalina.cluster.mcast.McastService"
    ????????????????mcastBindAddress="127.0.0.1"
    ??????????????? mcastAddr="224.1.2.3"
    ??????????????? mcastPort="2525"
    ??????????????? mcastFrequency="500"
    ??????????????? mcastDropTime="3000"/>

    ??????????? <Receiver
    ??????????????? className="org.apache.catalina.cluster.tcp.ReplicationListener"
    ??????????????? tcpListenAddress="auto"
    ??????????????? tcpListenPort="4001"
    ??????????????? tcpSelectorTimeout="100"
    ??????????????? tcpThreadCount="6"/>

    ??????????? <Sender
    ??????????????? className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"
    ??????????????? replicationMode="pooled"
    ??????????????? ackTimeout="15000"/>

    ??????????? <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve"
    ?????????????????? filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
    ??????????????????
    ??????????? <Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer"
    ????????????????????? tempDir="/tmp/war-temp/"
    ????????????????????? deployDir="/tmp/war-deploy/"
    ????????????????????? watchDir="/tmp/war-listen/"
    ????????????????????? watchEnabled="false"/>
    ?????????????????????
    ??????????? <ClusterListener className="org.apache.catalina.cluster.session.ClusterSessionListener"/>
    ??????? </Cluster>
    ??????C.搞定
    ???2)配置第二個(gè)Tomcat(要注意端口沖突了):
    ??????A.變更端口
    ??????<Server port="8005" shutdown="SHUTDOWN">
    ??????=》
    ??????<Server port="8004" shutdown="SHUTDOWN">
    ??????B.變更端口
    ??????<Connector port="8009"
    ?????????????? enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
    ??????=》
    ??????<Connector port="9009"
    ?????????????? enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
    ??????C.啟用jvmRoute??????
    ??? <!-- You should set jvmRoute to support load-balancing via AJP ie :-->
    ??? <Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat2">??????????
    ??? <!-- Define the top level container in our container hierarchy
    ??? <Engine name="Catalina" defaultHost="localhost">-->
    ??????D.啟用原來(lái)禁用的Cluster設(shè)置??????
    ??????? <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
    ???????????????? managerClassName="org.apache.catalina.cluster.session.DeltaManager"
    ???????????????? expireSessionsOnShutdown="false"
    ???????????????? useDirtyFlag="true"
    ???????????????? notifyListenersOnReplication="true">

    ??????????? <Membership
    ??????????????? className="org.apache.catalina.cluster.mcast.McastService"
    ????????????????mcastBindAddress="127.0.0.1"
    ??????????????? mcastAddr="224.1.2.3"
    ??????????????? mcastPort="2525"
    ??????????????? mcastFrequency="500"
    ??????????????? mcastDropTime="3000"/>

    ??????????? <Receiver
    ??????????????? className="org.apache.catalina.cluster.tcp.ReplicationListener"
    ??????????????? tcpListenAddress="auto"
    ??????????????? tcpListenPort="4002"
    ??????????????? tcpSelectorTimeout="100"
    ??????????????? tcpThreadCount="6"/>

    ??????????? <Sender
    ??????????????? className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"
    ??????????????? replicationMode="pooled"
    ??????????????? ackTimeout="15000"/>

    ??????????? <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve"
    ?????????????????? filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
    ??????????????????
    ??????????? <Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer"
    ????????????????????? tempDir="/tmp/war-temp/"
    ????????????????????? deployDir="/tmp/war-deploy/"
    ????????????????????? watchDir="/tmp/war-listen/"
    ????????????????????? watchEnabled="false"/>
    ?????????????????????
    ??????????? <ClusterListener className="org.apache.catalina.cluster.session.ClusterSessionListener"/>
    ??????? </Cluster>
    ??????E.搞定
    3、配置apache:
    ???1)修訂conf/httpd.conf??????
    ??????#add by zhengxq
    ??????LoadModule jk2_module modules/mod_jk2.so
    ???2)新增worders2.properties并放到conf下
    ??????[shm]
    info=Scoreboard. Requried for reconfiguration and status with multiprocess servers.
    file=anon

    # Defines a load balancer named lb. Use even if you only have one machine.
    [lb:lb]
    worker=ajp13:tomcat1
    worker=ajp13:tomcat2

    # Example socket channel, override port and host.
    [channel.socket:localhost:9009]
    port=9009
    host=127.0.0.1

    # define the worker
    [ajp13:localhost:9009]
    channel=channel.socket:localhost:9009
    group=lb

    # Example socket channel, override port and host.
    [channel.socket:localhost:8009]
    port=8009
    host=127.0.0.1

    # define the worker
    [ajp13:localhost:8009]
    channel=channel.socket:localhost:8009
    group=lb

    # Map the Tomcat examples webapp to the Web server uri space
    [uri:/clusterapp/*]
    group=lb
    ??????3)搞定

    3.測(cè)試程序,請(qǐng)參考上述參考文檔,如下:
    <%@ page contentType="text/html; charset=GBK" import="java.util.*"%>
    <html><head><title>Cluster App Test</title></head>
    <body>
    Server Info: <%out.print(request.getLocalAddr() + " : " + request.getLocalPort());%>
    <%
    out.println("<br> ID " + session.getId());

    // 如果有新的 Session 屬性設(shè)置
    String dataName = request.getParameter("dataName");
    if (dataName != null && dataName.length() > 0) {
    ? String dataValue = request.getParameter("dataValue");
    ? session.setAttribute(dataName, dataValue);
    }

    out.print("<b>Session 列表</b>");

    Enumeration e = session.getAttributeNames();
    while (e.hasMoreElements()) {
    ? String name = (String)e.nextElement();
    ? String value = session.getAttribute(name).toString();
    ? out.println( name + " = " + value);
    ? }
    %>
    <form action="index.jsp" method="POST">
    ? 名稱:<input type=text size=20 name="dataName">
    ? <br>
    ? 值:<input type=text size=20 name="dataValue">
    ? <br>
    ? <input type=submit>
    ? </form>
    </body>
    </html>



    ???所需要注意的是:
    ???1、測(cè)試應(yīng)用的web.xml必須加上:<distributable/>
    ???2、我搞了很久,發(fā)現(xiàn)三個(gè)東西起來(lái)后,可以訪問(wèn),但只能做到負(fù)載均衡,不能session復(fù)制,這點(diǎn)我重復(fù)配置了一次,就是不行,郁悶之下找了tomcat的郵件列表,這樣做:
    ??????1)測(cè)試廣播是否正常
    ?????????A. download this jar
    ????????????http://cvs.apache.org/~fhanik/tomcat-replication.jar

    ?????????B. Open two terminals?
    ??????????? a) Terminal one run
    ???????????????java -cp tomcat-replication.jar MCaster 239.255.10.10 2525 Terminal1
    ??????????? b) Terminal two run
    ???????????????java -cp tomcat-replication.jar MCaster 239.255.10.10 2525 Terminal2
    ?????????發(fā)現(xiàn)結(jié)果如下:
    ?????????C:\>java -cp tomcat-replication.jar MCaster 224.1.2.3 2525 Terminal1
    Usage MCaster [address port message]
    BEGIN TO RECEIVE
    SENT:Terminal11
    SENT:Terminal12
    SENT:Terminal13
    SENT:Terminal14
    SENT:Terminal15
    SENT:Terminal16
    SENT:Terminal17
    SENT:Terminal18

    ?????????表明廣播有問(wèn)題,氣死了,難怪Tomcat總是在啟動(dòng)的時(shí)候提示:
    ?????????信息: Manager [/clusterapp]: skipping state transfer. No members active in cluster group.

    ??????后來(lái)終于發(fā)現(xiàn)貓膩,必須注意在server.xml的<Cluster ..<Membership里面加上mcastBindAddress="127.0.0.1"。
    ???????
    為什么呢?很簡(jiǎn)單,因?yàn)槲野惭b了VPN,這家伙會(huì)設(shè)置一個(gè)虛擬網(wǎng)卡,導(dǎo)致綁定失?。](méi)地方責(zé)怪了,只好讓它墊背)?!這是通過(guò)郵件列表里面所描述的多網(wǎng)卡綁定問(wèn)題舉一反三得到的判斷。具體請(qǐng)參考:http://www.servlets.com/archive/servlet/ReadMsg?msgId=475067&listName=tomcat-user

    ??????


    posted @ 2007-03-07 10:51 IT進(jìn)行時(shí) 閱讀(7282) | 評(píng)論 (5)編輯 收藏

    xsl的新版本(1.1)已經(jīng)在這個(gè)月發(fā)布,請(qǐng)看:
    http://www.w3.org/TR/2006/PR-xsl11-20061006/


    這樣,XML在數(shù)據(jù)交換和表現(xiàn)層面的地位,勢(shì)必進(jìn)一步呈現(xiàn)。

    xforms是基于XML發(fā)展起來(lái)的聲稱為“下一代的表單(form)”,有一定廣告色彩,但現(xiàn)在正在受到越來(lái)越多廠商的支持(如IBM正在熱推的forms產(chǎn)品,且多家瀏覽器廠商已經(jīng)明確支持xforms)。

    其架構(gòu)如下:


    關(guān)注中,也請(qǐng)大家關(guān)注了。





    參考文章:
    http://www.xml.com/pub/a/2005/02/09/xforms.html?page=2&x-showcontent=off&x-order=date
    http://www.ws.org.tw/ws/xml_family_show.jsp?TOP_NUM=3&num=8
    posted @ 2006-10-11 10:49 IT進(jìn)行時(shí) 閱讀(1422) | 評(píng)論 (1)編輯 收藏

    主站蜘蛛池模板: 亚洲色婷婷六月亚洲婷婷6月| 亚洲中文精品久久久久久不卡| 国产免费A∨在线播放| 在线看片无码永久免费aⅴ| 亚洲久悠悠色悠在线播放| 免费福利视频导航| 亚洲精品一区二区三区四区乱码| 成全视频免费观看在线看| 久久亚洲中文字幕精品一区| 国产成人综合亚洲一区| 超pen个人视频国产免费观看| 亚洲女女女同性video| 毛片a级毛片免费播放下载| 学生妹亚洲一区二区| 台湾一级毛片永久免费| 亚洲欧洲国产精品久久| 精品免费人成视频app| 337p日本欧洲亚洲大胆精品555588| 日韩免费无码一区二区三区 | 国产亚洲综合色就色| 两个人看的www免费高清| 亚洲中文字幕久久精品无码APP | 亚洲理论电影在线观看| 一级特黄录像免费播放肥| 国产AV无码专区亚洲AWWW| 免费在线中文日本| 亚洲精品国产成人| 成年女人午夜毛片免费视频| 精品久久久久久亚洲综合网| 久久精品国产精品亚洲人人 | 成人黄网站片免费视频| 亚洲成年人免费网站| 在线精品免费视频| 黄页网址在线免费观看| 亚洲日产无码中文字幕| 99re热精品视频国产免费| 中文字幕亚洲情99在线| 亚洲成av人片在线观看天堂无码 | 国产精品免费一级在线观看| www成人免费视频| 一区二区三区亚洲|