You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Antonio Sanso (JIRA)" <ji...@apache.org> on 2016/11/22 13:10:58 UTC

[jira] [Issue Comment Deleted] (SLING-6315) o.a.sling.scripting.core: IllegalStateException: The bundle is uninstalled

     [ https://issues.apache.org/jira/browse/SLING-6315?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Antonio Sanso updated SLING-6315:
---------------------------------
    Comment: was deleted

(was: [~radu.cotescu] are you fine if I apply this patch 

{code}
     @Override
     public void bundleChanged(BundleEvent event) {
-        if (event.getType() == BundleEvent.STARTED
-            && event.getBundle().getEntry(ENGINE_FACTORY_SERVICE) != null) {
-            synchronized (this.engineSpiBundles) {
-                this.engineSpiBundles.add(event.getBundle());
-            }
-            this.refreshScriptEngineManager();
-        } else if (event.getType() == BundleEvent.STOPPED) {
-            boolean refresh;
-            synchronized (this.engineSpiBundles) {
-                refresh = this.engineSpiBundles.remove(event.getBundle());
-            }
-            if (refresh) {
+        Bundle bundle = null;
+                
+        try {
+            bundle = event.getBundle();
+        } catch (IllegalStateException ie) {
+            log.info("bundleChanged: an issue while refreshing the Script Engine Manager occurred", ie);
+        }
+        
+        if (bundle != null) {
+            if (event.getType() == BundleEvent.STARTED
+                    && bundle.getEntry(ENGINE_FACTORY_SERVICE) != null) {
+                synchronized (this.engineSpiBundles) {
+                    this.engineSpiBundles.add(bundle);
+                }
                 this.refreshScriptEngineManager();
+            } else if (event.getType() == BundleEvent.STOPPED) {
+                boolean refresh;
+                synchronized (this.engineSpiBundles) {
+                    refresh = this.engineSpiBundles.remove(bundle);
+                }
+                if (refresh) {
+                    this.refreshScriptEngineManager();
+                }
             }
         }
     }
{code})

> o.a.sling.scripting.core: IllegalStateException: The bundle is uninstalled
> --------------------------------------------------------------------------
>
>                 Key: SLING-6315
>                 URL: https://issues.apache.org/jira/browse/SLING-6315
>             Project: Sling
>          Issue Type: Bug
>          Components: Scripting
>            Reporter: Antonio Sanso
>            Assignee: Antonio Sanso
>            Priority: Minor
>
> {noformat}
> 18.11.2016 02:58:23.445 *ERROR* [FelixDispatchQueue] org.apache.sling.scripting.core FrameworkEvent ERROR (java.lang.IllegalStateException: The bundle is uninstalled.)java.lang.IllegalStateException: The bundle is uninstalled.
> 	at org.apache.felix.framework.Felix.getBundleEntry(Felix.java:1741)
> 	at org.apache.felix.framework.BundleImpl.getEntry(BundleImpl.java:291)
> 	at org.apache.sling.scripting.core.impl.ScriptEngineManagerFactory.bundleChanged(ScriptEngineManagerFactory.java:158)
> 	at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:916)
> 	at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:835)
> 	at org.apache.felix.framework.util.EventDispatcher.run(EventDispatcher.java:1148)
> 	at org.apache.felix.framework.util.EventDispatcher.access$000(EventDispatcher.java:55)
> 	at org.apache.felix.framework.util.EventDispatcher$1.run(EventDispatcher.java:103)
> 	at java.lang.Thread.run(Thread.java:745)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)