Hello all, I'm currently working on a project in a part of which I need to port Knopflerfish OSGi framework to android and run some bundles in it. Some of the bundles work just fine, they're installed, active and working. Some others, however, are installed and active but fail to work properly due to a java.io.IOException !
For instance, whenever I try starting the Felix UPnP basedriver bundle I get the following error: [stderr] ## DEBUG: errors - FrameworkErrorEvent bundle #42 [stderr] ## DEBUG: errors - FrameworkErrorEvent throwable: [stderr] java.io.IOException: Failed to load dex class 'org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPIconImpl', java.lang.reflect.InvocationTargetException [stderr] at org.knopflerfish.framework.BundleClassLoader$1.get(BundleClassLoader.java:891) [stderr] at org.knopflerfish.framework.BundleClassLoader.searchFor0(BundleClassLoader.java:808) [stderr] at org.knopflerfish.framework.BundleClassLoader.searchFor(BundleClassLoader.java:635) [stderr] at org.knopflerfish.framework.PermissionOps.callSearchFor(PermissionOps.java:213) [stderr] at org.knopflerfish.framework.BundleClassLoader.findClass(BundleClassLoader.java:213) [stderr] at org.knopflerfish.framework.BundleClassLoader.loadClass(BundleClassLoader.java:349) [stderr] at java.lang.ClassLoader.loadClass(ClassLoader.java:511) [stderr] at org.apache.felix.upnp.basedriver.importer.util.DeviceSetup.deviceSetup(DeviceSetup.java:109) [stderr] at org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPDeviceImpl.<init>(UPnPDeviceImpl.java:57) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.registerUPnPDevice(MyCtrlPoint.java:336) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.doDeviceRegistration(MyCtrlPoint.java:846) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.deviceSearchResponseReceived(MyCtrlPoint.java:448) [stderr] at org.cybergarage.upnp.ControlPoint.performSearchResponseListener(ControlPoint.java:464) [stderr] at org.cybergarage.upnp.ControlPoint.searchResponseReceived(ControlPoint.java:530) [stderr] at org.cybergarage.upnp.ssdp.SSDPSearchResponseSocket.run(SSDPSearchResponseSocket.java:79) [stderr] at java.lang.Thread.run(Thread.java:1019) [stderr] java.lang.NoClassDefFoundError: org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPIconImpl [stderr] at org.apache.felix.upnp.basedriver.importer.util.DeviceSetup.deviceSetup(DeviceSetup.java:109) [stderr] at org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPDeviceImpl.<init>(UPnPDeviceImpl.java:57) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.registerUPnPDevice(MyCtrlPoint.java:336) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.doDeviceRegistration(MyCtrlPoint.java:846) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.deviceSearchResponseReceived(MyCtrlPoint.java:448) [stderr] at org.cybergarage.upnp.ControlPoint.performSearchResponseListener(ControlPoint.java:464) [stderr] at org.cybergarage.upnp.ControlPoint.searchResponseReceived(ControlPoint.java:530) [stderr] at org.cybergarage.upnp.ssdp.SSDPSearchResponseSocket.run(SSDPSearchResponseSocket.java:79) [stderr] at java.lang.Thread.run(Thread.java:1019) Caused by: [stderr] [stderr] java.lang.ClassNotFoundException: org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPIconImpl [stderr] at org.knopflerfish.framework.BundleClassLoader.findClass(BundleClassLoader.java:235) [stderr] at org.knopflerfish.framework.BundleClassLoader.loadClass(BundleClassLoader.java:349) [stderr] at java.lang.ClassLoader.loadClass(ClassLoader.java:511) [stderr] ... 9 more [stderr] ## DEBUG: errors - FrameworkErrorEvent bundle #42 [stderr] ## DEBUG: errors - FrameworkErrorEvent throwable: [stderr] java.io.IOException: Failed to load dex class 'org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPActionImpl', java.lang.reflect.InvocationTargetException [stderr] at org.knopflerfish.framework.BundleClassLoader$1.get(BundleClassLoader.java:891) [stderr] at org.knopflerfish.framework.BundleClassLoader.searchFor0(BundleClassLoader.java:808) [stderr] at org.knopflerfish.framework.BundleClassLoader.searchFor(BundleClassLoader.java:635) [stderr] at org.knopflerfish.framework.PermissionOps.callSearchFor(PermissionOps.java:213) [stderr] at org.knopflerfish.framework.BundleClassLoader.findClass(BundleClassLoader.java:213) [stderr] at org.knopflerfish.framework.BundleClassLoader.loadClass(BundleClassLoader.java:349) [stderr] at java.lang.ClassLoader.loadClass(ClassLoader.java:511) [stderr] at org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPServiceImpl.<init>(UPnPServiceImpl.java:54) [stderr] at org.apache.felix.upnp.basedriver.importer.util.DeviceSetup.deviceSetup(DeviceSetup.java:125) [stderr] at org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPDeviceImpl.<init>(UPnPDeviceImpl.java:57) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.registerUPnPDevice(MyCtrlPoint.java:336) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.doDeviceRegistration(MyCtrlPoint.java:846) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.deviceNotifyReceived(MyCtrlPoint.java:208) [stderr] at org.cybergarage.upnp.ControlPoint.performNotifyListener(ControlPoint.java:435) [stderr] at org.cybergarage.upnp.ControlPoint.notifyReceived(ControlPoint.java:523) [stderr] at org.cybergarage.upnp.ssdp.SSDPNotifySocket.run(SSDPNotifySocket.java:124) [stderr] at java.lang.Thread.run(Thread.java:1019) [stderr] java.lang.NoClassDefFoundError: org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPActionImpl [stderr] at org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPServiceImpl.<init>(UPnPServiceImpl.java:54) [stderr] at org.apache.felix.upnp.basedriver.importer.util.DeviceSetup.deviceSetup(DeviceSetup.java:125) [stderr] at org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPDeviceImpl.<init>(UPnPDeviceImpl.java:57) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.registerUPnPDevice(MyCtrlPoint.java:336) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.doDeviceRegistration(MyCtrlPoint.java:846) [stderr] at org.apache.felix.upnp.basedriver.importer.core.MyCtrlPoint.deviceNotifyReceived(MyCtrlPoint.java:208) [stderr] at org.cybergarage.upnp.ControlPoint.performNotifyListener(ControlPoint.java:435) [stderr] at org.cybergarage.upnp.ControlPoint.notifyReceived(ControlPoint.java:523) [stderr] at org.cybergarage.upnp.ssdp.SSDPNotifySocket.run(SSDPNotifySocket.java:124) [stderr] at java.lang.Thread.run(Thread.java:1019) Caused by: [stderr] [stderr] java.lang.ClassNotFoundException: org.apache.felix.upnp.basedriver.importer.core.upnp.UPnPActionImpl [stderr] at org.knopflerfish.framework.BundleClassLoader.findClass(BundleClassLoader.java:235) [stderr] at org.knopflerfish.framework.BundleClassLoader.loadClass(BundleClassLoader.java:349) [stderr] at java.lang.ClassLoader.loadClass(ClassLoader.java:511) [stderr] ... 10 more And this error seems to happen with all the classes in the directory org/apache/felix/upnp/basedriver/importer/core/upnp ! Same thing for the Cling UPnP basedriver bundle which doesn't even start: [stderr] ## DEBUG: errors - FrameworkErrorEvent bundle #41 [stderr] ## DEBUG: errors - FrameworkErrorEvent throwable: [stderr] java.io.IOException: Failed to load dex class 'org.fourthline.cling.osgi.basedriver.Activator', java.lang.reflect.InvocationTargetException [stderr] at org.knopflerfish.framework.BundleClassLoader$1.get(BundleClassLoader.java:891) [stderr] at org.knopflerfish.framework.BundleClassLoader.searchFor0(BundleClassLoader.java:808) [stderr] at org.knopflerfish.framework.BundleClassLoader.searchFor(BundleClassLoader.java:635) [stderr] at org.knopflerfish.framework.PermissionOps.callSearchFor(PermissionOps.java:213) [stderr] at org.knopflerfish.framework.BundleClassLoader.findClass(BundleClassLoader.java:213) [stderr] at org.knopflerfish.framework.BundleClassLoader.loadClass(BundleClassLoader.java:349) [stderr] at java.lang.ClassLoader.loadClass(ClassLoader.java:511) [stderr] at org.knopflerfish.framework.BundleImpl.start0(BundleImpl.java:352) [stderr] at org.knopflerfish.framework.BundleThread.run(BundleThread.java:107) [stderr] ## DEBUG: errors - FrameworkErrorEvent bundle #41 [stderr] ## DEBUG: errors - FrameworkErrorEvent throwable: [stderr] org.osgi.framework.BundleException: Bundle start failed [stderr] at org.knopflerfish.framework.BundleImpl.start0(BundleImpl.java:399) [stderr] at org.knopflerfish.framework.BundleThread.run(BundleThread.java:107) Caused by: [stderr] [stderr] java.lang.ClassNotFoundException: org.fourthline.cling.osgi.basedriver.Activator [stderr] at org.knopflerfish.framework.BundleClassLoader.findClass(BundleClassLoader.java:235) [stderr] at org.knopflerfish.framework.BundleClassLoader.loadClass(BundleClassLoader.java:349) [stderr] at java.lang.ClassLoader.loadClass(ClassLoader.java:511) [stderr] at org.knopflerfish.framework.BundleImpl.start0(BundleImpl.java:352) [stderr] ... 1 more [stderr] Nested bundle exception: [stderr] java.lang.ClassNotFoundException: org.fourthline.cling.osgi.basedriver.Activator [stderr] at org.knopflerfish.framework.BundleClassLoader.findClass(BundleClassLoader.java:235) [stderr] at org.knopflerfish.framework.BundleClassLoader.loadClass(BundleClassLoader.java:349) [stderr] at java.lang.ClassLoader.loadClass(ClassLoader.java:511) [stderr] at org.knopflerfish.framework.BundleImpl.start0(BundleImpl.java:352) [stderr] at org.knopflerfish.framework.BundleThread.run(BundleThread.java:107) The bundles were dexified using the dx function in the Android SDK and I'am running my framework in a Android 2.3.7 using the adb shell. Any help on this problem would be very appreciated! Thank you in advance! Chakib. -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

