Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

"Bad Magic Number" Loading Portlet/Applet in WSAD

0 views
Skip to first unread message

Craig Stephen

unread,
Nov 13, 2003, 10:56:58 AM11/13/03
to
I'm having a problem getting an applet to run in a portlet using WSAD
5.0 with the Portal Toolkit and was hoping that someone out there
might have a helpful suggestion.

The applet will run by itself and when loaded up into a straight
JSP/HTML page. However, it won't run from within a portlet. When
loading up the applet I get the following error in the Java Console:

java.lang.ClassFormatError:
com/rave/execDashboard/applet/EDBGraphApplet (Bad magic number)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception: java.lang.ClassFormatError:
com/rave/execDashboard/applet/EDBGraphApplet (Bad magic number)

Currently, I'm using WSAD 5.0/Portal Toolkit 5.0 with the 1.4.2_02 JRE
to compile/run the applet. I've also tried this with 1.3.1_09 with
idential results.

Normally a "Bad Magic Number" indicates that the class/jar file is
corrupt, however the applet loads/runs fine from within a straight JSP
page(WAS 4.0 Test Environment) vs a Portlet/View.JSP(Portal Server 4.2
Test Environment). Another possiblity would require that there be an
incompatibility between the JVM used to compile the class vs the one
loading/runing it. However, WSAD is using JRE 1.4.2_02 JRE to perform
both actions.

A copy of the <APPLET> tag is below:
<P><APPLET
code="com.rave.execDashboard.applet.EDBGraphApplet.class"
codebase="../lib"
archive="wcis.jar,EDBGraphApplet.jar"
width="310"
height="310">
</APPLET></P>

(Originally I used the <jsp:pluging> directive to load the applet but
switched back to <APPLET> tags when I discovered that the generated
OBJECT,EMBED tags wouldn't work with Netscape 7.1 or Firebird 0.7)

EDBGraphApplet.jar contains my graphing applet and wcis.jar contains
an off-the-shelf graphing package I'm extending.

Normally, in a straight-forward JSP I would load up the applet from a
directory relative to the JSP. However, in JetSpeed/WebSphere Portal,

"You cannot calculate the codebase relative to the Portlet JSP because
this JSP is not accessed directly by the browser.
The codebase must be relative to the jetspeed servlet URI, which is
/jetspeed/portal/ by default, thus your codebase should certainly be
only "../applets", and this will work wherever your portlet JSPs are
located :) (see: http://www.mail-archive.com/jetspe...@jakarta.apache.org/msg09237.html
for the original post)"

Anyway, if the loader was unable to find the JAR/Class file I would
get either get a FileIO error or a ClassNotFound error.

Does anyone have any suggestions as to what could be causing this
problem?

Thanks in advance.

=====
cstep...@yahoo.com
Eagles may soar, but weasels don't get sucked into jet engines.

0 new messages