用xml作为数据源存储数据。在后台用dom动态修改添加xml中的内容。
我在前台页面用ajax定时读取xml。
xml被动态修改后,前台页面不能获取修改后的xml文档内容,必须重启tomcat才能将修改后的xml文档读出来。
如何才可以不用reloading context,就将修改后的xml文档显示出来?
我想在刷新页面以后就将修改后的xml文档内容读出来~~,该怎么办?
我在前台页面用ajax定时读取xml。
xml被动态修改后,前台页面不能获取修改后的xml文档内容,必须重启tomcat才能将修改后的xml文档读出来。
如何才可以不用reloading context,就将修改后的xml文档显示出来?
我想在刷新页面以后就将修改后的xml文档内容读出来~~,该怎么办?
解决方案 »
- 求指教
- 在JSP页面中如何更好的显示数据集,有哪些特别好用的?
- The method getDataSource(HttpServletRequest) is undefined for the type LoginAction
- google分页解决方案
- 用C#.NET访问JAVA的WebServer出问题高手请回答
- 大家帮忙看看啊,jdk1.4,用schema验证xml文档合理性(validation)的java例子
- 一个关于strutsr的问题,困扰我好几天了
- 在linux下,如何用JAVA访问windows的数据源
- Error : java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 在ubuntu下java连接
- 时间类转换int
- 请问如何写一个类让服务器在且仅在启动时执行?
- EJB3.0+Struts2.0在测试时,jboss启动异常
* 把数据写到XML文件的方法
*
* @param doc
* 需要写入数据的XML文件的Document
*/
private void output_xml(Document doc) { ConfigManager xmlConfig = new ConfigManager(
"./servConfig/xmlConfig.ini");
File file = new File(xmlConfig.getValue("xml_path"));
OutputFormat op_format = OutputFormat.createPrettyPrint();
op_format.setEncoding("GBK");
op_format.setIndent("\t");
try {
XMLWriter xml_writer = new XMLWriter(new FileOutputStream(file),
op_format);
xml_writer.write(doc); } catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
/**
* 查找用户数据,
*
* @param doc
* 要查找的数据文件
* @param id
* 通过用户id条件精确查询
*
*/
private Element search_user(Document doc, String id) { Element root = doc.getRootElement();
String xml_path = "/users/user[@sid='" + id + "']";
Node node = root.selectSingleNode(xml_path);
if (node != null) {
if (node.getNodeType() == Node.ELEMENT_NODE) {
return (Element) node;
}
} return null;
}
* 建立数据文件的读取连接
*
* @return 读取成功时返回Document对象,失败则返回空
*/
public static Document getDocument() { Document doc1 = null;
ConfigManager xmlConfig = new ConfigManager(
"./servConfig/xmlConfig.ini");
File file = new File(xmlConfig.getValue("xml_path"));
SAXReader xml_read = new SAXReader();
try {
doc1 = xml_read.read(file);
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
return doc1; }
你没明白我的意思,用JSP操纵xml我会用,可是用的时候出了点儿问题。我可以把数据写进xml文件里去,但是要把xml文件读出来的时候只有每次重启tomcat的时候才能读取xml文件,而我刷新页面的时候即使xml文件已经被修改了,也不能读取修改后的xml文件,读到的只是修改前的xml~~
我想问的是这个问题应该怎么解决?是哪里出问题了?
~~~~~
怎么关闭连接呀?
例如:
<Context path="/test" docBase="test"
debug="0" privileged="true" reloadable="true" >
</Context>
最重要的就是 reloadable="true"了。