BTW, I tried using iPojo 1.6.8 instead to see if this is a problem introduced in later iPojo versions. I do, however, get the same problems using iPojo 1.6.8 which implies that it's not a newly introduced iPojo problem.
/Bengt 2012/11/5 Bengt Rodehav <[email protected]> > I'm trying to upgrade my custom Karaf distribution to Karaf 2.3.0 but have > ran into some problems. It seems there is some kind of conflict between > ipojo 1.8.2 and the jpa feature - specifically the org.apache.aries.util > bundle in the jpa feature. > > I install ipojo as a feature (not listed in startup.properties). But when > I do this I get the following exception: > > *2012-11-05 15:51:20,251 | INFO | l Console Thread | Console > | araf.shell.console.jline.Console 199 | 14 - > org.apache.karaf.shell.console - 2.3.0 | Exception caught while executing > command* > *java.lang.UnsupportedOperationException: read() with timeout cannot be > called as non-blocking operation is disabled* > * at > jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:134)[14:org.apache.karaf.shell.console:2.3.0] > * > * at > jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:246)[14:org.apache.karaf.shell.console:2.3.0] > * > * at > jline.internal.InputStreamReader.read(InputStreamReader.java:259)[14:org.apache.karaf.shell.console:2.3.0] > * > * at > jline.internal.InputStreamReader.read(InputStreamReader.java:196)[14:org.apache.karaf.shell.console:2.3.0] > * > * at > jline.console.ConsoleReader.readCharacter(ConsoleReader.java:1974)[14:org.apache.karaf.shell.console:2.3.0] > * > * at > jline.console.ConsoleReader.readLine(ConsoleReader.java:2174)[14:org.apache.karaf.shell.console:2.3.0] > * > * at > jline.console.ConsoleReader.readLine(ConsoleReader.java:2098)[14:org.apache.karaf.shell.console:2.3.0] > * > * at > org.apache.karaf.shell.console.jline.Console.readAndParseCommand(Console.java:235)[14:org.apache.karaf.shell.console:2.3.0] > * > * at > org.apache.karaf.shell.console.jline.Console.run(Console.java:171)[14:org.apache.karaf.shell.console:2.3.0] > * > * at java.lang.Thread.run(Thread.java:662)[:1.6.0_32]* > > Then it seems like Karaf (or Felix) restarts somehow since I get another > "Karaf" logo in the console. The issue can be reproduced quite easily: > > 1. Download a fresh Karaf 2.3.0 > > 2. Create a new feature containing the ipojo bundle. The easiest way is > probably to add the following lines to the enterprise-2.3.0-features.xml in > the "system" folder: > > <feature name="ipojo"> > <bundle>mvn:org.apache.felix/org.apache.felix.ipojo/1.8.2</bundle> > </feature> > > 3. Edit the etc/org.apache.karaf.features.cfg as follows: > > featuresBoot=config,ssh,management,kar,jpa,ipojo > > Some other obeservations: > > - If I switch the jpa and the ipojo features I get other exceptions. > > - The org.apache.aries.util bundle is part of the jpa feature (start level > 30) but it is also present in startup.properties (start level 20). > > - If I remove the org.apache.aries.util bundle from the jpa feature then > things seem to work. > > - If I install ipojo by using startup.properties instead of using a > feature then things seem to work. > > The last two observations might imply that org.apache.aries.util and ipojo > must be resolved at the same time (start levels do not make any difference). > > I'm not sure if this post belongs here or in Felix mailing list. However, > since it seems to involve the enterprise features that is part of Karaf I > try here first. It's very confusing. Although I have found a couple of > work-arounds I don't feel comfortable using them since I don't know what is > happening. > > Does anyone have a clue? > > /Bengt >
