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?

In my case if interfaces present in the service.jar is considered as system
package?

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

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]

Reply via email to