Uploaded image for project: 'Spring Roo'
  1. Spring Roo
  2. ROO-3171

Created Roo add-on throws stack trace on exit of Roo shell

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Cannot Reproduce
    • Affects Version/s: 1.2.1.RELEASE, 1.2.2.RELEASE
    • Fix Version/s: 1.2.3.RELEASE
    • Component/s: @ ROO SHELL
    • Labels:
      None
    • Environment:
      Mac OS X 10.7.4

      Description

      For several of my add-ons, I'm not able to quit Roo without generating an error message:

      roo> quit
      [org.sillyweasel.addons.spock [84]] FrameworkEvent ERROR
      org.apache.felix.log.LogException: org.osgi.framework.ServiceException: Service factory returned null.
          at org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:343)
          at org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:221)
          at org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:297)
          at org.apache.felix.framework.Felix.getService(Felix.java:3139)
          at org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:411)
          at org.springframework.roo.startlevel.Activator.getClassName(Activator.java:77)
          at org.springframework.roo.startlevel.Activator.access$000(Activator.java:44)
          at org.springframework.roo.startlevel.Activator$1.serviceChanged(Activator.java:188)
          at org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:871)
          at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:733)
          at org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:662)
          at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:3890)
          at org.apache.felix.framework.Felix.access$000(Felix.java:79)
          at org.apache.felix.framework.Felix$2.serviceChanged(Felix.java:728)
          at org.apache.felix.framework.ServiceRegistry.unregisterService(ServiceRegistry.java:135)
          at org.apache.felix.framework.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:129)
          at org.apache.felix.scr.impl.manager.AbstractComponentManager.unregisterComponentService(AbstractComponentManager.java:470)
          at org.apache.felix.scr.impl.manager.AbstractComponentManager$Satisfied.deactivate(AbstractComponentManager.java:1074)
          at org.apache.felix.scr.impl.manager.AbstractComponentManager.disposeInternal(AbstractComponentManager.java:357)
          at org.apache.felix.scr.impl.manager.AbstractComponentManager.dispose(AbstractComponentManager.java:196)
          at org.apache.felix.scr.impl.config.ConfiguredComponentHolder.disposeComponents(ConfiguredComponentHolder.java:299)
          at org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:319)
          at org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:340)
          at org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:207)
          at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:807)
          at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:729)
          at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:610)
          at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3879)
          at org.apache.felix.framework.Felix.stopBundle(Felix.java:2268)
          at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1215)
          at org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java:266)
          at java.lang.Thread.run(Thread.java:722)
      roo> %          
      

      I'm not sure what is causing this. I reviewed my source code, and made sure that my package names and my final jar name were correct. It is confusing to me.

      I've got my add-ons deployed - two of them currently fail with this so can be cloned and debugged if you wish to research further. It seems to only throw exceptions when I mount them with osgi obr install and then quit, not when I mount them with osgi start and quit. I did not see the same behavior with the unsigned bundles.

      The OBR is https://sillyweasel.forge.cloudbees.com/repositories/release/repository.xml
      The two plugins have public git repos of
      git://git.cloudbees.com/sillyweasel/spock-roo-addon.git
      and
      git://git.cloudbees.com/sillyweasel/jquery-roo-addon.git

      Is this something I'm doing wrong? If so, I'd like to document it in the book and on the online documentation so people have some troubleshooting tips when this happens.

      Ken

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              stewarta Alan Stewart
              Reporter:
              krimple Ken Rimple
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: