curl is a well known application for doing HTTP, HTTPS, FTP, LDAP (and more) requests from the command line. curl is also available for Windows from the curl site. I found this installer to be working nicely on Windows after installing the OpenSSL libraries for Windows.
Month: August 2008
Notes 8.5 OSGi console madness
Ahhh some of the fun stuff you see when running Notes 8.5 with the OSGi console showing… 🙂
<DWSystem> null [<DWSystem> 11:11:46:590] partial 0.000 - cumulative 0.000 - instantiate controller [<DWSystem> 11:11:48:545] partial 1.955 - cumulative 1.955 - instantiate action dispatcher [<DWSystem> 11:11:48:870] partial 0.325 - cumulative 2.28 - instantiate ComputeAttrs [<DWSystem> 11:11:48:880] partial 0.010 - cumulative 2.290 - instantiate AttrMap [<DWSystem> 11:11:48:910] partial 0.030 - cumulative 2.32 - instantiate distance function [<DWSystem> 11:11:49:855] partial 0.945 - cumulative 3.265 - set incremental augmentor to null [<DWSystem> 11:11:49:965] partial 0.110 - cumulative 3.375 - instantiate executor [<DWSystem> 11:11:50:906] partial 0.941 - cumulative 4.316 - instantiate displayer [<DWSystem> 11:11:50:971] partial 0.065 - cumulative 4.381 - instantiate treewalker [<DWSystem> 11:11:50:976] partial 0.0050 - cumulative 4.386 - instantiate the widget manager [<DWSystem> 11:11:51:106] partial 0.130 - cumulative 4.516 - instantiate instrumentation services [<DWSystem> 11:11:52:021] partial 0.915 - cumulative 5.431 - instantiate the abstraction module [<DWSystem> 11:11:52:351] partial 0.330 - cumulative 5.761 - instantiate the logical name translator factory class name com.ibm.pw.DocWizard.ExpeditorWidgets.ExpWidgetFactory Create ExpWidgetFactory factory class name com.ibm.pw.DocWizard.SWTWidgets.SWTWidgetFactory [<DWSystem> 11:12:01:577] partial 9.226 - cumulative 14.987 - instantiated the widget factory [<DWSystem> 11:12:02:009] partial 0.432 - cumulative 15.419 - instantiate step instantiator [<DWSystem> 11:12:02:597] partial 0.588 - cumulative 16.007 - instantiated the session trace [<DWSystem> 11:12:03:272] partial 0.675 - cumulative 16.682 - instantiated control loop - done initializing DWSystem View initialization done CLOSING SYSTEM
Servicify with wasservice.exe
Had to add a couple of Lotus Connections Websphere server processes as services under Windows today and found this nice blog post that describes how: Creating a Windows service for WebSphere AppServer
Show ‘n Tell Thursday: Cross compiling sidebar plugins for Notes 8.0.x and Notes 8.5 (7 August 2008)

I haven’t done a SnTT in months (actually the last one was back on 24 May 2007) so I guess it’s about time. This week it’s about cross compiling sidebar plugins for Notes 8.5 and Notes 8.0.2. Enjoy…
Since installing Notes 8.5 I have had a lot of trouble developing in Eclipse 3.4 for Notes 8.5 and having the plugins work in Notes 8.0.x as well. The problem showed itself as a NullPointerException when trying to load the plugin Activator and a “Viewpart is null” message in the Notes UI. Looking at the log trace showed a class incompatibility message (“bad major version at offset=6”).
So far I have been screaming my lungs out, developing in Eclipse 3.4 and building the plugins in a virtual machine with Eclipse 3.2 as I couldn’t get plugins to work otherwise. Now I finally found a solution that lets me develop in Eclipse 3.4 and having the plugins work in Notes 8.0.x and Notes 8.5.
The issue is that Eclipse 3.4 configured with Notes 8.5 as a target platform is using Java 6 and that Notes 8.0.x is using Java 5 which causes class format problems. The solution is to set the required execution environment in Eclipse 3.4 which will cause Eclipse to build correctly. Setting the required execution environment (J2SE-1.5) is done in the “Overview”-tab of the MANIFEST.MF editor as shown below.
Using the GUI is of cause just a shorthand for editing the manifest manually. As an alternative you can edit your META-INF/MANIFEST.MF file directly and add the following line:
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Please note that this is not the default value when creating new plugins in Eclipse 3.4 so you’ll have to pay attention and make sure it’s set correctly. This is of cause only necessary if your plugins need to work on Notes 8.0.x as well as Notes 8.5.
Thanks to Pierre Carlson from IBM for pointers on this.
Running your own DNS?
If you are be sure to listen to Security Now! episode 155 (“How DNS works”) to learn about the DNS exploits circulating the internet these days. Also you might want to test the DNS servers you use to see if they they are subject to the attack.
I know Comcast and some other major ISP’s in the US and England are having problems since they haven’t patched their DNS servers yet.
Discovering Notes 8: VMWare, Notes 8 and database corruption

For quite some time I have been a strong proponent of using VMWare for customer development. I used to have 2 or 3 Notes clients in various versions installed on my laptop with a directory pointer per customer linked into my main data directory. A little over a year ago I switched to using VMWare Workstation instead for all development. This setup worked out great for me.
Some customers had their own VMWare images and some customers shared a VMWare image. This also worked out great. Once Notes 8 was released I moved my Notes 7.0.2 installation into a VMWare image with a directory pointer to my “external” Notes data directory. With “external” I mean outside the VMWare image OS. This works out great when running Notes 7.0.2 or earlier outside the VMWare image but once I upgraded to Notes 8 the problems started. I started experiencing database corruption issues of my mail database which I of cause access from both inside and outside VMWare.
After diagnosing these issues I came the conclusion that this kind of setup just isn’t supported with Notes 8 part of the mix. Therefore I have split my shared Notes data directory into two parts; a customer part which is accessible from inside VMWare and a production part which is only accessible from Notes 8 outside VMWare. This has solved the database corruption issues.
While sharing directories linked in with directory pointers between running Notes instances has probably never been officially supported it used to work and now doesn’t. I just thought I would share.
Afterwards I have changed my setup again and moved completely to VMWare for development. In the new setup I have one or two VMWare images per customer (one for Notes and one for Domino) on an external USB drive with the correct Notes/Domino versions installed. This works great and has really simplified development and testing for customers.
Amazon web services – amazing!
I just got a billing statement for my usage of the Amazon S3 storage service and it’s amazing! Well not the actual statement but the contents of the statement. The statement shows that I have 5.36 USD due.
I uploaded around 3,5 GB of data to my account but what I’m paying for is not the storage costs but the transfer costs. Bandwidth is more expensive than storage! Of the amount due is 0.54 USD for storage and 1.08 USD is tax. The rest is transfer and bandwidth.
For those interested I’m using Amazon S3 for backup of my laptop (and with the problems I have been having with my laptop disk lately I’m happy I’m backing up once a day). To make Amazon S3 look like a drive and to handle the actual (scheduled) backup I’m using Jungledisk which I can highly recommend.
Update: Just saw an article on developerWorks on Amazon S3.
Site of the day: Wordle.net
Discovered a very nice site today that allows you to nicely visualize tag clouds from either a RSS/Atom feed or from the tags a user assigned to links on del.icio.us. The site is called wordle.net and the data is displayed using a Java applet. Very nice and animated.
Below is a sample from my RSS feed and using the Asparagus color scheme.
