Java 小程序不保存/加载内部 xml 文件

Posted

技术标签:

【中文标题】Java 小程序不保存/加载内部 xml 文件【英文标题】:Java applet doesn't save/load internal xml files 【发布时间】:2013-08-02 08:43:11 【问题描述】:

我正在制作某种计算器,您可以在其中输入要购买的商品数量,然后它会返回这些商品的价格。该应用程序正在从存储在 jar 文件中的 XML 文件加载价格。 还有一个弹出窗口,我可以在其中修改这些价格并将它们保存到 XML 文件中。

我使用的是 NetBeans IDE 7.3.1。从小程序查看器运行此小程序时,一切正常。我可以加载和保存这个 xml 文件。

问题出在我从其他位置在浏览器中运行这个小程序的地方。 XML 文件正确加载,但在更改和保存价格时,它仍会加载修改前的价格。

我已经检查了查找路径是否有任何错误:

"file:\J:\root_path\prices.xml" -> load
"jar:file:/J:/root_path/App.jar!/prices.xml" -> save

注意:在 root_path(放置 jar 文件的目录)中,prices.xml 文件不存在,所以我确信它从 jar 文件内部加载了正确的 XML 文件。

有人遇到过类似的问题吗?

【问题讨论】:

您无法回写到Jar 文件。使用某种数据库 但是我至少可以将这个文件写在“靠近”JAR 文件的相对路径中吗?我不想使用数据库,因为我可能会遇到更多问题,而且我已经对这个 java 小程序很生气。 【参考方案1】:

这是因为需要从浏览器运行小程序的安全警察。请参阅below 文档以及此文档中的安全策略来解决您的问题

【讨论】:

嗯,您提供的链接都是关于数据库(例如 SQL)连接的,我只是使用 Properties 类加载 XML 文件。 如果你想从浏览器运行的小程序读取/写入文件,而不是你需要签名的 jar + 需要一些读/写策略。 ***.com/questions/3088282/… 还是不行。我已经使用 keytool 和 jarsigner 签署了 JAR 文件并添加了策略文件。我无法修改 XML 文件。

以上是关于Java 小程序不保存/加载内部 xml 文件的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序开发——活动规则类文案文件读取及自动转换为小程序排版代码

小程序异常监控及错误处理

Java / Android - 读取、操作 XML 文件并将其保存到内部存储

支付宝小程序开发——修改小程序原生radio默认样式

如何在小程序里下载网站里的文件

钉钉小程序开发实战:第三章,小程序企业内部开发应用