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

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

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

    zhyiwww
    用平實的筆,記錄編程路上的點點滴滴………
    posts - 536,comments - 394,trackbacks - 0

    itVincent , 非常感謝您的回復.看到您的回復,我就作了一下測試.

    我的測試代碼如下:

    ????????????? //InputStream in=LoginAction.class.getClassLoader().getResourceAsStream("com.yourcompany.struts.config.properties");

    ????????????? InputStream in=LoginAction.class.getClassLoader().getResourceAsStream("com//yourcompany//struts//config.properties");

    ?????????????

    ????????????? System.out.println("properties? in? is? :?? "+in);

    ????????????? Properties? p=new Properties();

    ????????????? try {

    ???????????????????? p.load(in);

    ???????????????????? String h=p.getProperty("JAVA_HOME");

    ???????????????????? System.out.println("JAVA_HOME?? :? --? "+h);??

    ????????????? } catch (IOException e1) {

    ???????????????????? e1.printStackTrace();

    ????????????? }

    ?

    我是在一個 action 中寫的這段代碼 .

    執(zhí)行后的結果如下:(錯誤)

    properties? in? is? :?? null

    2006-10-24 20:36:59 org.apache.struts.action.RequestProcessor processExc

    警告 : Unhandled Exception thrown: class java.lang.NullPointerException

    ?

    頁面的錯誤是:

    message

    ?

    description The server encountered an internal error () that prevented it from fulfilling this request.

    ?

    exception

    ?

    javax.servlet.ServletException

    ?????? org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:523)

    ?????? org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)

    ?????? org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)

    ?????? org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)

    ?????? org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)

    ?????? javax.servlet.http.HttpServlet.service(HttpServlet.java:709)

    ?????? javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

    ?

    ?

    root cause

    ?

    java.lang.NullPointerException

    ?????? java.util.Properties$LineReader.readLine(Properties.java:365)

    ?????? java.util.Properties.load(Properties.java:293)

    ?????? com.yourcompany.struts.action.LoginAction.execute(LoginAction.java:134)

    ?????? org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)

    ?????? org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)

    ?????? org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)

    ?????? org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)

    ?????? javax.servlet.http.HttpServlet.service(HttpServlet.java:709)

    ?????? javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

    ?

    ?

    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.

    ?

    ?????? 然后我又作了如下的測試:

    ????????????? InputStream in1=LoginAction.class.getClassLoader().getResourceAsStream("config.properties");

    ?????????????

    ????????????? System.out.println("properties? in? is? :?? "+in1);

    ????????????? Properties? p1=new Properties();

    ????????????? try {

    ???????????????????? p1.load(in1);

    ???????????????????? String h1=p1.getProperty("JAVA_HOME");

    ???????????????????? System.out.println("JAVA_HOME?? :? --? "+h1);

    ????????????? } catch (IOException e1) {

    ???????????????????? // TODO Auto-generated catch block

    ???????????????????? e1.printStackTrace();

    ????????????? }

    執(zhí)行后的結果如下:(正確)

    properties? in? is? :?? java.io.ByteArrayInputStream@257b34

    JAVA_HOME?? :? --? c:jdk

    xml file? url? is? :? file:/D:/jakarta-tomcat-5.0.28/webapps/StrutsDemo/WEB-INF/

    classes/config.xml

    inputStream of the xml file? is? :? java.io.BufferedInputStream@ca5bff

    reader?? :?? org.dom4j.io.SAXReader@1cd3dd7

    document doc? is? :? org.dom4j.tree.DefaultDocument@13c4c09 [Document: name null

    ]

    action? document? is? :? org.dom4j.tree.DefaultDocument@13c4c09 [Document: name

    null]

    note? List is : 1

    java home? node? is? :? org.dom4j.tree.DefaultElement@f1f34a [Element: <java att

    ributes: []/>]

    the value of the java node? is? :? c:\jdk

    ?

    兩次的結果不同點的分析:

    ?????? (主要看藍色的代碼部分,文件的存放位置的不同)

    ?????? 第一種方法,配置文件在 WEB-INF/classes/ com/yourcompany/struts/config.properties 目錄下放著。也就是在包目錄下。

    ?????? 第二種方法,配置文件在 WEB-INF/classes/ 目錄下存放。也就是根目錄下。

    ?????? 所以如果用第二種方法來讀第一種配置文件,就會出錯。

    ?
    --------------------------------------------------------------------------------------------------------------
    以上是我的個人見解,歡迎批評指正.zhyiwww@163.com



    |----------------------------------------------------------------------------------------|
                               版權聲明  版權所有 @zhyiwww
                引用請注明來源 http://www.tkk7.com/zhyiwww   
    |----------------------------------------------------------------------------------------|
    posted on 2006-10-24 21:03 zhyiwww 閱讀(3529) 評論(3)  編輯  收藏 所屬分類: discuss

    FeedBack:
    # re: 就讀取Properties文件問題回復itVincent
    2006-10-24 23:02 | itvincent[匿名]
    對,應該有這樣的區(qū)別,多謝測試  回復  更多評論
      
    # re: 就讀取Properties文件問題的回復
    2006-12-26 09:47 | 小哥
    多謝提供這么好的經(jīng)驗啊!困擾幾天的問題終于解決了~~

    在工程中使用ClassLoader,然后直接getResourceAsStream("....."),最好用的配置文件路徑還是WEB-INF/classes/ 目錄下存放,使用很方便!
      回復  更多評論
      
    # re: 就讀取Properties文件問題回復itVincent
    2013-05-18 21:51 | 楊俊林
    非常感謝,您的方法是我發(fā)現(xiàn)的唯一能行的,別的好像在WEB里面都不行。  回復  更多評論
      

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 日日摸夜夜添夜夜免费视频| 日本黄色动图免费在线观看| 一本久久a久久精品亚洲| 日本在线免费播放| 亚洲欧美中文日韩视频| 国产精品亚洲片在线观看不卡| 国产成人精品免费视| 免费福利在线观看| 亚洲国产中文在线二区三区免| 男人的天堂亚洲一区二区三区| 国产免费人成视频在线播放播| 激情亚洲一区国产精品| 国产亚洲精品线观看动态图| 国产成人A在线观看视频免费 | 国产精品亚洲综合久久| 亚洲中文字幕丝袜制服一区| 妻子5免费完整高清电视| 免费人成网站永久| 亚洲a级片在线观看| 国产亚洲福利精品一区| 日日操夜夜操免费视频| 精品无码国产污污污免费网站| 免费无码午夜福利片| 国产精品亚洲精品观看不卡| 久久被窝电影亚洲爽爽爽| 啊灬啊灬别停啊灬用力啊免费看| 亚洲免费中文字幕| 日韩精品无码免费专区午夜不卡| 亚洲av永久中文无码精品| 亚洲精品国产啊女成拍色拍| 在线播放亚洲第一字幕| 国产伦精品一区二区三区免费迷| 久草免费在线观看视频| 国产一精品一av一免费爽爽| 五月天婷婷精品免费视频| 亚洲AV女人18毛片水真多| 亚洲人配人种jizz| 亚洲成综合人影院在院播放| 亚洲av无码专区国产乱码在线观看| 免费jlzzjlzz在线播放视频| 性感美女视频在线观看免费精品|