Hey, I have the following issue: In my OSGI bundle, I create a Component Type using iPOJO API as the following:
public void start(BundleContext context) throws Exception { type = new PrimitiveComponentType().setBundleContext(context) .setComponentTypeName("someType") .setClassName("my.class.Name") .setImmediate(true); type.start(); instance = type.createInstance(); } Now, according to this source, http://mail-archives.apache.org/mod_mbox/felix-users/201204.mbox/%3c1fccf246-db56-4e86-a0ee-7e57ec96d...@gmail.com%3E iPOJO manipulation rely on some classes of org.apache.felix.ipojo, and so I need to import this package. All bundles intended to have iPOJO component, need to import: org.apache.felix.ipojo and org.apache.felix.ipojo.architecture. For some reason, I don't like to import these packages from my bundle. I want my bundle to have iPOJO component without importing any iPOJO-related packages. Although the answer in the link continues saying: To avoid this manual import you can: - use the iPOJO url handler and so install the bundle with: ipojo://file:/the.path.to.my.bundle.jar I tried the above solution, by adding "ipojo://" part to my bundle installation file path as the following, bundleContext.installBundle("ipojo://file:C:\Users\zaid.almahmoud\Desktop\plugins\MyComponent.jar"); but when I run my program, I get the following error: org.osgi.framework.BundleException: Unable to cache bundle: ipojo://file:C:\Users\zaid.almahmoud\Desktop\plugins\MyComponent.jar Caused by: java.net.MalformedURLException: Unknown protocol: ipojo What am I missing here? Thanks. Kind Regards, Zaid Almahmoud Research Assistant [cid:image001.png@01CE4FB8.E6C8A910]<http://www.ebtic.org/> Khalifa University of Science, Technology, and Research Abu Dhabi - United Arab Emirates TEL: 00971-2-401-8178 MOB: 00971-50-9619601