[sip-comm-dev] What about upgrading to Felix?


#1

Hi developers,

we are now using Oscar 2.0 (build from cvs sometimes ago, in july 2005) as our OSGI implementation, which is lacking an important feature for us. It is impossible right now to install bundles by reference, which means that the content of every bundle is copied to the bundle cache for every user. This is problematic in a multi-user environment.

The Felix implementation of OSGI (formerly oscar 2.0) allows reference URL for bundles. Maybe this is time to upgrade to felix?

Until we switch, the SIP Communicator will duplicate unnecessarily its bundles in a multi-user environment.

Martin

···

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#2

Hello Martin,

I just upgraded my own sandbox to felix and this didn't really change anything. My cache directory (sip-communicator.bin) gets created just as before. I didn't change anything special for my tests apart from modifying oscar.client.run.properties and renaiming all properties that had "oscar" in their name to felix.
This means that bundles are now loaded through lines that look like this: felix.auto.start=file:lib/bundle.name.jar....
Is there another property that I need to use for the bundles to be used by reference and not get installed in the cache?

damencho

Martin Andr� wrote:

···

Hi developers,

we are now using Oscar 2.0 (build from cvs sometimes ago, in july 2005) as our OSGI implementation, which is lacking an important feature for us. It is impossible right now to install bundles by reference, which means that the content of every bundle is copied to the bundle cache for every user. This is problematic in a multi-user environment.

The Felix implementation of OSGI (formerly oscar 2.0) allows reference URL for bundles. Maybe this is time to upgrade to felix?

Until we switch, the SIP Communicator will duplicate unnecessarily its bundles in a multi-user environment.

Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#3

Hi Damian,

You should install the bundles with something like this:
felix.auto.start=reference:file:lib/bundle.name.jar

Check out this thread on Felix dev mailing list for more information:
http://www.mail-archive.com/felix-dev@incubator.apache.org/msg00615.html

Cheers,
Martin

Damian Minkov wrote:

···

Hello Martin,

I just upgraded my own sandbox to felix and this didn't really change anything. My cache directory (sip-communicator.bin) gets created just as before. I didn't change anything special for my tests apart from modifying oscar.client.run.properties and renaiming all properties that had "oscar" in their name to felix.
This means that bundles are now loaded through lines that look like this: felix.auto.start=file:lib/bundle.name.jar....
Is there another property that I need to use for the bundles to be used by reference and not get installed in the cache?

damencho

Martin Andr� wrote:

Hi developers,

we are now using Oscar 2.0 (build from cvs sometimes ago, in july 2005) as our OSGI implementation, which is lacking an important feature for us. It is impossible right now to install bundles by reference, which means that the content of every bundle is copied to the bundle cache for every user. This is problematic in a multi-user environment.

The Felix implementation of OSGI (formerly oscar 2.0) allows reference URL for bundles. Maybe this is time to upgrade to felix?

Until we switch, the SIP Communicator will duplicate unnecessarily its bundles in a multi-user environment.

Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#4

Hi Devs,

I've just committed and now SIP Communicator is using the latest felix release.
The only thing left is to fix the debian package and the macosx one if needed as the libs, property file names, and main class
has changed. The other installations I have moved to the changes.

Any questions about the changes are welcome :slight_smile:

damencho

···

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#5

Hello Martin,

Yes thats it :)) now its just create the cache dir and its sub dirs but without caching the bundles just caching the embeded libs. I have still work to do before merging to the felix. I will test it and move to it as soon as possible.

damencho

Martin Andr� wrote:

···

Hi Damian,

You should install the bundles with something like this:
felix.auto.start=reference:file:lib/bundle.name.jar

Check out this thread on Felix dev mailing list for more information:
http://www.mail-archive.com/felix-dev@incubator.apache.org/msg00615.html

Cheers,
Martin

Damian Minkov wrote:

Hello Martin,

I just upgraded my own sandbox to felix and this didn't really change anything. My cache directory (sip-communicator.bin) gets created just as before. I didn't change anything special for my tests apart from modifying oscar.client.run.properties and renaiming all properties that had "oscar" in their name to felix.
This means that bundles are now loaded through lines that look like this: felix.auto.start=file:lib/bundle.name.jar....
Is there another property that I need to use for the bundles to be used by reference and not get installed in the cache?

damencho

Martin Andr� wrote:

Hi developers,

we are now using Oscar 2.0 (build from cvs sometimes ago, in july 2005) as our OSGI implementation, which is lacking an important feature for us. It is impossible right now to install bundles by reference, which means that the content of every bundle is copied to the bundle cache for every user. This is problematic in a multi-user environment.

The Felix implementation of OSGI (formerly oscar 2.0) allows reference URL for bundles. Maybe this is time to upgrade to felix?

Until we switch, the SIP Communicator will duplicate unnecessarily its bundles in a multi-user environment.

Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#6

Hi,

I have a problem launching ConfigurationService. Here is the exception

     [java] 09:52:22.196 FINEST: impl.configuration.ConfigurationServiceImpl.start() [exit] start
     [java] java.lang.NoClassDefFoundError: org/kxml/parser/XmlParser

But the kxml package is not used and not imported in ConfigurationService. Maybe its used from Felix. Any ideas ?

damencho

Martin Andr� wrote:

···

Hi Damian,

You should install the bundles with something like this:
felix.auto.start=reference:file:lib/bundle.name.jar

Check out this thread on Felix dev mailing list for more information:
http://www.mail-archive.com/felix-dev@incubator.apache.org/msg00615.html

Cheers,
Martin

Damian Minkov wrote:

Hello Martin,

