You know your quick answer helps a lot for people like me. I got it working finallly.
I think web pages is having enough info to the people those who already worked in java. My case was like I was new to java, oSGI etc etc. Still when I searched for launching felix..fiest hit was http://felix.apache.org/site/launching-and-embedding-apache-felix.html Not http://felix.apache.org/site/apache-felix-framework-launching-and-embedding. html But...Bot the pages looked same!! So I always thought I have read http://felix.apache.org/site/apache-felix-framework-launching-and-embedding. html, but I was reffering http://felix.apache.org/site/launching-and-embedding-apache-felix.html One more thing, I felt like there are very less examples for embedding felix. Thanks a lot Nasir -----Original Message----- From: Richard S. Hall [mailto:[email protected]] Sent: Monday, February 22, 2010 6:29 AM To: [email protected] Subject: Re: unresolved package org.osgi.framework... On 2/21/10 7:06 PM, Mahammad Nasir wrote: > Thank you..It worked...! > Excellent. Feel free to offer some suggestions on improving the web page if it wasn't clear. -> richard > -----Original Message----- > From: Richard S. Hall [mailto:[email protected]] > Sent: Saturday, February 20, 2010 8:24 PM > To: [email protected] > Subject: Re: unresolved package org.osgi.framework... > > > > On 2/20/10 5:33 PM, Mahammad Nasir wrote: > >> Hi richard >> >> I have tried the same thing. >> >> >> Properties props = new Properties(); >> props.setProperty(FRAMEWORK_SYSTEMPACKAGES_EXTRA, "Dummy"); >> framework = factory.newFramework(props); >> try { >> framework.init(); >> framework.start(); >> >> } >> >> After this if I debug and check what config present in framework, It >> is showing this: >> [null, null, null, null, null, null, null, null, >> org.osgi.framework.system.packages.extra=Dummy, null, null] >> >> Rest of the things are set to null. >> >> But I was intended to modify only >> > org.osgi.framework.system.packages.extra. > >> >> > Just set that value and nothing more. The examples on the web page > show how to do exactly this. > > -> richard > > >> There is no api getProperties exposed so that I can get entire >> key-valuee pair and modify only this key. >> >> How can I set only this key?? >> >> >> Thanks a lot. I am makinng you answer silly quests.. >> >> >> Nasir >> >> -----Original Message----- >> From: Richard S. Hall [mailto:[email protected]] >> Sent: Saturday, February 20, 2010 2:43 PM >> To: [email protected] >> Subject: Re: unresolved package org.osgi.framework... >> >> On 2/20/10 4:25 PM, Mahammad Nasir wrote: >> >> >>> Thanks a lot. >>> >>> Now that I need to set org.osgi.framework.system.packages.extra and >>> pass it to framework. Is it enough if I pass only this property? >>> >>> Or I need to copy the peoperties laoded by default and append >>> org.osgi.framework.system.packages.extra key? If so how to get the >>> default kev-value pair? >>> >>> >>> >> The framework sets reasonable defaults for all properties as required >> by the spec. You only need to set properties for which the default is >> undefined or you don't like the default value. >> >> For this specific property, though, you need to make sure whichever >> packages you are adding to it are also accessible (i.e., on the class >> path) of the class loader loading the framework classes. >> >> >> >>> Sorry..this may be silly..but I am very new to programming. I >>> strugled >>> 2 days to do this thing. I really missed c++ .h and .cpp file. All >>> this setting up packages wouldn't be there in c++...! >>> >>> >>> >> I doubt you'd have much success doing dynamic code loading in C++ as >> a newbie as well... :-) >> >> -> richard >> >> >> >>> Regards >>> Nasir >>> >>> >>> >>> -----Original Message----- >>> From: Richard S. Hall [mailto:[email protected]] >>> Sent: Saturday, February 20, 2010 1:05 PM >>> To: [email protected] >>> Subject: Re: unresolved package org.osgi.framework... >>> >>> On 2/20/10 2:46 PM, Mahammad Nasir wrote: >>> >>> >>> >>>> Thank you for reply. >>>> >>>> 1) I am using felix 1.0.3. I had read the link. But I dint find >>>> org.osgi.framework.system.packages.extra in the config property >>>> file..Where can I configure this? >>>> >>>> >>>> >>>> >>> If you are embedding a framework instance, it should be in the map >>> you pass into the framework when you construct the instance, as >>> documented on the mentioned page. >>> >>> >>> >>> >>>> In my case if interfaces present in the service.jar is considered >>>> as system package? >>>> >>>> >>>> >>>> >>> Any package that you want to make available from the class path (via >>> the system bundle) is considered a system package. This is shown >>> with the Lookup service in the mentioned page. >>> >>> >>> >>> >>>> I have few some other doubts. When we launch felix like >>>> >>>> Java -jar bin/felix. It takes the config files from conf dir. But >>>> if we embed the felix.jar in some application. Where does it read >>>> the config files >>>> >>>> >>>> >>>> >>> It doesn't. You must configure it yourself by putting the values in >>> a map, which you pass into the framework instance. >>> >>> -> richard >>> >>> >>> >>> >>>> Address: Huawei Industrial Base >>>> www.huawei.com >>>> ------------------------------------------------------------------- >>>> - >>>> - >>>> - >>>> ------ >>>> --------------------------------------------------------- >>>> This e-mail and its attachments contain confidential information >>>> from HUAWEI, which is intended only for the person or entity whose >>>> address is listed above. Any use of the information contained >>>> herein in any way (including, but not limited to, total or partial >>>> disclosure, reproduction, or dissemination) by persons other than >>>> the intended >>>> recipient(s) is prohibited. If you receive this e-mail in error, >>>> please notify the sender by phone or email immediately and delete it! >>>> >>>> >>>> -----Original Message----- >>>> From: Richard S. Hall [mailto:[email protected]] >>>> Sent: Saturday, February 20, 2010 11:51 AM >>>> To: [email protected] >>>> Subject: Re: unresolved package org.osgi.framework... >>>> >>>> On 2/19/10 5:22 PM, Mahammad Nasir wrote: >>>> >>>> >>>> >>>> >>>>> Hi All >>>>> >>>>> I have a setup some thing like this. >>>>> >>>>> I have an exe which loads a jar file say Service.jar (Which has a >>>>> class CService). This jar file instantiates (Embed new Felix(,,)) >>>>> > Felix. > >>>>> Now using Felix instance i will register a service and pass object >>>>> if CService to it. >>>>> >>>>> Now I have a felix bundle which finds the service and uses it. >>>>> >>>>> Service.jar is loaded by some exe. (That is exe loads the >>>>> Service.jar, jar instantiates Felix.) >>>>> >>>>> Interace which Service implements for registering the service i >>>>> have made as another jar. (Is this correct?? Or interface should >>>>> be inside the OSGI bundle itself?) >>>>> >>>>> >>>>> Now my problem is loaded bundle is not able to find the package >>>>> exported by service.jar. >>>>> >>>>> I would like to know, Is this type of setup is possible? Is this valid? >>>>> >>>>> >>>>> >>>>> >>>>> >>>> If I understand correctly, you have some application that loads >>>> service.jar, which itself contains felix.jar (or at least expects >>>> felix.jar to be on its class path. You load and instantiate some >>>> class out of service.jar which instantiates and registers a service >>>> inside of it. Some bundle inside of the framework instance is not >>>> able to see the >>>> >>>> >>>> >>> service package. Correct? >>> >>> >>> >>>> You need to make sure you configure your framework instance to >>>> export your service package using the >>>> org.osgi.framework.system.packages.extra >>>> property. This also means that you have to ensure that whatever >>>> class loader is loading felix.jar also has access to your service >>>> > package. See: > >>>> >>>> >>>> >>>> >>>> >>> >>> >> > http://felix.apache.org/site/apache-felix-framework-launching-and-embedding. > >> >> >>> >>> >>>> html >>>> >>>> -> richard >>>> >>>> >>>> >>>> >>>> >>>>> I have attached the consol trace of what happned and the manifest >>>>> file of the bundle. >>>>> >>>>> >>>>> Welcome to Felix. >>>>> ================= >>>>> >>>>> Enter profile name: 1 >>>>> >>>>> DEBUG: WIRE: 1.0 -> org.ungoverned.osgi.service.shell -> 1.0 >>>>> DEBUG: WIRE: 1.0 -> org.osgi.service.startlevel -> 0 >>>>> DEBUG: WIRE: 1.0 -> org.apache.felix.shell -> 1.0 >>>>> DEBUG: WIRE: 1.0 -> org.osgi.framework -> 0 >>>>> DEBUG: WIRE: 1.0 -> org.osgi.service.packageadmin -> 0 >>>>> DEBUG: WIRE: 2.0 -> org.apache.felix.shell -> 1.0 >>>>> DEBUG: WIRE: 2.0 -> org.osgi.framework -> 0 >>>>> DEBUG: WIRE: 3.0 -> org.osgi.framework -> 0 >>>>> DEBUG: WIRE: 3.0 -> org.osgi.service.obr -> 3.0 >>>>> -> DEBUG: WIRE: 3.0 -> org.apache.felix.shell -> 1.0 >>>>> Intalled.... >>>>> org.osgi.framework.BundleException: Unresolved package in bundle 13: >>>>> package; (&(package=demoOsgiService)(version>=0.0.0)) >>>>> at >>>>> >>>>> >>>>> >>>>> >>>> org.apache.felix.framework.Felix._resolveBundle(Felix.java:1699) >>>> >>>> >>>> >>>> >>>>> at >>>>> >>>>> >>>>> >>> org.apache.felix.framework.Felix._startBundle(Felix.java:1566) >>> >>> >>> >>>>> at >>>>> >>>>> >>>>> >>> org.apache.felix.framework.Felix.startBundle(Felix.java:1519) >>> >>> >>> >>>>> at >>>>> >>>>> >>>>> >>>>> >>>> org.apache.felix.framework.BundleImpl.start(BundleImpl.java:354) >>>> >>>> >>>> >>>> >>>>> at demoOsgiService.NonMain.notmain(NonMain.java:232) >>>>> at >>>>> >>>>> >> demoOsgiService.COSGIService.runProc(COSGIService.java:152) >> >> >>>>> at >>>>> com.sdt.sne.eoa.passive.PassiveService.mainProc(PassiveService.java:98) >>>>> at >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>> >>> >> > com.sdt.sne.eoa.passive.PassiveService.onBasicActivated(PassiveService.java: > >> >> >>> >>> >>>> >>>> >>>>> 70) >>>>> at >>>>> demoOsgiService.COSGIService.onBasicActivated(COSGIService.java:86) >>>>> at com.sdt.sne.Service.onActivated0(Service.java:163) >>>>> >>>>> -> ps >>>>> >>>>> =========================Manifest >>>>> File=================================== >>>>> Bundle-Name: Dictionary client >>>>> Bundle-Description: A bundle that uses the dictionary service if >>>>> it finds it at startup >>>>> Bundle-Vendor: Apache Felix >>>>> Bundle-Version: 1.0.0 >>>>> Bundle-Activator: demoOsgiServiceCleint.Activator >>>>> Import-Package: org.osgi.framework,demoOsgiService >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>> ------------------------------------------------------------------- >>>> - >>>> - To unsubscribe, e-mail: [email protected] >>>> For additional commands, e-mail: [email protected] >>>> >>>> >>>> ------------------------------------------------------------------- >>>> - >>>> - To unsubscribe, e-mail: [email protected] >>>> For additional commands, e-mail: [email protected] >>>> >>>> >>>> >>>> >>>> >>> -------------------------------------------------------------------- >>> - To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> >>> >>> -------------------------------------------------------------------- >>> - To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> >>> >>> >>> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> >> >> > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]

