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

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

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

    Read Sean

    Read me, read Sean.
    posts - 508, comments - 655, trackbacks - 9, articles - 4

     

    由Craig Walls和Ryan Breidenbach合著的新書《Spring in Action》已交付印刷,北美市場(chǎng)和Amazon應(yīng)該很快會(huì)上架,期待國(guó)內(nèi)的引進(jìn)版。另外不知道有沒(méi)有人愿意翻譯,如果有時(shí)間,我也想?yún)⑴c,呵呵。有路子的朋友別忘了通知一聲哦。

    sia_thumb.jpg

    你如果對(duì)這本書和Craig Walls感興趣,可以上Craig的blog了解該書的最新動(dòng)向。

     

    posted @ 2005-02-17 00:28 laogao 閱讀(596) | 評(píng)論 (3)編輯 收藏

         摘要: 春節(jié)長(zhǎng)假即將結(jié)束,想想已經(jīng)有好久沒(méi)更新自己的blog了,正在等Arsenal和Crystal Palace的比賽轉(zhuǎn)播,也睡不著,就寫寫最近的一些感想吧。這些天除了走親訪友、合家團(tuán)聚、請(qǐng)客吃飯之外,也看了一些電影,玩了一些游戲。印象最深的是那一部一年前在美國(guó)上映的......  閱讀全文

    posted @ 2005-02-15 02:09 laogao 閱讀(458) | 評(píng)論 (2)編輯 收藏

     

    幾天不上技術(shù)網(wǎng)站,今天在Apache News Blog Online發(fā)現(xiàn)一個(gè)新東東:Struts Shale。這個(gè)是由Craig McClannahan發(fā)起并新近加入Struts的子項(xiàng)目,在這篇blog文章中,原來(lái)的Struts項(xiàng)目被稱作Struts Classic。Struts Shale的主要目的是提供一個(gè)開源的基于JSF的Struts框架。

    可能不少朋友還記得我前不久一篇關(guān)于Craig如何評(píng)價(jià)Struts和JSF的文章,看來(lái)Craig確實(shí)還挺有號(hào)召力的。

    感興趣的上這里下一個(gè)Shale版本預(yù)覽一下吧:

    http://cvs.apache.org/builds/jakarta-struts/nightly/struts-shale/

     

    posted @ 2005-02-01 22:33 laogao 閱讀(317) | 評(píng)論 (0)編輯 收藏

     

    大半年的時(shí)間都在忙這個(gè)項(xiàng)目,雖然現(xiàn)在離UAT還有一段時(shí)間,但是還是覺(jué)得應(yīng)該給自己一點(diǎn)小小的獎(jiǎng)勵(lì)了,于是和LP一起去選購(gòu)了一套迷你音響。見(jiàn)下圖:

    ONKYO1.jpg

    怎么樣,還不錯(cuò)吧?

    買了之后才有閑暇去想這件事背后的東西:原來(lái)適當(dāng)?shù)南M(fèi)對(duì)于長(zhǎng)期高度緊張的IT類工作相當(dāng)有好處,有助于改善工作狀態(tài)和調(diào)整心情。畢竟誰(shuí)都受不了成天對(duì)著電腦,擔(dān)著沉重的壓力,而沒(méi)有合適的途徑去宣泄的。

    希望大家不要跟我前段時(shí)間一樣,把工作當(dāng)成了全部,忽略了生命中其他美好和重要的東西。

     

    posted @ 2005-01-24 13:02 laogao 閱讀(474) | 評(píng)論 (1)編輯 收藏

    ?

    <回復(fù)格式>

    First Name:

    Last Name:

    E-mail:

    請(qǐng)完整填寫以便順利接收邀請(qǐng)。

    posted @ 2005-01-21 09:15 laogao 閱讀(2003) | 評(píng)論 (34)編輯 收藏

     

    一個(gè)典型的J2EE項(xiàng)目通常應(yīng)該使用哪一種開發(fā)流程呢?流行開發(fā)流程有很多種,應(yīng)用比較廣泛的有:瀑布式、迭代式、以及RUP (Rational Unified Process)。每一種都有其優(yōu)點(diǎn)和不足,所以通常我們應(yīng)該把它們結(jié)合起來(lái)而不是認(rèn)定其中一個(gè)然后100%按著它的規(guī)范走。

     

    首先來(lái)看看每一種大致是什么意思:

     

    [瀑布式]

    這種模式的流程強(qiáng)調(diào)在開始編碼和測(cè)試之前完成所有的需求分析和設(shè)計(jì),這種模式歷史相當(dāng)久遠(yuǎn),也很成熟,甚至到了今天,這種模式還是被廣泛的采用到絕大多數(shù)公司和項(xiàng)目中。采用這種模式開發(fā)的項(xiàng)目通常很大,并且需要較長(zhǎng)時(shí)間交付。正因?yàn)槿绱耍@些項(xiàng)目通常會(huì)有更多的風(fēng)險(xiǎn):在業(yè)務(wù)需求不斷變化的今天,如果待開發(fā)的系統(tǒng)不能及時(shí)反應(yīng)出這些需求的變化,最終開發(fā)出來(lái)的產(chǎn)品可能已經(jīng)不是客戶真正需要的了。

     

    [迭代式]

    為了應(yīng)對(duì)傳統(tǒng)瀑布式的開發(fā)在處理需求變更上的不足,近些年出現(xiàn)了一種全新的極限編程的概念。極限編程(XP)的核心思想在于:從長(zhǎng)遠(yuǎn)看,早期發(fā)現(xiàn)錯(cuò)誤以及降低復(fù)雜度可以節(jié)約成本。極限編程強(qiáng)調(diào)我們將任務(wù)/系統(tǒng)細(xì)分為可以在較短周期解決的一個(gè)個(gè)子任務(wù)/模塊,并且強(qiáng)調(diào)測(cè)試、代碼質(zhì)量和及早發(fā)現(xiàn)問(wèn)題。通常,通過(guò)一個(gè)個(gè)短小的迭代周期,我們就可以獲得一個(gè)個(gè)階段性的進(jìn)展,并且可以及時(shí)形成一個(gè)版本供用戶參考,以便及時(shí)對(duì)用戶可能的需求變更作出響應(yīng)。

     

    [RUP]

    RUP的全稱是Rational Unified Process,是一套定義得很完整的軟件工程模型。它強(qiáng)調(diào)編碼前的需求分析和設(shè)計(jì),以及短迭代周期的開發(fā)和發(fā)布。它鼓勵(lì)團(tuán)隊(duì)首先開發(fā)項(xiàng)目中風(fēng)險(xiǎn)最高的模塊,用更多的時(shí)間發(fā)現(xiàn)和應(yīng)對(duì)問(wèn)題,當(dāng)設(shè)計(jì)需要變化時(shí),它也能夠在一定程度上減輕一些重復(fù)工作。不過(guò),因?yàn)?/span>RUP十分嚴(yán)謹(jǐn),也比較具體,通常要完全跟著這個(gè)流程走也不是100%必要。

     

    下面我們來(lái)看看實(shí)際上我們應(yīng)該采取什么樣的流程或者策略:

     

    實(shí)際的J2EE項(xiàng)目中,RUP的應(yīng)用呈逐年上升的趨勢(shì),不過(guò)也并非所有這些采用了RUP的項(xiàng)目也是完完全全RUP式的。我們可以考慮一種綜合上面三種流程的優(yōu)點(diǎn)的方式,根據(jù)具體的項(xiàng)目量體裁衣。需要對(duì)這幾種的優(yōu)點(diǎn)來(lái)一個(gè)總結(jié):瀑布式由于比較成熟,通常很好的強(qiáng)調(diào)了先需求后設(shè)計(jì)再編碼的重要性,也比較適合大公司先預(yù)算后執(zhí)行的方式;極限編程強(qiáng)調(diào)測(cè)試先行和簡(jiǎn)單是美,這樣有利于及早發(fā)現(xiàn)問(wèn)題以及更好的應(yīng)對(duì)變化;RUP強(qiáng)調(diào)的集中化的分析和設(shè)計(jì)也有其不可替代的優(yōu)越性。

     

    要做出一個(gè)結(jié)論性的答案并不容易,如果貴公司相對(duì)較大并且愿意支付一定的管理成本來(lái)推一套成熟且完整的開發(fā)流程并在公司內(nèi)部所有項(xiàng)目或者是大多數(shù)項(xiàng)目嚴(yán)格執(zhí)行,我想RUP應(yīng)該是首選;如果貴公司希望有更大的靈活性,可以考慮一些折衷的方案,根據(jù)具體的項(xiàng)目,從上面三種流程提取有價(jià)值的部分,來(lái)確定具體的流程。

     

     

    posted @ 2005-01-16 23:18 laogao 閱讀(859) | 評(píng)論 (0)編輯 收藏

     

    有人做了一個(gè)總結(jié):一個(gè)J2EE項(xiàng)目組通常會(huì)有怎樣的人員結(jié)構(gòu),或者說(shuō),一個(gè)J2EE項(xiàng)目通常需要怎樣一組代表不同的工作性質(zhì)及內(nèi)容的角色。實(shí)際情況中,一個(gè)人可能同時(shí)承擔(dān)多個(gè)不同的角色,一個(gè)角色也可以有很多不同的人來(lái)分擔(dān)。這些角色包括:

    • 項(xiàng)目經(jīng)理
    • 架構(gòu)師
    • 領(lǐng)域?qū)<?/li>
    • 美工
    • 前端開發(fā)人員
    • 后端開發(fā)人員
    • 數(shù)據(jù)庫(kù)設(shè)計(jì)師
    • 數(shù)據(jù)庫(kù)管理員
    • 數(shù)據(jù)移植專員
    • 系統(tǒng)管理員
    • 測(cè)試人員

    其中,項(xiàng)目經(jīng)理負(fù)責(zé)安排和協(xié)調(diào)整個(gè)開發(fā)小組的任務(wù)和進(jìn)度,向決策層和用戶代表反饋?lái)?xiàng)目進(jìn)展和狀態(tài),以及負(fù)責(zé)保證項(xiàng)目組或者其成員所需的所有資源足夠完成項(xiàng)目開發(fā)并及時(shí)到位;架構(gòu)師負(fù)責(zé)項(xiàng)目的總體技術(shù)選擇、系統(tǒng)設(shè)計(jì)和指定具體的技術(shù)標(biāo)準(zhǔn)和細(xì)節(jié),通常也需要跟整個(gè)小組緊密協(xié)調(diào);領(lǐng)域?qū)<邑?fù)責(zé)采集和分析用戶需求,在整個(gè)項(xiàng)目開發(fā)過(guò)程中了解和確保產(chǎn)品能夠符合最終用戶的要求;美工設(shè)計(jì)用戶界面;前端開發(fā)人員按照美工的藍(lán)圖增加具體的前端處理邏輯;后端開發(fā)人員實(shí)現(xiàn)具體的業(yè)務(wù)邏輯,通常包括持久層的操作;數(shù)據(jù)庫(kù)設(shè)計(jì)師負(fù)責(zé)通過(guò)領(lǐng)域?qū)<姨峁┑男枨笤O(shè)計(jì)數(shù)據(jù)庫(kù)的表結(jié)構(gòu)和表關(guān)系,如ER圖;數(shù)據(jù)庫(kù)管理員根據(jù)ER圖生成實(shí)際的數(shù)據(jù)表,并對(duì)數(shù)據(jù)庫(kù)進(jìn)行維護(hù),以及協(xié)助優(yōu)化數(shù)據(jù)庫(kù)和SQL查詢語(yǔ)句性能等;數(shù)據(jù)移植專員負(fù)責(zé)編寫移植腳本,幫助客戶將原有系統(tǒng)數(shù)據(jù)導(dǎo)入新的系統(tǒng);系統(tǒng)管理員負(fù)責(zé)維護(hù)開發(fā)工作中需要的所有開發(fā)、測(cè)試、產(chǎn)品環(huán)境,以及進(jìn)行產(chǎn)品發(fā)布;測(cè)試人員負(fù)責(zé)測(cè)試,保證開發(fā)出來(lái)的產(chǎn)品滿足需求文檔并沒(méi)有bug,測(cè)試人員應(yīng)該具備一定的領(lǐng)域知識(shí)。

    拿一個(gè)具體的項(xiàng)目組來(lái)說(shuō):

    這是一個(gè)J2EE外包項(xiàng)目的開發(fā)組,共有人員30名,1個(gè)項(xiàng)目經(jīng)理、2個(gè)領(lǐng)域?qū)<摇?2個(gè)開發(fā)人員開發(fā)人員、1個(gè)數(shù)據(jù)庫(kù)管理員、以及4個(gè)測(cè)試人員。由于設(shè)計(jì)部分是由甲方做好,項(xiàng)目組沒(méi)有專職的架構(gòu)師和數(shù)據(jù)庫(kù)設(shè)計(jì)師。項(xiàng)目采用EJB+Struts的總體結(jié)構(gòu)。

    項(xiàng)目經(jīng)理負(fù)責(zé)同甲方的項(xiàng)目經(jīng)理確認(rèn)任務(wù)安排和進(jìn)度,以及協(xié)調(diào)項(xiàng)目組內(nèi)部各成員的工作進(jìn)展,并提供必要的行政和軟硬件支持,同時(shí)執(zhí)行項(xiàng)目經(jīng)理的其他日常工作,如配置管理等。2個(gè)領(lǐng)域?qū)<覅⑴c同甲方領(lǐng)域?qū)<业臏贤ǎ_保拿到的需求文檔和設(shè)計(jì)文檔充足且合理,并參與SIT,確保最終的產(chǎn)品符合文檔的需求。數(shù)據(jù)庫(kù)管理員負(fù)責(zé)維護(hù)并同步甲方提供的數(shù)據(jù)庫(kù),同時(shí)協(xié)助開發(fā)人員優(yōu)化SQL。測(cè)試人員負(fù)責(zé)在不同模塊完成后進(jìn)行功能測(cè)試以及最后的SIT。開發(fā)人員按照不同的模塊分成5個(gè)組,每個(gè)組又進(jìn)一步細(xì)分為1個(gè)后端開發(fā)人員和多個(gè)前端開發(fā)人員,后端開發(fā)人員同時(shí)是該組組長(zhǎng)。所有組長(zhǎng)統(tǒng)一向項(xiàng)目經(jīng)理匯報(bào)。

    由此可見(jiàn),上面總結(jié)出的那個(gè)J2EE項(xiàng)目組成員角色清單還是相當(dāng)有說(shuō)服力。總體上,在這個(gè)項(xiàng)目組中,項(xiàng)目經(jīng)理是其協(xié)調(diào)和溝通作用的單點(diǎn),項(xiàng)目組的主體由開發(fā)人員構(gòu)成(這不奇怪,本身就是要開發(fā)產(chǎn)品嘛),領(lǐng)域?qū)<液蛿?shù)據(jù)庫(kù)管理員主要還是配合開發(fā)人員的工作,而測(cè)試人員則除了一般意義上的測(cè)試和配合之外,因?yàn)橄鄬?duì)獨(dú)立于開發(fā),也起到一定的對(duì)項(xiàng)目開發(fā)流程的監(jiān)督作用。

    J2EE這個(gè)東東(可以理解為一組規(guī)范)本身就強(qiáng)調(diào)角色分工,當(dāng)這些分工不同的角色都盡心盡力做好自己的工作,文檔齊備,并且各個(gè)不同的角色之間保持足夠的溝通,加上確定的流程,面向企業(yè)的Java項(xiàng)目就會(huì)更傾向于朝著健康可控的方向發(fā)展。

     

    posted @ 2005-01-16 22:11 laogao 閱讀(828) | 評(píng)論 (0)編輯 收藏

     

    前兩天在Java的官網(wǎng)上看到一篇Craig McClanhahan的采訪,是有關(guān)Struts、JSF和Java Studio Creator的。其中比較大的篇幅在說(shuō)Java Studio Creator,對(duì)此我沒(méi)有興趣。我感興趣的是有關(guān)Struts和JSF的關(guān)系那一段,大意是這樣:

    JSF其實(shí)完全可以和Struts共存。在現(xiàn)有的Struts應(yīng)用基礎(chǔ)上,開發(fā)人員可以逐個(gè)頁(yè)面的將JSP換作使用JSF的實(shí)現(xiàn)。Struts和JSF的最大區(qū)別在于Struts的特點(diǎn)在于它很好的實(shí)現(xiàn)了MVC模式的架構(gòu),而JSF則把重點(diǎn)放在了MVC其中的一部分:V,也就是視圖。所以它們應(yīng)該是互補(bǔ)的而不是互斥的。

    對(duì)于未來(lái)的Struts 2.0,Craig也提出了一些設(shè)想,如把現(xiàn)在的三個(gè)類處理一個(gè)流程的模式改為使用單個(gè)類對(duì)應(yīng)一個(gè)頁(yè)面的做法。

    這篇文章還提到有一點(diǎn),就是J2EE 5.0的API將包含JSF這一部分的API,所以今后實(shí)現(xiàn)了J2EE 5.0的應(yīng)用服務(wù)器上將都可以運(yùn)行JSF。

    原文見(jiàn):
    http://java.sun.com/developer/technicalArticles/Interviews/jsf_mcClanahan.html


    posted @ 2005-01-15 13:12 laogao 閱讀(715) | 評(píng)論 (0)編輯 收藏

     

    在TSS.com上看到一篇好文,有關(guān)Struts使用中各種不同的Action和ActionForm組合的利弊。我先消化一下,整理好,供大家參考。原文標(biāo)題:Struts action mappings: Divide Et Impera,作者:Michael Juravlev。在TSS上的URL:http://www.theserverside.com/articles/article.tss?l=StrutsActionMapping

    說(shuō)明:閱讀本文需要一定的Struts基礎(chǔ)。
    注:文中小寫的action不一定代表具體的Struts Action類,有時(shí)也指作為一個(gè)整體的action mapping。


    [1] 完整的action

    <action path="/aFullAction"
        type="somePackage.someActionClass">
        name="someForm"
        input="someJSP.jsp"
        <forward name="successful" path="someJSP.jsp"/>
        <forward name="failed" path="someOtherJSP.jsp"/>
    </action>

    首先,Struts的ActionServlet接收到一個(gè)請(qǐng)求,然后根據(jù)struts-config.xml的配置定位到相應(yīng)的mapping(映射);接下來(lái)如果form的范圍是request或者在定義的范圍中找不到這個(gè)form,創(chuàng)建一個(gè)新的form實(shí)例;取得form實(shí)例以后,調(diào)用其reset()方法,然后將表單中的參數(shù)放入form,如果validate屬性不為false,調(diào)用validate()方法;如果validate()返回非空的ActionErrors,將會(huì)被轉(zhuǎn)到input屬性指定的URI,如果返回空的ActionErrors,那么執(zhí)行Action的execute()方法,根據(jù)返回的ActionForward確定目標(biāo)URI。

    這樣做的效果是:execute()僅當(dāng)validate()成功以后才執(zhí)行;input屬性指定的是一個(gè)URI。


    [2] 僅有Form的action

    <action path="/aFormOnlyAction"
        type="org.apache.struts.actions.ForwardAction"
        name="someForm"
        input="someJSP.jsp"
        parameter="someOtherJSP.jsp"
    />

    首先,Struts會(huì)在定義的scope搜尋someForm,如果找到則重用,如果找不到則新建一個(gè)實(shí)例;取得form實(shí)例以后,調(diào)用其reset()方法,然后將表單中的參數(shù)放入form,如果validate屬性不為false,調(diào)用validate()方法;如果validate()返回非空的ActionErrors,將會(huì)被轉(zhuǎn)到input屬性指定的URI,如果返回空的ActionErrors,那么轉(zhuǎn)到parameter屬性指定的目標(biāo)URI。

    這樣做的效果是:沒(méi)有action類可以存放我們的業(yè)務(wù)邏輯,所以所有需要寫入的邏輯都只能寫到form的reset()或者validate()方法中。validate()的作用是驗(yàn)證和訪問(wèn)業(yè)務(wù)層。因?yàn)檫@里的action映射不包括forward(也沒(méi)有意義),所以不能重定向,只能用默認(rèn)的那個(gè)forward。這種僅有form的action可以用來(lái)處理數(shù)據(jù)獲取并forward到另一個(gè)JSP來(lái)顯示。


    [3] 僅有Action的action

    <action path="/anActionOnlyAction"
        type="somePackage.someActionClass">
        input="someJSP.jsp"
        <forward name="successful" path="someJSP.jsp"/>
        <forward name="failed" path="someOtherJSP.jsp"/>
    </action>

    首先,ActionServlet接收到請(qǐng)求后,取得action類實(shí)例,調(diào)用execute()方法;然后根據(jù)返回的ActionForward在配置中找forward,forward到指定的URI或action。

    這樣做的效果是:沒(méi)有form實(shí)例被傳入execute()方法,于是execute()必須自己從請(qǐng)求中獲取參數(shù)。Action可以被forward或者重定向。這種action不能處理通過(guò)HTML FORM提交的請(qǐng)求,只能處理鏈接式的請(qǐng)求。


    [4] 僅有JSP的action

    <action path="/aJSPOnlyAction"
        type="org.apache.struts.actions.ForwardAction"
        parameter="someOtherJSP.jsp"
    />

    首先,ActionServlet接到請(qǐng)求后調(diào)用ForwardAction的execute()方法,execute()根據(jù)配置的parameter屬性值來(lái)forward到那個(gè)URI。

    這樣做的效果是:沒(méi)有任何form被實(shí)例化,比較現(xiàn)實(shí)的情形可能是form在request更高級(jí)別的范圍中定義;或者這個(gè)action被用作在應(yīng)用程序編譯好后充當(dāng)系統(tǒng)參數(shù),只需要更改這個(gè)配置文件而不需要重新編譯系統(tǒng)。


    [5] 兩個(gè)action對(duì)應(yīng)一個(gè)form

    <action path="/anAction"
        type="somePackage.someActionClass">
        name="someForm"
        input="someJSP.jsp"
        <forward name="successful" path="/anotherAction.do"/>
    </action>
    <action path="/anotherAction"
        type="somePackage.someOtherActionClass">
        name="someForm"
        input="someOtherJSP.jsp"
        <forward name="successful" path="someResultJSP.jsp"/>
    </action>

    就每個(gè)單獨(dú)的action來(lái)講,處理上并沒(méi)有和完整的action有什么實(shí)質(zhì)的區(qū)別。這個(gè)組合模式可以被用來(lái)傳遞命令對(duì)象(form)。需要注意的是在后一個(gè)action中同樣會(huì)調(diào)用form的reset()和validate()方法,因此我們必須確保form中的信息不被重寫。

    處理的方式大致分為兩種:a) 在request中放入一個(gè)指示器表明前一個(gè)action有意向后一個(gè)action傳遞form,從而在后一個(gè)action可以保留那個(gè)form中的值,這一方式只能在使用forward時(shí)使用。b) 當(dāng)使用redirect而不是forward時(shí),可以把指示器放在session或更高的級(jí)別,在命令鏈的最后一環(huán)將這個(gè)指示器清除。


    [6] 兩個(gè)action對(duì)應(yīng)兩個(gè)form

    <action path="/anAction"
        type="somePackage.someActionClass">
        name="someForm"
        input="someJSP.jsp"
        <forward name="successful" path="/anotherAction.do" redirect="true"/>
    </action>
    <action path="/anotherAction"
        type="somePackage.someOtherActionClass">"
        name="someOtherForm"
        input="someOtherJSP.jsp"
        <forward name="successful" path="someResultJSP.jsp"/>
    </action>

    這個(gè)組合方式跟前一種在流程上沒(méi)有太大區(qū)別,只是我們現(xiàn)在對(duì)于兩個(gè)action分別提供了form,于是代碼看上去更加清晰。于是我們可以分別處理WEB應(yīng)用程序的輸入和輸出。值得注意的是,后一個(gè)action同樣會(huì)嘗試往form中寫入那些參數(shù),不過(guò)我們可以這樣處理:a) 在后一個(gè)form中使用另一套屬性名;b) 只提供getter而不提供setter。

    大致的處理是這樣:
    前一個(gè)action接收輸入、驗(yàn)證、然后將數(shù)據(jù)寫入業(yè)務(wù)層或持久層,重定向到后一個(gè)action,后一個(gè)action手動(dòng)的從業(yè)務(wù)層/持久層取出數(shù)據(jù),寫入form(通過(guò)其他方式),交給前臺(tái)JSP顯示。

    這樣做的好處是不必保留輸入form中的值,因此可以使用redirect而不是forward。這樣就降低了兩個(gè)action之間的耦合度,同時(shí)也避免了不必要的重復(fù)提交。


    posted @ 2005-01-15 13:10 laogao 閱讀(515) | 評(píng)論 (0)編輯 收藏

         摘要:   [版權(quán)聲明]作者保留本文的版權(quán)。如需轉(zhuǎn)載,請(qǐng)保持文章完整,注明出處,并保留此聲明;如需用于商業(yè)目的,須作者本人書面許可。作者的聯(lián)系E-mail: gaoyuxiang@gmail.com     [準(zhǔn)備工作]   首先,為了了解J2SE(TM) 5.0的新的語(yǔ)言特性,你需要下載新版的JDK,在這里可以找到下載鏈接:http://java....  閱讀全文

    posted @ 2005-01-12 22:49 laogao 閱讀(5739) | 評(píng)論 (7)編輯 收藏

     

    我最近遇到了MSN登錄的奇怪問(wèn)題,重裝N遍MSN也沒(méi)有用,登錄Hotmail似乎也是同樣的問(wèn)題,最后發(fā)現(xiàn)原來(lái)是IE安全設(shè)置的問(wèn)題。現(xiàn)在解決了,如果你遇到類似問(wèn)題,希望這個(gè)blog對(duì)你有所幫助。

    我的系統(tǒng)是Windows Server 2003,IE6.0SP1,默認(rèn)的IE設(shè)置會(huì)自動(dòng)檢查服務(wù)器的證書是否有效,這就是罪魁禍?zhǔn)住=鉀Q方法如下:在IE中打開工具->選項(xiàng)->高級(jí),勾掉"檢查服務(wù)器證書吊銷狀態(tài)(需要重新啟動(dòng))",重啟機(jī)器就好了。不知道這個(gè)是個(gè)bug還是MS自己的MSN服務(wù)器證書出現(xiàn)了過(guò)期現(xiàn)象?

    BTW,如果你用的是MSN Messenger 7.0的beta,你無(wú)法正常登錄時(shí)應(yīng)該會(huì)看到這樣的錯(cuò)誤代碼:80072f19


    posted @ 2005-01-12 22:40 laogao 閱讀(407) | 評(píng)論 (0)編輯 收藏

    僅列出標(biāo)題
    共34頁(yè): First 上一頁(yè) 26 27 28 29 30 31 32 33 34 
    主站蜘蛛池模板: 国产亚洲精品a在线观看app| 一区二区无码免费视频网站| 久久九九久精品国产免费直播| 免费很黄无遮挡的视频毛片| 亚洲av午夜电影在线观看| 亚洲欧美日韩自偷自拍| 亚洲精品无码久久久久秋霞 | 91免费资源网站入口| 69堂人成无码免费视频果冻传媒| 1000部夫妻午夜免费| 日本zzzzwww大片免费| 一级女人18毛片免费| 日韩精品成人无码专区免费| 女人被弄到高潮的免费视频| 国产人妖ts在线观看免费视频| 国产真实伦在线视频免费观看| 国产免费牲交视频| 亚洲中文字幕无码爆乳av中文| 国产亚洲精品自在久久| 久久青青草原亚洲av无码app| 亚洲国产电影在线观看| 亚洲综合色婷婷在线观看| 苍井空亚洲精品AA片在线播放| 免费看内射乌克兰女| 99视频在线免费观看| 在线免费中文字幕| AV片在线观看免费| 免费很黄很色裸乳在线观看| 亚洲永久精品ww47| 亚洲黄网站wwwwww| 亚洲AV无码成人网站在线观看| 免费看黄福利app导航看一下黄色录像| 成人无码区免费A∨直播| 日韩精品无码一区二区三区免费| 中文字幕影片免费在线观看| 四虎影视精品永久免费| 国产亚洲精品自在久久| 亚洲成A人片在线播放器| 九一在线完整视频免费观看| 亚洲欧洲免费视频| 日本成人在线免费观看|