Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 7.1.0.Alpha1
    • Fix Version/s: 7.1.0.Beta1
    • Component/s: OSGi
    • Labels:
      None
    • Workaround:
      Workaround Exists
    • Workaround Description:
      Hide

      The BundleContext can be obtained from a BundleReference

          private BundleContext getBundleContextFromClass() {
              BundleReference bref = (BundleReference) ConfigurationAdmin.class.getClassLoader();
              Bundle bundle = bref.getBundle();
              if (bundle.getState() != Bundle.ACTIVE) {
                  try {
                      bundle.start();
                  } catch (BundleException ex) {
                      log.errorf(ex, "Cannot start bundle: %s", bundle);
                  }
              }
              return bundle.getBundleContext();
          }
      
      Show
      The BundleContext can be obtained from a BundleReference private BundleContext getBundleContextFromClass() { BundleReference bref = (BundleReference) ConfigurationAdmin. class. getClassLoader(); Bundle bundle = bref.getBundle(); if (bundle.getState() != Bundle.ACTIVE) { try { bundle.start(); } catch (BundleException ex) { log.errorf(ex, "Cannot start bundle: %s" , bundle); } } return bundle.getBundleContext(); }

      Description

      This is with reference to thread on community forum

      http://community.jboss.org/thread/172622

      I am trying to access a OSGI Bundle from a Web Application. Where getting following error.

      12:16:04,070 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/MyRestService].[SimpleClientServlet]] (http--127.0.0.1-8080-1) Allocate exception for servlet SimpleClientServlet: java.lang.IllegalArgumentException: Can not set org.osgi.framework.BundleContext field sample.SimpleClientServlet.context to org.jboss.osgi.framework.internal.SystemBundleContext
      at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(Unknown Source) [:1.6.0_25]
      at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(Unknown Source) [:1.6.0_25]
      at sun.reflect.UnsafeObjectFieldAccessorImpl.set(Unknown Source) [:1.6.0_25]
      at java.lang.reflect.Field.set(Unknown Source) [:1.6.0_25]

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  thomas.diesler Thomas Diesler
                  Reporter:
                  nikhil_joshi Nikhil Joshi
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  2 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: