在servlet中,我从窗体中获取值并尝试使用表单值更新属性文件值。但我得到java.io.IOException
。请告诉我如何解决这个问题并更新我的属性文件。如果我更新属性文件,我将能够看到.properties文件中的更改。 Servlet的当我尝试更新.properties文件时发生异常
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String name=request.getParameter("appName");
String link=request.getParameter("appLink");
String database=request.getParameter("appDB");
String webServices=request.getParameter("appWebService");
FileInputStream in = new FileInputStream("server_url.properties");
in.close();
Properties props = new Properties();
props.load(in);
FileOutputStream outputStream = new FileOutputStream("server_url.properties");
props.setProperty("DemoApps_Links", link);
props.setProperty("DemoApps_DataBase", database);
props.store(outputStream , null);
outputStream.flush();
outputStream.close();
System.out.println(link);
System.out.println(database);
}
堆栈跟踪
java.io.IOException: Stream Closed
java.io.FileInputStream.readBytes(Native Method)
java.io.FileInputStream.read(FileInputStream.java:243)
java.util.Properties$LineReader.readLine(Properties.java:434)
java.util.Properties.load0(Properties.java:353)
java.util.Properties.load(Properties.java:341)
com.monitoring.servlets.updateDetails.doPost(updateDetails.java:38)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
不知道这是你的错误,但是你确定在调用'load'时你应该使用一个关闭的'FileInputStream'? – TNT 2015-03-03 05:41:59
检查堆栈跟踪1. java.io.IOException:流关闭2.com.monitoring.servlets.updateDetails.doPost(updateDetails.java:38) – nayakam 2015-03-03 05:43:11
@TNT我删除了close()..我现在没有得到这个异常。但更新没有反映在我的.properties文件中。 – V02169194 2015-03-03 06:15:53