Repository: nifi Updated Branches: refs/heads/master 58cb900b9 -> f04cd8681
NIFI-5479 Upgraded Jetty. Moved where we unpack bundled deps to so we can avoid a new jetty bug with META-INF loading logic. Signed-off-by: Koji Kawamura <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/a27ccd8a Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/a27ccd8a Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/a27ccd8a Branch: refs/heads/master Commit: a27ccd8a56fb52a61d79f87711324142a5b4a141 Parents: 58cb900 Author: joewitt <[email protected]> Authored: Thu Aug 2 16:29:23 2018 -0400 Committer: Koji Kawamura <[email protected]> Committed: Tue Aug 28 15:28:11 2018 +0900 ---------------------------------------------------------------------- .../java/org/apache/nifi/nar/NarClassLoader.java | 16 ++++++++-------- .../main/java/org/apache/nifi/nar/NarUnpacker.java | 5 ++++- .../org/apache/nifi/web/server/JettyServer.java | 2 +- .../nifi-framework/nifi-web/nifi-web-ui/pom.xml | 5 +++++ pom.xml | 2 +- 5 files changed, 19 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/nifi/blob/a27ccd8a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarClassLoader.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarClassLoader.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarClassLoader.java index eb4539c..776ec28 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarClassLoader.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarClassLoader.java @@ -176,21 +176,21 @@ public class NarClassLoader extends URLClassLoader { /** * Adds URLs for the resources unpacked from this NAR: - * <ul><li>the root: for classes, <tt>META-INF</tt>, etc.</li> - * <li><tt>META-INF/dependencies</tt>: for config files, <tt>.so</tt>s, + * <ul><li>the root: for classes, <tt>NAR-INF</tt>, etc.</li> + * <li><tt>NAR-INF/bundled-dependencies</tt>: for config files, <tt>.so</tt>s, * etc.</li> - * <li><tt>META-INF/dependencies/*.jar</tt>: for dependent + * <li><tt>NAR-INF/bundled-dependencies/*.jar</tt>: for dependent * libraries</li></ul> * * @param root the root directory of the unpacked NAR. * @throws IOException if the URL list could not be updated. */ private void updateClasspath(File root) throws IOException { - addURL(root.toURI().toURL()); // for compiled classes, META-INF/, etc. + addURL(root.toURI().toURL()); // for compiled classes, WEB-INF, NAR-INF/, etc. - File dependencies = new File(root, "META-INF/bundled-dependencies"); + File dependencies = new File(root, "NAR-INF/bundled-dependencies"); if (!dependencies.isDirectory()) { - LOGGER.warn(narWorkingDirectory + " does not contain META-INF/bundled-dependencies!"); + LOGGER.warn(narWorkingDirectory + " does not contain NAR-INF/bundled-dependencies!"); } addURL(dependencies.toURI().toURL()); if (dependencies.isDirectory()) { @@ -206,9 +206,9 @@ public class NarClassLoader extends URLClassLoader { @Override protected String findLibrary(final String libname) { - File dependencies = new File(narWorkingDirectory, "META-INF/bundled-dependencies"); + File dependencies = new File(narWorkingDirectory, "NAR-INF/bundled-dependencies"); if (!dependencies.isDirectory()) { - LOGGER.warn(narWorkingDirectory + " does not contain META-INF/bundled-dependencies!"); + LOGGER.warn(narWorkingDirectory + " does not contain NAR-INF/bundled-dependencies!"); } final File nativeDir = new File(dependencies, "native"); http://git-wip-us.apache.org/repos/asf/nifi/blob/a27ccd8a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarUnpacker.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarUnpacker.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarUnpacker.java index d476883..afd021e 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarUnpacker.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarUnpacker.java @@ -195,7 +195,7 @@ public final class NarUnpacker { final File unpackedNar = entry.getKey(); final BundleCoordinate bundleCoordinate = entry.getValue(); - final File bundledDependencies = new File(unpackedNar, "META-INF/bundled-dependencies"); + final File bundledDependencies = new File(unpackedNar, "NAR-INF/bundled-dependencies"); unpackBundleDocs(docsDirectory, mapping, bundleCoordinate, bundledDependencies); } @@ -261,6 +261,9 @@ public final class NarUnpacker { while (jarEntries.hasMoreElements()) { JarEntry jarEntry = jarEntries.nextElement(); String name = jarEntry.getName(); + if(name.contains("META-INF/bundled-dependencies")){ + name = name.replace("META-INF/bundled-dependencies", "NAR-INF/bundled-dependencies"); + } File f = new File(workingDirectory, name); if (jarEntry.isDirectory()) { FileUtils.ensureDirectoryExistAndCanReadAndWrite(f); http://git-wip-us.apache.org/repos/asf/nifi/blob/a27ccd8a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/JettyServer.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/JettyServer.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/JettyServer.java index 971353b..66ecd45 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/JettyServer.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/JettyServer.java @@ -384,7 +384,7 @@ public class JettyServer implements NiFiServer { // consider each nar working directory bundles.forEach(bundle -> { final BundleDetails details = bundle.getBundleDetails(); - final File narDependencies = new File(details.getWorkingDirectory(), "META-INF/bundled-dependencies"); + final File narDependencies = new File(details.getWorkingDirectory(), "NAR-INF/bundled-dependencies"); if (narDependencies.isDirectory()) { // list the wars from this nar final File[] narDependencyDirs = narDependencies.listFiles(WAR_FILTER); http://git-wip-us.apache.org/repos/asf/nifi/blob/a27ccd8a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml index abeffa7..a4a2175 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml @@ -914,6 +914,11 @@ above. --> <dependency> + <groupId>org.eclipse.jetty</groupId> + <artifactId>apache-jstl</artifactId> + <scope>provided</scope> + </dependency> + <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <scope>provided</scope> http://git-wip-us.apache.org/repos/asf/nifi/blob/a27ccd8a/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index b1f5250..80662ee 100644 --- a/pom.xml +++ b/pom.xml @@ -93,7 +93,7 @@ <inceptionYear>2014</inceptionYear> <org.slf4j.version>1.7.25</org.slf4j.version> <ranger.version>1.0.0</ranger.version> - <jetty.version>9.4.3.v20170317</jetty.version> + <jetty.version>9.4.11.v20180605</jetty.version> </properties> <repositories>
