Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 属性文件作为web.xml中的init参数_Java_Jakarta Ee_Servlets_Servlet Filters_Web.xml - Fatal编程技术网

Java 属性文件作为web.xml中的init参数

Java 属性文件作为web.xml中的init参数,java,jakarta-ee,servlets,servlet-filters,web.xml,Java,Jakarta Ee,Servlets,Servlet Filters,Web.xml,我正在将websphere中托管的基于Jsp servlet的Java项目迁移到tomcat。以下init param位于web.xml中的过滤器定义中。我移动了属性文件src文件夹,它是classpath。如何在web.xml中更改以下内容。我可以将属性文件定义为init param吗?因为我看到的大多数答案都使用了context param来定义属性文件。我不认为这是我的选择,因为现有的应用程序需要属性文件是init param <init-param> <para

我正在将websphere中托管的基于Jsp servlet的Java项目迁移到tomcat。以下init param位于web.xml中的过滤器定义中。我移动了属性文件src文件夹,它是classpath。如何在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>

配置路径
/pws/WebSphere/AppServer/properties/fyp/filterConfig/filter.properties
我试过了

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

配置路径
类路径:filter.properties

它不起作用。提前感谢您,

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

  • 从ServletContext获取上下文根路径
  • 追加从init param获取的属性文件路径
  • 做一些文件操作
  • 如您所问,您可以将servlet配置为:

        <init-param>
          <param-name>configPath</param-name>
          <param-value>filter.properties</param-value>
       </init-param>
    
    
    配置路径
    过滤特性
    
    然后将代码更改为

  • 从init param获取文件名
  • 打开流this.getClass().getClassLoader().getResourceAsStream(“文件名”)
  • 做一些文件操作

  • 是否通过.getClassLoader().getResourceAsStream加载它?请参阅: