I have resolved this issue, nothing to do with lwjgl (Sorry for posting the question here!). For those that are interested on the resolution to the issue, it is as follows. It was a bit of a red herring with the applet.
When you load a binary file from a class path with the file not in a jar the following code works fine
fileLength = is.available();
byteData = new byte[fileLength];
is.read(byteData, 0, fileLength);
But when you put the file in a jar file it compresses it and you don't get the same results. The isAvailable () returns the correct value but the is.read doesn't read the whole file. I'm not sure if this is the same on all o/s's but on the mac it reads only 8k. To read the whole file you need to run the read multiple times. The scenario with the file outside the jar it reads everything in one go.
int size = is.available();
byteData = new byte[size];
int pos = 0;
while(pos < size)
int bitToAdd = is.read(byteData, pos, size - pos);
pos += bitToAdd;
This now loads up the file properly. It's fine now but I seem to have the problem with opengl not running properly in applets running on macs!! But at least this issue is now resolved.