3
<%! FxDataModel FxDataModel = null;
    public void jspInit() {
    Properties fxProp = new Properties();

    ServletContext ctx = getServletContext();
    String path = ctx.getRealPath("/WEB-INF/fxRates.csv");
    fxProp.getProperty(path);
    try{
       FileInputStream fis = new FileInputStream( ctx.getRealPath( ctx.getInitParameter( FxDataModel.FX_PRP_FILE_NAME ) ) );
       // Now that you have fis you can load properties.
       fxProp.load( fis );
       // Now, you are done with fis so close it
       fis.close();
    }catch ( IOException e ) {}
    FxDataModel = new FxDataModel( fxProp );
}
%>

在 NetBeans 中查看我的代码,一切似乎都很好。但是,当我运行它时,我得到一个 HTTP 状态 500 错误。当我问我的教授如何解决它时,他告诉我,

“显然,fxRates.csv 不是因为您未能使用 getRealPath 将文件名扩展为绝对路径并将其重新插入到属性对象 fxProp 中。”

我不完全确定我必须添加项目中的哪些其他代码,但我感觉错误存在于本节中。我究竟做错了什么?

4

1 回答 1

1

Properties api 的工作方式类似于 map

Properties p = new Properties()  
p.put('something','thisandthat') 
p.get('something')

使用 put 添加或更新属性并获取检索。不知道你想做什么

于 2012-11-09T16:20:07.020 回答