From f5c0579a5d35134b863476aa2429d1b3b4ab5bb6 Mon Sep 17 00:00:00 2001 From: Colby Litnak Date: Mon, 22 Sep 2014 12:04:33 -0600 Subject: [PATCH] https://issues.jboss.org/browse/RAILO-3213 --- .../loader/engine/CFMLEngineFactory.java | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/railo-java/railo-loader/src/railo/loader/engine/CFMLEngineFactory.java b/railo-java/railo-loader/src/railo/loader/engine/CFMLEngineFactory.java index d5bf72f473..377d0bfb74 100755 --- a/railo-java/railo-loader/src/railo/loader/engine/CFMLEngineFactory.java +++ b/railo-java/railo-loader/src/railo/loader/engine/CFMLEngineFactory.java @@ -38,6 +38,7 @@ public class CFMLEngineFactory { // set to false to disable patch loading, for example in major alpha releases private static final boolean PATCH_ENABLED = true; + private static boolean loadRailoFromClassPath = false; private static CFMLEngineFactory factory; private static File railoServerRoot; private static CFMLEngineWrapper engineListener; @@ -171,6 +172,12 @@ else if(root.canWrite()) { } } catch(IOException ioe){} + // if this is true, the railo patch file should be renamed to a jar file and placed on the classpath in order for it to work. + String loadRailoFromClasspathProperty = config.getInitParameter("railo-load-from-classpath"); + if ( !Util.isEmpty( loadRailoFromClasspathProperty ) ) { + loadRailoFromClassPath = loadRailoFromClasspathProperty.toLowerCase().equals("true"); + } + } @@ -198,6 +205,19 @@ private CFMLEngine getEngine() throws ServletException { } private void initEngine() throws ServletException { + + if ( loadRailoFromClassPath ) { + try { + engine = getEngine( mainClassLoader ); + } catch (Exception e) { + e.printStackTrace(); + } + } else { + _initPatchEngine(); + } + } + + private void _initPatchEngine() throws ServletException { int coreVersion=Version.getIntVersion(); long coreCreated=Version.getCreateTime();