This is an automated email from the ASF dual-hosted git repository. radu pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-scripting-sightly-js-provider.git
The following commit(s) were added to refs/heads/master by this push: new c34f6a5 SLING-12755 - Break cyclic dependencies between the SightlyScriptEngineFactory and the BundledUnitManagerImpl service c34f6a5 is described below commit c34f6a58e6e47bddadbdf8e29bcb22eecc251721 Author: Radu Cotescu <r...@apache.org> AuthorDate: Fri Apr 25 09:14:57 2025 +0200 SLING-12755 - Break cyclic dependencies between the SightlyScriptEngineFactory and the BundledUnitManagerImpl service * remove the ScriptEngineManager dependency from the UseProviders to avoid cyclic dependencies --- .../org/apache/sling/scripting/sightly/js/impl/JsUseProvider.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/apache/sling/scripting/sightly/js/impl/JsUseProvider.java b/src/main/java/org/apache/sling/scripting/sightly/js/impl/JsUseProvider.java index db8aae5..6d85f8b 100644 --- a/src/main/java/org/apache/sling/scripting/sightly/js/impl/JsUseProvider.java +++ b/src/main/java/org/apache/sling/scripting/sightly/js/impl/JsUseProvider.java @@ -20,7 +20,7 @@ package org.apache.sling.scripting.sightly.js.impl; import javax.script.Bindings; import javax.script.ScriptEngine; -import javax.script.ScriptEngineManager; +import javax.script.ScriptEngineFactory; import org.apache.sling.api.resource.ResourceResolver; import org.apache.sling.api.scripting.LazyBindings; @@ -62,8 +62,8 @@ public class JsUseProvider implements UseProvider { private static final String JS_ENGINE_NAME = "rhino"; private static final JsValueAdapter jsValueAdapter = new JsValueAdapter(new AsyncExtractor()); - @Reference - private ScriptEngineManager scriptEngineManager; + @Reference(target = "(names=Rhino)") + private ScriptEngineFactory scriptEngineFactory; @Reference private ProxyAsyncScriptableFactory proxyAsyncScriptableFactory; @@ -78,7 +78,7 @@ public class JsUseProvider implements UseProvider { if (!Utils.isJsScript(identifier)) { return ProviderOutcome.failure(); } - ScriptEngine jsEngine = scriptEngineManager.getEngineByName(JS_ENGINE_NAME); + ScriptEngine jsEngine = scriptEngineFactory.getScriptEngine(); if (jsEngine == null) { return ProviderOutcome.failure( new SightlyException("Failed to obtain a " + JS_ENGINE_NAME + " JavaScript engine."));