I just upgraded my own sandbox to felix and this didn't really change anything. My cache directory (sip-communicator.bin) gets created just as before. I didn't change anything special for my tests apart from modifying oscar.client.run.properties and renaiming all properties that had "oscar" in their name to felix.
This means that bundles are now loaded through lines that look like this: felix.auto.start=file:lib/bundle.name.jar....
Is there another property that I need to use for the bundles to be used by reference and not get installed in the cache?

damencho

Martin Andr� wrote:

Hi developers,

we are now using Oscar 2.0 (build from cvs sometimes ago, in july 2005) as our OSGI implementation, which is lacking an important feature for us. It is impossible right now to install bundles by reference, which means that the content of every bundle is copied to the bundle cache for every user. This is problematic in a multi-user environment.

The Felix implementation of OSGI (formerly oscar 2.0) allows reference URL for bundles. Maybe this is time to upgrade to felix?

Until we switch, the SIP Communicator will duplicate unnecessarily its bundles in a multi-user environment.

Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#7

Hello,

I fixed the previous problems and the SC starts OK with felix. Now I'm tring to pass the tests but there is a problem when unregistering a service
and when an event for that is received here is an example exception :

     [java] ERROR: EventDispatcher: Error during dispatch. (java.lang.IllegalStateException: Invalid BundleContext.)
     [java] java.lang.IllegalStateException: Invalid BundleContext.
     [java] at org.apache.felix.framework.BundleContextImpl.checkValidity(BundleContextImpl.java:552)
     [java] at org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:475)
     [java] at net.java.sip.communicator.impl.contactlist.MetaContactListServiceImpl.serviceChanged(MetaContactListServiceImpl.java:1662)
     [java] at org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:712)
     [java] at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:570)
     [java] at org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:502)
     [java] at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:2843)
     [java] at org.apache.felix.framework.Felix.access$100(Felix.java:36)
     [java] at org.apache.felix.framework.Felix$1.serviceChanged(Felix.java:242)
     [java] at org.apache.felix.framework.ServiceRegistry.fireServiceChanged(ServiceRegistry.java:435)
     [java] at org.apache.felix.framework.ServiceRegistry.unregisterService(ServiceRegistry.java:86)
     [java] at org.apache.felix.framework.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:99)
     [java] at org.apache.felix.framework.ServiceRegistry.unregisterServices(ServiceRegistry.java:119)
     [java] at org.apache.felix.framework.Felix._stopBundle(Felix.java:1601)
     [java] at org.apache.felix.framework.Felix.stopBundle(Felix.java:1524)
     [java] at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:376)
     [java] at net.java.sip.communicator.slick.contactlist.TestMetaContactListPersistence.testReloadMetaContactListBundle(TestMetaContactListPersistence.java:123)

I cannot figure out from where is coming this invalid context.
Any ideas are welcome :))

damencho

Martin Andr� wrote:

···

Hi Damian,

You should install the bundles with something like this:
felix.auto.start=reference:file:lib/bundle.name.jar

Check out this thread on Felix dev mailing list for more information:
http://www.mail-archive.com/felix-dev@incubator.apache.org/msg00615.html

Cheers,
Martin

Damian Minkov wrote:

Hello Martin,

I just upgraded my own sandbox to felix and this didn't really change anything. My cache directory (sip-communicator.bin) gets created just as before. I didn't change anything special for my tests apart from modifying oscar.client.run.properties and renaiming all properties that had "oscar" in their name to felix.
This means that bundles are now loaded through lines that look like this: felix.auto.start=file:lib/bundle.name.jar....
Is there another property that I need to use for the bundles to be used by reference and not get installed in the cache?

damencho

Martin Andr� wrote:

Hi developers,

we are now using Oscar 2.0 (build from cvs sometimes ago, in july 2005) as our OSGI implementation, which is lacking an important feature for us. It is impossible right now to install bundles by reference, which means that the content of every bundle is copied to the bundle cache for every user. This is problematic in a multi-user environment.

The Felix implementation of OSGI (formerly oscar 2.0) allows reference URL for bundles. Maybe this is time to upgrade to felix?

Until we switch, the SIP Communicator will duplicate unnecessarily its bundles in a multi-user environment.

Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#8

Damian Minkov wrote:

Hi Devs,

I've just committed and now SIP Communicator is using the latest felix release.
The only thing left is to fix the debian package and the macosx one if needed as the libs, property file names, and main class
has changed. The other installations I have moved to the changes.

Any questions about the changes are welcome :slight_smile:

I noticed there have been some classpath changes. Has anyone updated the eclipse .classpath file in /ide/ yet?

I will make the corresponding changes to the netbeans project.xml once you believe the classpath has stabilised.

Regards,

Brian

···

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#9

Brian Burch wrote:

I noticed there have been some classpath changes. Has anyone updated the eclipse .classpath file in /ide/ yet?

I will make the corresponding changes to the netbeans project.xml once you believe the classpath has stabilised.

No I haven't changed the files in the ide dir.

damencho

···

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#10

Hi Damian,

The macosx package survived to the transition :slight_smile:
But here is a small patch to apply to build.xml that slightly reduces the macosx package size (I remove the slicks and useless jar from the package).

Thanks,

Romain

Damian Minkov wrote:

sip-communicator-20061126-macosx.diff (708 Bytes)

···

Hi Devs,

I've just committed and now SIP Communicator is using the latest felix release.
The only thing left is to fix the debian package and the macosx one if needed as the libs, property file names, and main class
has changed. The other installations I have moved to the changes.

Any questions about the changes are welcome :slight_smile:

damencho

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

--
Romain KUNTZ
kuntz@sfc.wide.ad.jp