mattwhite

It's coming…

At 1pm GMT on Monday, 25th February, the registration for ILUG 2008 opens. Mark the date and time in your diary because places are going to go quickly.

Notes on The Wire

I’m not a viewer of The Wire but a Java programmer friend was watching Season 5 Episode 5 and spotted this in the background…
Lotus Notes on the Wire

Bruce on Mac OS Ken

If you’re involved in Notes and Domino in any way then you’ll know Bruce Elgort, and if you follow the Mac world then one of the most famous podcasts is Mac OS Ken. Well Bruce got a namecheck in today’s episode, and apparently will be interviewed in an upcoming episode about Notes 8.5 on the Mac and the DWA on the iPhone. Congrats Bruce!

JavaDoc for LotusScript

I think I’m a little behind the curve here, but Axel Jansenn mentioned a tool called LS.doc in a comment on IdeaJam today, I hadn’t heard about it before so maybe you haven’t either.

It is basically a Notes database that will go through all LotusScript in a database and generate JavaDoc-like HTML output to describe all of your code. In short it is superb and I will be using it on all of my projects from now on. Good job Mikkel.

Looking for a UKLUG venue

Yes, I did just mention ILUG last week, and there will be more to come in the next few days. But in the meantime, Warren has a call for help out for the UKLUG in September this year. He is looking for a venue in London that can deal with 250 people for two days with breakout rooms etc. If you know of a venue, or indeed run a venue, then please contact Warren over at his site.

Using easymock for disconnected Domino Java testing

One of the projects I’m working on at the moment has a *lot* of code written in a J2EE application which talks to Oracle using JDBC and Domino over CORBA. It actually all works really well but the approach of one of our non-Domino developers was really interesting to me, so I asked if I could write about it up here.

So the approach that Greg takes is test driven development, that is he writes his tests before writing the code. For his testing he would rather not connect to the Domino server all the time, but instead mock up objects to make sure that his other code works correctly. Enter EasyMock, which is a JAR file which you can include in any project that basically pretends to be whatever object you want it to be.







package test;

 

import junit.framework.*;

import java.util.Vector;

import org.easymock.EasyMock;

import org.easymock.*;

import static org.easymock.EasyMock.*;

 

import lotus.domino.*;

import com.agcs.cores.utilities.*;

 

 

public class testDominoFieldProcessing extends TestCase {

 

  Document mock = null;

  DateTime datemock = null;

  DominoFieldProcessing dfield = null;

  public void setUp() throws Exception

  {

 

    mock = createMock(Document.class);

 

    Vector<DateTime> v = new Vector<DateTime>();

    for (int i = 0; i< 3;i++)

    {

      datemock = createMock(DateTime.class);

      expect(datemock.getLocalTime()).andReturn("01:02:03");

      expect(datemock.toJavaDate()).andReturn(new java.util.Date(System.currentTimeMillis()   ));

      v.add(datemock);

      replay(datemock);

    }

 

    expect(mock.getItemValue("time")).andReturn(v);

    expect(mock.hasItem("time")).andReturn(true);

    replay(mock);

 

  }

 

 

  public void testNotesDateToJavaDate()  throws Exception

  {

    for (java.util.Date d:  DominoFieldProcessing.getFieldValueAsListDate(mock,"time"))

      System.out.println(d);

  }

}


Java2html


What this code shows is the use of EasyMock to be a Notes Document and a DateTime Object. You tell it what the methods that you want to call should return, and then, for all intents and purposes, the object is a Domino object but without having to go through the hassle of deploying your code to a server which has the rights to connect to a proper Domino server. Now of course this should only be used early on in the development lifecycle, but for environments where connecting to Domino can be difficult this is a real time saver.

Album Cover

Following on from Adam and many others, here is my album cover.

The way it works is that you go to a random page in Wikipedia, the title of the article is your band name. The page I ended up at was Pirates with Attitude. Then you go to the random quotes page, and the last four words of the last quote is your album title. The last quote for me was from Henry Miller: “What does it matter how one comes by the truth so long as one pounces upon it and lives by it?”. And then finally you go to the Flickr interesting page and the third image is your album picture. Then you just put the three together.

It’s really quite surprising how good the results from such randomness can be, give it a go.

Forum Friday: Public Access File Resources

Declan’s Forum Friday idea happened to coincide with me coming across what is seemingly a bug in Domino which has been around for a long time. So back in 2006 the following question was asked on notes.net:

“In the ACL, Anonymous is set to “No Access” with read and write to public document. Anonymous don’t have problem opening form, pages, image resource which have “Available to Public Access”.

But I face a problem with file resource. I’ve check on the “Availabel to Public Access” but it still prompt a login? How can I overcome this? “

I hadn’t come across this before, but doing some testing on the next version of Idea Jam it bit me.

The file I was trying to get to was Mootools. The obvious answer was to move it into a script library, but because it’s a compressed file all on one line, Domino doesn’t serve it up correctly. So my rather dirty solution was to change the File Resource to be a Stylesheet Resource instead. The reason that this will work is that Stylesheet Resources don’t serve up a content type (whereas if you try to use an Image Resource it will tell the browser that it should expect a graphic which causes an error). So a quick and dirty solution but it does work at least. Now I wonder if we can get the bug fixed since that it seems to have been around since ND6.x.

ILUG 2008 Call for Abstracts

The planning for ILUG is hotting up and now Paul has put out the call for abstracts.

The aim is to get as many good speakers into the three days as possible so if you have a good idea then send an email to speakers@ilug2008.org sketching out what you’d like to talk about. As Paul says…

The only condition we have is that it is reasonably funky…. We try to keep clear of strategic sessions as much as possible. If you have an idea for a cool session, jot it down and send it to us asap!. Remember
1. Suits on speakers is just wrong at ILUG
2. This is a user group – informality is the key
3. Bad language is welcomed, and sometimes encouraged 😉
4. Session length is an hour.
We will be doing speedgeeking, but not working on that just yet.

Here is an example of one of Paul’s abstracts for Lotusphere.

AdminBlast… Over 60 tips in 60 minutes.
Bring coffee to this session as Paul Mooney brings you though over 60 administration tips aimed at improving the domino server environment for all the administrators. This brain dump of configuration features, notes.ini parameters and recommendations covers almost every aspect of Domino servers, and you are guaranteed to pick up something new.