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

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

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

    finly

    工作、讀書、運動

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      5 隨筆 :: 0 文章 :: 3 評論 :: 0 Trackbacks

    2007年4月5日 #

    安裝版
    進入%TOMCAT_HOME%/BIN執行
    tomcat5.exe //US//Tomcat5 --JvmMs=128 --JvmMx=512

    普通版
    設置CATALINA_OPTS -Xmx512m
    TOMCAT_OPTS -Xmx512m
    posted @ 2007-04-05 19:33 finly 閱讀(896) | 評論 (0)編輯 收藏

    2006年12月1日 #

    昨天真郁悶....部門老大給我提出了一種難于想象的需求,通常我們從網站上下載文件都有IE彈出框。
    而他對我的要求是:不要彈出IE對話框,點按鈕后直接把文件保存到本地。
    當時即時暈倒,都不知道是什么客戶來的,居然有這種需求。-_-!
    綜合考慮后,我決定用applet在客戶端運行一段代碼。在客戶端里用apache的開源項目httpClient模擬http請求(如輸入用戶名密碼登陸,瀏覽某個連接下載等)。由于要涉及到讀寫客戶端的磁盤文件,所以在客戶端運行程序的時候必定會拋出securityException。當時在這里折騰了很久,老是把注意力里集中在修改客戶端的安全策略文件上。
    事實上,有一種更好的辦法,那就是對applet程序所依賴的jar包進行數字簽名。
    步驟如下:
    打開命令行窗口,定位到c:/目錄下。
    1keytool -genkey -keystore pepper.store -alias pepper

      這個命令用來產生一個密匙庫,執行完畢后應該在c:/中產生一個pepper.store的文件,這里的pepper是我自己的名字,你可以對它進行修改。另外在執行命令的時候還有提示你輸入密匙庫的密碼,這里你一定要記住,否則后面要用的時候無法輸入。

    2
    keytool -export -keystore pepper.store -alias pepper -file pepper.cert
      這個命令用來產生簽名時所要用的證書,同樣這里的pepper也可以換成你自己需要的名字。這個命令執行完后在c:/中產生一個pepper.cert的文件。

    3
    jarsigner -keystore pepper.store myapplet.jar pepper
      這個命令用上面產生的證書將我們的jar文件進行了簽名。(myapplet.jar是我們項目中所依賴的jar包)

    執行完以上三步之后,就已經完全可以了。而不需要像網上某些文章說的那樣還要修改客戶端的安全策略文件。
    最后在頁面上把applet標記加上
    <applet code="Tasdf.class" CODEBASE = "." archive="myapplet.jar" width=30 height=15>
    </applet>
    posted @ 2006-12-01 10:15 finly 閱讀(1064) | 評論 (2)編輯 收藏

    2006年11月21日 #

    Mule是一個基于ESB架構的消息平臺,Mule 的核心是一個基于SEDA(Staged Event Driven Architecture)的服務容器,該容器管理被稱為通用消息對象(Universal Message Objects /UMO)的服務對象,而這些對象都是POJO。所有UMO和其他應用之間的通信都是通過消息端點(message endpoint)來進行的。這些端點為眾多獨立的技術,比如Jms, Smtp, Jdbc, Tcp, Http, Xmpp, file等等,提供了簡單和一致的接口。

    Mule應用程序通常是通過網絡由許多Mule實例組成(實際上一個應用里面只能有一個mule實例,因為實例啟動之后必須占用一個tcp端口),每一個實例是由具有一個或多個UMO組件的輕量級容器所構成,每一個UMO組件都包含有一個或多個能收發事件的端點。
    以上描述可以用以下圖例來說明:

    實際上Mule是用一個配置文件來描述以上信息的,一個典型的配置文件如下:
    < mule-descriptor? name ="Error?Manager" ?implementation ="errorManager" >
    ????????????
    < inbound-router >
    ????????????????
    < endpoint? address ="file://./test-data/in"
    ??????????????????????????transformers
    ="XMLToExceptionBean?ExceptionBeanToErrorMessage" ? />
    ????????????
    </ inbound-router >

    ????????????
    < outbound-router >
    ????????????????
    < catch-all-strategy? className ="org.mule.routing.LoggingCatchAllStrategy" />

    ????????????????
    < router? className ="org.mule.routing.outbound.FilteringOutboundRouter"
    ????????????????????????transformer
    ="ErrorMessageToException" >

    ????????????????????
    < endpoint? address ="file://./test-data/exceptions"
    ??????????????????????????????transformers
    ="ErrorMessageToExceptionBean?ExceptionBeanToXML" >

    ????????????????????????
    < properties >< property? name ="outputPattern" ?value ="Exception-${UUID}.xml" ? /></ properties >
    ????????????????????
    </ endpoint >
    ????????????????????
    < filter? className ="org.mule.routing.filters.PayloadTypeFilter"
    ????????????????????????????expectedType
    ="org.mule.MuleException" ? />
    ????????????????
    </ router >

    ????????????????
    < router? className ="org.mule.routing.outbound.FilteringOutboundRouter"
    ????????????????????????transformer
    ="ErrorMessageToException" >

    ????????????????????
    < endpoint? address ="smtp://?address=${email.toAddress}"
    ??????????????????????????????transformers
    ="ErrorMessageToExceptionBean?ExceptionBeanToXML?StringToEmailMessage" >
    ????????????????????????
    < properties >
    ????????????????????????????
    < property? name ="fromAddress" ?value ="${email.fromAddress}" ? />
    ????????????????????????????
    < property? name ="subject" ?value ="${email.subject}" ? />
    ????????????????????????
    </ properties >
    ???????????????????????
    </ endpoint >

    ????????????????????
    < filter? className ="org.mule.routing.filters.PayloadTypeFilter"
    ????????????????????????????????????????expectedType
    ="org.mule.umo.lifecycle.FatalException" />
    ????????????????
    </ router >

    ????????????????
    < router? className ="org.mule.routing.outbound.FilteringOutboundRouter"
    ????????????????????????transformer
    ="ErrorMessageToException" >

    ????????????????????
    < endpoint? address ="jms://exception.queue"
    ??????????????????????????????transformers
    ="ErrorMessageToExceptionBean?ExceptionBeanToXML?ObjectToJMSMessage" />

    ????????????????????
    < filter? className ="org.mule.routing.filters.PayloadTypeFilter"
    ????????????????????????????expectedType
    ="org.mule.samples.errorhandler.exceptions.BusinessException" />
    ????????????????
    </ router >
    ????????????
    </ outbound-router >

    ????????????
    < interceptor? name ="default" />
    ????????
    </ mule-descriptor >

    ????????
    < mule-descriptor? name ="Business?Error?Manager" ?implementation ="businessErrorManager" >
    ????????????
    < inbound-router >
    ????????????????
    < endpoint? address ="jms://exception.queue"
    ??????????????????????????transformers
    ="JMSMessageToObject?XMLToExceptionBean?ExceptionBeanToErrorMessage" ? />
    ????????????
    </ inbound-router >
    ????????
    </ mule-descriptor >

    以上是摘取官方網站上提供的一個叫errorhandler的例子里配置文件的一部分,mule-descriptor節點是用來描述一個UMO組件的,在這個配置文件里提供了兩個UMO組件,在每一個UMO組件里有一個或多個端點(endpint)來接收或發送事件。也許你會覺得這個配置文件過于復雜,以至于無法理解。沒關系,在以后的文章里將會進一步解釋。

    在Mule容器里面為UMO組件提供了一系列的服務,例如事務管理,事件轉化,路由,事件審核和管理等,Mule將對象分開管理意味著可以將UMO組件交給當前流行的IOC容器(比如spring)去構造。雖然Mule聲稱與spring可以完美結合,然而在我通過一系列實驗中發現,Mule與spring結合還是有許多bug的,希望Mule能在下一個版本的更新中解決。

    有人可能會說,Mule只是一個Jms實現,然而Mule不僅僅是一個Jms服務器,而且可以通過配置來使用幾乎所有的Jms服務,比如說ActiveMq、JBoss MQ、Joram OpenJms、Oracle AQ、SeeBeyond、Spirit Wave、 UberMQ、Weblogic Jms?和 IBM WebSphere MQ。與Spring一樣,Mule不會重復造輪子,而是會使用在當今開源社區里成熟的產品。比如在webservice上,Mule支持glue、axis和xfire。對于不同類型的連接(比如說jms和webservice),Mule提供了一致的服務來管理事件的流向、聯系、事務、安全和審核。

    在使用Mule之前,很有必要理解一些核心的概念和專業術語。以下圖表簡單的描述了一個Mule服務器的組成


    下面將對圖表上的每一個概念進行解釋。

    The Mule Manager
    Mule管理器是Mule實例的中心,它的主要作用是管理Mule實例中各種各樣的對象,例如:連接器、端點、轉換器。這些對象被用來控制在組件中消息的流轉以及向組件管理的模型提供服務。

    The Model
    模型是在你組件中被管理和執行的容器,它控制著消息在你組件里的收和發。默認的Mule模型是基于SEDA的,這意味著它使用了一種高效的基于消息隊列的模型來達到最佳的性能。

    UMO Components
    UMO也就是Universal Message Object(通用消息對象),這是一種能從任何地方收發時間的對象。UMO對象可以是你的業務對象,在消息進來的時候執行你的業務邏輯,這是一種標準的JavaBean,沒有任何特殊的Mule代碼在你的組件(UMO對象)里面,Mule是如何在你的對象里進行消息收發的路由和轉換取決于你在組件里的配置。

    Endpoints
    端點是Mule通信能力的基本原理。一個端點定義在兩個或者更多組件之間的通信渠道。可以通過配置消息過濾器、安全攔截器和事務處理來控制一個端點是如何將消息收與發的。

    External Applications
    外部應用可以是任何的遺留系統。基本上,任何應用只要有一種數據傳輸方式能通過Mule的端點進行通信,UMO組件是不關心是哪個應用提供的數據、應用部署的地點以及是用何種傳輸協議的。

    posted @ 2006-11-21 10:12 finly 閱讀(2803) | 評論 (1)編輯 收藏

    2006年11月14日 #

    時間轉眼即逝,不知不覺已經踏入社會一年了...這一年時間里感覺自己長大了許多,

    關于IT企業
    中國的IT企業,尤其是民營企業的許多不規范這在讀書時代就有所了解的,但到了工作之后才深刻的體會到。項目只有少得可憐的文檔,許多代碼編寫都不規范。過分追求功能點的完成,而忽視了項目的可擴展性,這導致當客戶有新需求到來的時候,只會對客戶進行抱怨,說這個需求要改原來的很多內容。而沒有從自己的設計思路上找原因。我們是IT提供者,我們要充分的挖掘客戶所需要但卻暫時沒法提出的需求。不過,后來想想,任何一個成長中的企業都必須經過這么一個漫長而曲折的過程。所以出現這些問題都是無可厚非的,關鍵是從這些問題上積累經驗。

    關于工作
    IT人真是累,記得剛來公司的一段時間里,由于我在學校已有一定的JavaEE方面的實踐使我有幸參與了一個大型項目的開發工作,而由于項目比較緊的原因,整個項目組每天晚上都在加班。星期六星期天往往只有一天的休息時間,雖然辛苦,但那時候的日子過得很充實。以至于在后來不用加班的日子里,反而覺得莫明的空虛,不知道這是自己作為一個IT人感到高興還是應該感到悲哀。(我想高興的只有公司的老板們吧,

    關于學習
    搞開發的必須不斷學習,這是眾所周知的。而且必須在長時間的壓力下工作,因為技術的發展是日新月異的,往往就是這個原因讓許多IT從業者卻步。記得以前有個同事跟我說的,“學海無崖,回頭是岸”。當時聽了覺得好笑,現在回想起,并不無道理啊。其他行業的下了班之后都可以徹底的放松,公務員就更不用說了,不要說是下班之后,就算是上班時間也是上上網,看下報紙這樣打發時間。而我們呢?經常都必須加班加點的工作,就算下班之后,也得看書學習,因為如果不看總覺得心里不塌實。。以前讀書時代從來沒有象現在這樣這么主動學習的,總而言之作為一個IT從業者,一個字,累!

    關于生活
    雖然平時工作繁忙,但是我覺得生活過得還是挺充實的,因為我對軟件開發感興趣,也就是這個興趣推動我不斷的學習,以及尋求工作中的樂趣。不知道這個興趣能把我維持多久,因為人總得有其他事情啊,比如感情,家庭等。。說到感情,曾經情感不斷的我在這一年時間里感情世界近乎空白,把所有的時間都獻給了工作和學習了。悲哀!希望在未來的一年里有所改觀吧。

    總結
    今天是11月14號,去年的這個日子,正好走出校門來到這家公司實習,沒想到一實習就一直呆在這家公司里工作了,以至于后來的畢業論文也是在公司里完成的,連回去學校答辯的時間都沒有。為了能在今天把這篇東西發表了,寫得太草率。

    近期在關注一個開源的企業級ESB系統總線Mule,因為在項目中需要用的。在以后的文章里會談談這方面的學習體會。
    posted @ 2006-11-14 23:01 finly 閱讀(300) | 評論 (0)編輯 收藏

    2006年10月31日 #

    blog兩個月前就申請下來了,直到今天才有第一篇文章,實在慚愧.
    選擇在blogjava建blog,除了自己是名javaer之外,主要原因是因為在這里潛水半年多的時間里學到了不少東西,所以決定以后要多做點奉獻...寫寫文章啊什么的,
    讀完四年大學,現在回想起來,好象沒什么另自己特別印象深刻的東西...難道是沒有一點值得回憶的嗎?我覺得不是,很多值得懷念的事情都忘得差不多了啊!
    為了使自己不白過,若干年后可以找回曾經的回憶..所以我決定以后要常上來寫點東西了

    馬上就要到工作一年的時間了,我決定在下篇文章里寫寫自己這一年來的各方面的總結.

    posted @ 2006-10-31 21:48 finly 閱讀(203) | 評論 (0)編輯 收藏

    僅列出標題  
    主站蜘蛛池模板: 老司机午夜在线视频免费| 日木av无码专区亚洲av毛片| 亚洲人精品亚洲人成在线| 日韩午夜理论免费TV影院| 亚洲av综合avav中文| 在线观看免费无码专区 | 日韩免费观看的一级毛片| 亚洲人成电影网站久久| 国产h视频在线观看免费| 亚洲综合激情五月丁香六月| 久久久www成人免费毛片| 亚洲AV日韩AV无码污污网站| 日本特黄特色aa大片免费| 男人的天堂av亚洲一区2区| 国产成人aaa在线视频免费观看| 男性gay黄免费网站| 亚洲天堂中文字幕在线| 中文字幕免费视频精品一| 亚洲尹人香蕉网在线视颅| 亚洲精品视频在线免费| 亚洲日韩一区二区三区| 国产精品极品美女免费观看| 久久国产免费直播| 亚洲欧洲日产国码久在线观看| 四虎成年永久免费网站| 亚洲午夜精品一区二区麻豆| 亚洲?V乱码久久精品蜜桃| 精品一卡2卡三卡4卡免费视频| 亚洲熟妇无码爱v在线观看| 最近中文字幕mv手机免费高清 | 国产又长又粗又爽免费视频| 免费无毒a网站在线观看| 亚洲av之男人的天堂网站| 日韩版码免费福利视频| 色婷婷综合缴情综免费观看| 亚洲韩国精品无码一区二区三区| 亚洲成在人线aⅴ免费毛片| 日韩一级片免费观看| 亚洲网站在线播放| 免费在线观看中文字幕| 最刺激黄a大片免费网站|