Just found an article called “Explore Eclipse’s OSGi console” by Chris Aniszczyk from IBM on the OSGi console. Worth a read.
As partly addressed by Bob Balfe there are numerous ways to debug Eclipse/SWT components in Notes 8 or Lotus Expeditor. One is as Bob mentions to launch the client using the -console switch so the OSGi console is displayed. While confusing at first the OSGi console is really your friend when developing applications. From the console you have direct access to the OSGi subsystem of Eclipse. But it isn’t just for the Eclipse stuff. Since some Notes 8 components such as the property broker and topology manager have console commands you can interact with them from the console when troubleshooting/debugging.
To launch Notes 8 with the OSGi console create a new shortcut and use the following command (change the path if Notes isn’t installed in c:notes8):
"c:notes8frameworkrcprcplauncher.exe" -config notes -console
Besides the -console switch the the rcplauncher.exe executable takes a number of interesting arguments. One of the really cool ones is that you can supply a port number after the -console switch to make the console listen on a telnet port. This way you can connect to a remote client using telnet.
"c:notes8frameworkrcprcplauncher.exe" -config notes -console 23
Cool, cool, cool.
If you’re developing Eclipse components I really suggest you look into the OSGi console as it can assist in troubleshooting bundles that fail to load due to unsatisfied requirements.
Were to start? Well when you have the console available try out these commands:
- help: Pretty self-explanatory
- ss: Shows all the bundles installed with their status (be aware – there’s a lot of them)
- setlogrlev: Sets the log level of individual loggers. I’ll have an upcoming blog post on logging.
- pbsh: Work with the property broker e.g. see defined wires etc.
This article and some valuable IM’ing with Bob Balfe helped me solve my bundle dependency issues. Thanks again Bob.
Getting Started with OSGi: Dependencies between Bundles @ Eclipsezone.com
OSGi is a part of Eclipse and hence Notes 8+ Standard. It never hurts to know what you’re dealing with. Hello, OSGi, Part 1: Bundles for beginners – Creating, executing, and managing bundles in an OSGi container