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

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

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

    posts - 72, comments - 66, trackbacks - 0, articles - 0
    要用java檢測(cè)網(wǎng)絡(luò)資源是否可用,我們可以采用以下兩種方法:
    一種方法是調(diào)用ping命令,
    如:
          Process   process=   Runtime.getRuntime().exec("ping   192.168.0.5");  
          InputStreamReader   return   =   new   InputStreamReader(process.getInputStream());  
          LineNumberReader   returnData   =   new   LineNumberReader   (return);    
       
          String   line="";  
          while((line=returnData.readLine())!=null){  
              System.out.println(line);  
          }
    通用對(duì)返回?cái)?shù)據(jù)進(jìn)行分析,來探測(cè)網(wǎng)絡(luò)資源的可用性;
    這種方法有一個(gè)缺點(diǎn):就是許多網(wǎng)絡(luò)資源是不允許被ping的,從而針對(duì)這類資源無法探測(cè)。
    另一種方法是使用URL,
    如:
                    URL url = new URL("http://localhost");  
                    HttpURLConnection connection = (HttpURLConnection) url.openConnection();  
                    int state = connection.getResponseCode();  
                    String responseContent = connection.getResponseMessage();
    通過分析ResponseCode來探測(cè)網(wǎng)絡(luò)資源的可用性。
    另外,當(dāng)指定的網(wǎng)絡(luò)資源走SSL時(shí),即用https協(xié)議時(shí),需要加入可信證書到trust.keystore.
    通常情況下,我的用的是jre的keystore:cacerts,如jdk6下的路徑為:jdk1.6.0_05/jre/lib/security/cacerts
    我們需要把指定資源的數(shù)字證書導(dǎo)入到信任庫 cacerts.
    可以使用keytool工具:keytool -import -alias localhost -file localhost.cer -keystore cacerts
    如果我們不想使用jre的keystore,我們可以建立自己的keystore,
            System.setProperty("javax.net.ssl.trustStore", "/home/liqingfeng/workspace/Test/mystore/localhost.keystore");
            System.setProperty("javax.net.ssl.trustStorePassword","changeit");
    用keytool命令把localhost的證書導(dǎo)入到指定的localhost.keystore中。這樣我們就可以用URL來探測(cè)SSL網(wǎng)絡(luò)資源的可用性了。

    這里必須注意的是指定網(wǎng)絡(luò)資源的證書的CN,必須與資源訪問地址一致,否則會(huì)報(bào)錯(cuò)。
    以下是常見異常:
    當(dāng)keystore中沒有指定資源的證書時(shí):
    javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    當(dāng)指定資源證書的CN與資源訪問地址不匹配時(shí):
    javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching localhost found





    Feedback

    # re: java 探測(cè)網(wǎng)絡(luò)資源是否可用  回復(fù)  更多評(píng)論   

    2008-07-28 23:59 by 隔葉黃鶯
    new URL("http://localhost");

    這只是對(duì) http 協(xié)議的,其他諸多的 ftp(21) smtp(25) pop3(110) snmp(161,152) ssh(22),不一而足,應(yīng)用的,如 oracle(1521) mysql(3066),更是數(shù)不勝數(shù),逐一去試,好像就是端口描述工具干的事情。

    要是ping(icmp) 協(xié)議能通就能斷定網(wǎng)絡(luò)通的,就是那些禁ping(對(duì)icmp消息不回送)的就不是很好辦。

    還有一種情況,如果是要經(jīng)過代碼才能到達(dá)的,是否應(yīng)考慮呢?

    # re: java 探測(cè)網(wǎng)絡(luò)資源是否可用  回復(fù)  更多評(píng)論   

    2008-08-04 14:21 by Fingki.li
    我這里只提到了http/https protocol相關(guān)的,至于其它協(xié)議,我沒有去嘗試,但感覺用socket可以解決吧。
    對(duì)于ping這種方法我是很不贊同的,除非是內(nèi)部測(cè)試,因?yàn)楹芏嗲闆r下對(duì)外公開的網(wǎng)絡(luò)都是禁ping的。
    至于說“如果是要經(jīng)過代碼才能到達(dá)的”,對(duì)于http/https protocol來講,無非就是一些servlet,訪問相應(yīng)的servlet是否可用就可以了。

    # re: java 探測(cè)網(wǎng)絡(luò)資源是否可用[未登錄]  回復(fù)  更多評(píng)論   

    2008-10-13 18:07 by XYZ
    指定資源證書的CN與資源訪問地址不匹配這是指什么??
    能否詳細(xì)講一下,我現(xiàn)在遇到了javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching localhost found這個(gè)異常。

    # re: java 探測(cè)網(wǎng)絡(luò)資源是否可用[未登錄]  回復(fù)  更多評(píng)論   

    2008-10-20 16:05 by Fingki.li
    @XYZ
    證書有個(gè)屬性叫CN,一般我們申請(qǐng)證書時(shí),它要與相應(yīng)的資源相一致。
    比如,為www.abc.com申請(qǐng)證書,這個(gè)證書的CN就為www.abc.com
    用以表明這個(gè)證書是為它頒發(fā)的。
    如果不一致就會(huì)報(bào)上面的異常。
    主站蜘蛛池模板: 国产禁女女网站免费看| 扒开双腿猛进入爽爽免费视频| 一区国严二区亚洲三区| 日韩亚洲翔田千里在线| 免费一级国产生活片| 美女黄频视频大全免费的| 国产精品酒店视频免费看| 看免费毛片天天看| 午夜国产羞羞视频免费网站| 看亚洲a级一级毛片| 亚洲精品成人网久久久久久| 一二三区免费视频| 亚洲AV成人片色在线观看高潮| 3344永久在线观看视频免费首页| 亚洲色图黄色小说| 日韩高清免费在线观看| 永久免费精品影视网站| 亚洲AV中文无码字幕色三| 无码AV片在线观看免费| 亚洲码一区二区三区| 四虎成人免费影院网址| 一级做a爰片久久毛片免费陪| 亚洲综合网站色欲色欲| 蜜桃AV无码免费看永久| 亚洲AV成人影视在线观看| 国产免费131美女视频| 一级女人18片毛片免费视频| 国产精品亚洲片在线| 国产1024精品视频专区免费| 亚洲AV日韩AV永久无码色欲| 中文亚洲AV片在线观看不卡| 最近中文字幕完整版免费高清| 亚洲综合色一区二区三区| 亚洲免费视频一区二区三区| 黄网站免费在线观看| 亚洲最大天堂无码精品区| 狠狠综合久久综合88亚洲| 日本最新免费网站| 一级毛片免费观看不收费| 亚洲喷奶水中文字幕电影| 亚洲人AV永久一区二区三区久久|