DQL 查询分析页面如何将文件保存到非项目路径?
需求描述
DQL 查询分析页面中保存文件时,默认可以保存到本地(浏览器默认下载路径)或者项目路径下:
客户有一个需求:
现在默认机制是保存到 web 项目内的目录, 这样的话 web 项目重新打包后文件就都丢失了,所以希望能保存到 web 项目外的目录。
解决方法
修改 web.xml 如下内容,配置文件存放主目录:
<servlet>
<servlet-name>dataSphereServlet</servlet-name>
<servlet-class>com.raqsoft.guide.web.DataSphereServlet</servlet-class>
<init-param>
<param-name>root-path</param-name>
<param-value>F:/files/</param-value>//文件存放主目录
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
注意:此功能需要使用 2021 年 1 月 23 号之后的 guide.jar
另外,在 qyx.jsp 中有这样一个标签属性:
guideConf.qyxFolderOnServer = "qyx/";
这个属性是指 web.xml 里主目录下的子目录路径,举个例子:
qyx.jsp 页面保存文件时,配置的保存路径是 test, 文件名称是 ceshi,那么按照上面 web.xml 和 qyx.jsp 的路径配置,此文件的保存路径是:F:/files/qyx/test/ceshi.qyx
也就是说,web.xml 里配置的路径 +jsp 里配置的路径 + 保存对话框里的路径共同组成了文件保存的绝对路径地址。