Notes 8 is based on Eclipse and Eclipse use OSGi for bundle lifecycle and dependency management. Part of OSGi is the OSGi console that is a console into the inner working of OSGi. The console is very useful and may be used to diagnose Eclipse and Notes 8 issues. I’ve previously blogged about the OSGi console and how to access it in Notes in my “SWT@Notes 8: -console” post back in 2008. One of the cool things about the OSGi console is that you can write administrative commands for the console that you may invoke using the text based interface.
One major shortcoming of the OSGi console was that one could only access it once the platform was invoked that is it couldn’t be accessed once Notes was started. This is a real bummer as it could be very useful in certain troubleshooting scenarios. This is about to change.
In the upcoming Eclipse 3.6 (Helios) release we’ll get even easier access to the OSGi console as you may attach to OSGi console after launching the platform. Yeah!!
On his blog Chris Aniszczyk of Redhat has a post called “Easier access to the OSGi console“:
In Eclipse 3.6 M7, it will be easier to access the OSGi Console within the running Eclipse. The Equinox team added a org.eclipse.osgi.framework.console.ConsoleSession service that you can use to get the input and output to a console session. The PDE team took advantage of this recently by extending the org.eclipse.ui.console.consoleFactories extension point and allowing you to bring up the OSGi console easily...
Okay, MIkkel, you convinced me to try out the OSGi console as per your 2008 posting, and I got the following console message when I started up Notes 8.5.1 FP3 on my 64-bit Windows 7 Ultimate system:
<blockquote style=”MARGIN-RIGHT: 0px” dir=”ltr”>
———–
osgi> 2010/07/22 13:34:40.193 CONFIG eclipse.buildId=20090925-1604
java.fullversion=J2RE 1.6.0 IBM J9 2.4 Windows Vista x86-32 jvmwi3260sr4ifx-2009
0729_39787 (JIT enabled, AOT enabled)
J9VM – 20090729_039787_lHdSMr
JIT – r9_20090213_2028
GC – 20090729_AA
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en
Framework arguments: -personality com.ibm.rcp.platform.personality -product com.ibm.rcp.personality.framework.RCPProduct:com.ibm.notes.branding.notes -plugincustomization G:/Notes851/framework/rcp/plugin_customization.ini
Command-line arguments: -os win32 -ws win32 -arch x86 -console -personality com.ibm.rcp.platform.personality -product com.ibm.rcp.personality.framework.RCPProduct:com.ibm.notes.branding.notes -data G:/Notes851/Data/workspace -plugincustomization G:/Notes851/framework/rcp/plugin_customization.ini ::class.method=com.ibm
.rcp.core.internal.logger.frameworkhook.writeSession() ::thread=Start Level Event Dispatcher ::loggername=com.ibm.rcp.core.internal.logger.frameworkhook
2010/07/22 13:35:19.886 SEVERE Invalid preference page path: Cache ::class.method=unknown ::thread=main ::loggername=org.eclipse.ui
———————
To the Eclipse novice, what does it all signify, and what might be the “supposedly” SEVERE warning?
My first impression is that I’d rather not know about it if it’s “black magic” and so very cryptic!
Kidding aside, what pathway does one follow to begin learning enough of Eclipse and OSGi (and all the rest of it) in order that it DOES start meaning something useful to us? For example, how did YOU go about learning it?
Cheers, Tony.
LikeLike
Well the SEVERE warning you see have always been there and thinking about it I don’t think I ever tried to find out why. As to learning about OSGi let me think about it and I’ll post something. For now the OSGi console is great for developers but could be equally great for admins trying to diagnose client issues. What is your background (admin/appdev)?
LikeLike