TomEE: игнорировать docBase от сканирования - PullRequest
0 голосов
/ 05 ноября 2019

У меня есть docBase (альтернативный docroot), который содержит много статического контента, который я не включаю в файл войны. Однако загрузочный код TomEE сканирует каталоги docBase на наличие файлов JAR и других компонентов JavaEE. Поскольку docBase содержит большое количество файлов, развертывание занимает очень много времени. Мне было интересно, есть ли флаг или параметр, который я могу использовать, чтобы игнорировать обработку (сканирование) этих каталогов.

Я пытался настроить файл server.xml TomEE, но, похоже, ничего не работает.

        <Context docBase="/large/directory" path="/foo/bar">
          <JarScanner scanClassPath="false" scanAllFiles="false" scanAllDirectories="false" />
          <Parameter name= "org.apache.tomee.catalina.TomcatWebAppBuilder.IGNORE" value="true"  />
          <Environment name="org.apache.tomee.catalina.TomcatWebAppBuilder.IGNORE" value="true"  type="java.lang.String" />
        </Context>

Однако с этими изменениями docBase все еще обрабатывается и сканируется.

1 Ответ

0 голосов
/ 06 ноября 2019

Копаясь в исходном коде [1] Я обнаружил, что системные свойства, которые, похоже, правильно пропускают docBase от сканирования:

    private static boolean isExcludedBySystemProperty(final StandardContext standardContext) {
        String name = standardContext.getName();
        if (name == null) {
            name = standardContext.getPath();
            if (name == null) { // possible ?
                name = "";
            }
        }

        if (name.startsWith("/")) {
            name = name.substring(1);
        }

        final SystemInstance systemInstance = SystemInstance.get();
        return "true".equalsIgnoreCase(systemInstance.getProperty(name + ".tomcat-only", systemInstance.getProperty("tomcat-only", "false")));
    }

Передав системные свойства -Dfoo / bar.tomcat-only =правда, похоже, делает свое дело. Открытый исходный код для победы!

  1. https://github.com/apache/tomee/blob/master/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...