java - 属性文件作为 web.xml 中的初始参数

标签 java jakarta-ee servlets servlet-filters web.xml

我正在将托管在 websphere 中的基于 Jsp-servlet 的 Java 项目迁移到 tomcat。下面的init-param是在web.xml里面的一个filter定义。我移动了类路径的属性文件 src 文件夹。如何更改 web.xml 中的以下内容。我可以将属性文件定义为 init-param 因为我看到的大多数答案都使用 context-param 来定义属性文件。我不认为它是我的一个选择,因为现有的应用程序需要属性文件作为 init-param。

<init-param>
    <param-name>configPath</param-name>
    <param-value>/pws/WebSphere/AppServer/properties/fyp/filterConfig/filter.properties</param-value>
</init-param>

我试过了

<init-param>
      <param-name>configPath</param-name>
      <param-value>classpath:filter.properties</param-value>
</init-param>

它没有用。提前谢谢你,

最佳答案

检查您的 servlet 实现,您会发现如下内容:

  1. 从ServletContext获取上下文根路径;
  2. 附加从init-param获取的属性文件路径;
  3. 做一些文件操作

如您所问,您可以将 servlet 配置为:

    <init-param>
      <param-name>configPath</param-name>
      <param-value>filter.properties</param-value>
   </init-param>

然后将您的代码更改为

  1. 从init-param中获取文件名
  2. 打开流 this.getClass().getClassLoader().getResourceAsStream("fileName");
  3. 做一些文件操作

关于java - 属性文件作为 web.xml 中的初始参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15380817/

相关文章:

java - 在 EJB 中捕获 JPA 异常的正确方法是什么

javascript - Servlet 过滤器不允许在 jsp 文件中上传指向 js 库的链接

eclipse - Eclipse中如何关闭Tomcat的自动重启?

java - 在 mssql 的情况下,metadata.getTables 结果集为空

java - 安卓sqlite问题

java - 不同的应用程序服务器实现可以共享远程 EJB 吗?

jsp - 无法打印 servlet 中标签的值

java - Jackson:使用泛型将对象反序列化为数组

从批处理文件运行时,Java Jar 文件不发送电子邮件?

mongodb - 如何配置 jndi Glassfish 4 连接到 mongoDB 数据库