From: João Ferreira
Subject: Common Lisp Hyperspec: Error loading index applet
Date: 
Message-ID: <aa0a0611.0106190525.71b9b1ad@posting.google.com>
Hi,

When trying to use the Symbol Index of the CL Hyperspec, an error
occurs when loading the Java class CLIndex. This only happens with the
more recent releases of the Java plugin.

The error is (abbreviated):

java.lang.ClassFormatError: CLIndex (Extra bytes at the end of the
class file)
	at java.lang.ClassLoader.defineClass0(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
        ...

The SUN documentation states
(http://java.sun.com/products/jdk/1.2/compatibility.html#runtime)

   Virtual machines in releases prior to JDK 1.2 release will
   accept some class files that should, according to the VM
   specification, be rejected. Typically these class files have one or
   more of the following problems:

         1. There are extra bytes at the end of the class file; 
   [...]
   [and later]

   The Java Plug-in always uses the strict class-file checks,
   as if the-Xfuture flag is set.

I would like to know if there is a version of class CLIndex compatible
with the more stringent requirements (or its source, so that I can
compile it). I search around the net but all the versions I found gave
the same error.
From: Kent M Pitman
Subject: Re: Common Lisp Hyperspec: Error loading index applet
Date: 
Message-ID: <sfwlmmolazf.fsf@world.std.com>
············@my-deja.com (Jo�o Ferreira) writes:

> When trying to use the Symbol Index of the CL Hyperspec, an error
> occurs when loading the Java class CLIndex. This only happens with the
> more recent releases of the Java plugin.

It is because Java turned out to be less robust a tool for this
circumstance than originally claimed.  Someone else wrote that widget
for me in the early days of Java and it worked for some people but
blew up for others in ways that made me decide it was more trouble
than it was worth.

So I removed this Java widget in the later versions of the CLHS.  I
may at some point add it back in, but I recommend just getting a
version of CLHS that doesn't have the widget, and instead using the
index or permuted index.  I've been doing only this for years, and it
takes almost no time to locate the symbol that I would have typed...

Newer versions of CLHS have better indexes, too.

You can tell what version you have by looking in the HTML source of
almost any page.  You probably have version 3 (the earliest
publicly-released version of CLHS) or version 4 (very tiny cosmetic
change due to the renaming of Lucid CL to Liquid CL).  Version 5 has a
better index, particularly for format ops and sharpsign macros.  There
may now be a version 6 which Xanalys put out recently to change its
logo from Harlequin to Xanalys, but it is otherwise content-wise the
same as version 5, I believe.

You can get a version that is at least version 5 by going to Xanalys
and downloading their (cost-free) personal edition.  It's part of the
doc that comes with any version of their product, including the
personal edition.

Sorry about the problems with the Java widget...

There are some EXTERNAL tools floating around that let you type a
symbol name and will pull up the HyperSpec addressed to that symbol
name.  But I think the Harlequin/Xanalys copyright is written in a way
that would prevent you from distributing a repaired CLIndex widget
even if you had one...  Sorry about that.  (I wrote that irritatingly
constraining copyright notice while at Harlequin, but not being at
Harlequin now, I can't easily fix it.)