当前位置: 首页 > 知识库问答 >
问题:

在域模式下在从属设备之间共享属性文件Wildfly10

竺焕
2023-03-14

在域模式下,我可以使用属性文件作为模块,但问题是如果文件中有任何修改,那么我需要对域中的所有从属设备进行修改。我想集中文件,以便在某一点上我可以更改,它将反映在所有从属设备上。

我知道领域。xml,我们可以配置全局级别的系统属性,但我有大约25个属性文件。

那么有没有办法集中文件呢??

myjar.jar
-->package
   --> class
-->properties
   -->xml files

myjar.jar是一个存档的jar文件来获取xml文件

 URL url = Thread.currentThread().getContextClassLoader().getResource("./properties");

File queryFolder = new File(url.getFile());

for (File fileName : queryFolder.listFiles())  // null pointer exception
{
    if (fileName.getName().toUpperCase().endsWith("XML"))
    {   
            saxParser.parse(fileName, this);
     }
}

这不管用。

试过这个

如何列出JAR文件中的文件?

并面临以下链接中给出的相同问题

使用java nio路径时,没有安装JBoss wildfly 8.x提供程序“vfs”

URL w_url = mmyClass.class.getProtectionDomain().getCodeSource().getLocation();
            JarEntry w_ze = null;
            LOGGER.info("Jar******************" + w_url.toString());
            if (w_url.toString().endsWith(".jar")) 
            {
                try (JarInputStream jar = new JarInputStream(w_url.openStream())) 
                {
                    while ((w_ze = jar.getNextJarEntry()) != null)
                    {
                        LOGGER.info("Name *******" + w_ze.getName());
                    }
                }
                catch(Exception e)
                {

                }
            }

共有1个答案

欧阳勇军
2023-03-14

在war文件中添加了properties文件夹,并使用war文件的servlet中的以下代码获取了分解的文件夹路径。

config.getServletContext().getRealPath("/");

这给出了文件夹的vfs路径。

并在中配置相同

System.setProperty("REALPATH", config.getServletContext().getRealPath("/"));

并在jar文件中使用相同的。

 类似资料:
  • 问题内容: 我对进程之间具有文件句柄的共享资源有疑问。这是我的测试代码: 然后我得到如下图所示: 我认为当我将对象放入队列时,对象被序列化了,而文件句柄无法序列化,所以,我得到了: 有人对此有任何想法吗?如果要共享具有文件句柄属性的对象,该怎么办? 问题答案: 我不得不反对(总之,不仅仅会放在注释中;-) @Mark反复断言文件句柄不能“在运行的进程之间传递”-这在现实,现代中根本不是真的操作系统

  • 我有两个问题。我理解,如果我在cookie中指定域为(带前导点),那么所有子域都可以共享一个cookie。 是否可以访问在中创建的cookie(没有子域)? 如果在中创建,(没有子域)是否可以访问cookie?

  • 我们在独立模式下进行了早期开发,其中属性文件可以包含在命令行中。 现在我们正在进行部署,服务器将处于域模式,但是方便的命令行属性不再起作用了。 我看到属性可以用jboss-cli加载,也可以放在domain.xml中,但是这两者的形式与标准属性文件不同。我不想更改该文件,因为其他程序正在使用同一个文件。 我忽略了什么吗?

  • 问题内容: 假设我有一个要注入到config中的模块: 有两个子模块: 这是第一个: 第二个是相同的,以简化示例: 您会注意到,您可以将它们作为提供者来访问以配置选项: 如果我们在控制器中,则可以覆盖每个范围,例如: 但是,如果他们总是共享相同的财产怎么办?如何在提供商之间共享某些东西? 我可以同时为和注入和配置共享属性吗? 如何同时访问和作为单个模块的扩展? 问题答案: 将模块插入两个共享这些属

  • null 在列出的3个选项中,只有最后一个可以使用projectile(可能还有其他Emacs包)。但我需要能够访问/修改文件从Windows以及,所以这不是一个可行的选择。 有没有人为此找到好的解决方案?

  • 问题内容: 我有一些cookie存储在http://sub1.myserver.com中 ,我希望能够在http://myserver.com中看到它们。 问题答案: 我能够使用以下代码来做到这一点: