Created a JIRA task (https://issues.apache.org/jira/browse/FELIX-1978) for this.

On Mon, Jan 11, 2010 at 10:26 PM, Felix Meschberger <[email protected]> wrote:
> Hi,
>
> I fear, the problem is
>
>   public final class JettyService
>    implements ManagedService, Runnable
>
> Thus, if the Configuration Admin package cannot be imported, the
> JettyService cannot be instantiated and thus not be started.
>
> The fix is probably to created a small (anonymous or inner) class which
> implements the ManagedService interface to be instantiated in the
> JettyService start  (but catching any Errors) method.
>
> The ManagedService itself would just forward the updated call to the
> JettyServide instance.
>
> Thus instead of :
>
>   this.configServiceReg = this.context.registerService(
>             ManagedService.class.getName(), this, props);
>
> It would be
>
>   try {
>      Object srv = new ManagedService() {
>            updated(Dictionary props) {
>                JettyService.this.updated(props);
>            }
>      };
>      this.configServiceReg = this.context.registerService(
>             ManagedService.class.getName(), this, props);
>    } catch (Throwable t) {
>      ...
>    }
>
>
> Regards
> Felix
>
> On 11.01.2010 01:41, Sten Roger Sandvik wrote:
>> Hi.
>>
>> It's only the packages that is required. You can either install the
>> configadmin bundle or let the startup environment export the cm.*
>> compendium packages. I do not think the package dependency can easily
>> be removed.
>>
>> /srs
>>
>> On Sun, Jan 10, 2010 at 11:46 PM, Hlusi, Jiri (NSN - FI/Tampere)
>> <[email protected]> wrote:
>>> Hello,
>>>
>>>
>>> If I try to run the Felix framework, release 2.0.1, with default content
>>> (framework, obr, shell, shell-tui),
>>> and install additionally "org.apache.felix.http.bundle-2.0.4.jar" on top
>>> of that, the HTTP bundle won't
>>> start (will not be resolved) due to missing dependency on CM packages
>>> (Configuration Admin):
>>>
>>> ************
>>> java.lang.ClassNotFoundException: *** Class
>>> 'org.osgi.service.cm.ManagedService' was
>>> not found. Bundle 4 does not import package 'org.osgi.service.cm', nor
>>> is the package
>>> exported by any other bundle or available from the system class loader.
>>> ***
>>> ************
>>>
>>> [ same behavior observed for both, "http.bundle" and "http.jetty"
>>> bundles ]
>>>
>>>
>>> The manual page
>>> (http://felix.apache.org/site/apache-felix-http-service.html) says
>>> configuration
>>> via OSGi properties and Configuration Admin is possible, but it does not
>>> imply that usage of
>>> the latter one would be mandatory....
>>>
>>>
>>> So far, I found two work-arounds to get the HTTP service running:
>>>
>>>  1) install confadmin-1.2.4
>>>  2) install osgi.cmpn.jar (update 4.2.0)
>>>
>>> Problem with 1) is that overall I'm not intending to utilize
>>> Configuration Admin for anything
>>> useful, so I'd rather prefer not to have it loaded just because missing
>>> interface (package
>>> export).
>>>
>>> Then, looking at 2), the osgi Alliance packages are tagged as "for
>>> development
>>> purpose" .... so I'm not sure is it a good idea to use thos in
>>> production, and what
>>> eventual side effects there might be.
>>>
>>>
>>> Can anyone advise what would be the best way to move on?
>>>
>>> Could the hard dependency on Configration Admin be removed
>>> somehow in next update of the service?
>>>
>>>
>>>
>>> Many thanks in advance!
>>>
>>> br, Jiri
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> 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]

Reply via email to