Hi Charles,
I just tried this with the two attached classes, patterned
after yours. The command:
java visad.test.MouseSuperceded
printed "done" and exitted without throwing the Error.
There may be something wrong with your Java or VisAD
installation.
Also, please don't send email from 'root@localhost.localdomain'
as it is not a legal address for replies.
Good luck,
Bill
root wrote:
>
> To override the default mouse behavior in a 2D VisAD window,
> I was advised here to take a look at
> http://www.unidata.ucar.edu/glimpse/visad-lis/2255
> I believe I have reproduced the logic of that example below,
> and so I wonder why I got the following run-time error:
>
> "Exception in thread "main" visad.VisADError: cannot construct
> class MouseSupercede at visad.java2d.DefaultDisplayRendererJ2D.
> createSceneGraph(DefaultDisplayRenderer"...[etc.]
>
> ---------------------- EXAMPLE: -----------------
> import visad.*;
> import visad.java2d.*;
> import java.rmi.RemoteException;
> import java.awt.*;
> import javax.swing.*;
>
> public class a11 {
>
> public
> a11 (String[] args) throws RemoteException, VisADException {
>
> DisplayRendererJ2D DR
> new DefaultDisplayRendererJ2D(MouseSuperceded.class);
> DisplayImpl theDisp = new DisplayImplJ2D("theDisp", DR);
> }
>
> public static void main(String[] args)
> throws RemoteException, VisADException {
> new a11(args);
> }
> }
>
> class DeadMouse extends MouseHelper {
>
> public DeadMouse(DisplayRenderer DR, MouseBehavior MB) {
> super(DR, MB);
> }
> }
>
> class MouseSuperceded extends MouseBehaviorJ2D {
>
> public MouseSuperceded(DisplayRendererJ2D dRd {
> super(dRd, DeadMouse.class);
> }
> }
> ---------------- end of example -----------------------
>
> As a sanity check, if I replace the line
> new DefaultDisplayRendererJ2D(MouseSuperceded.class);
> with
> new DefaultDisplayRendererJ2D
> (visad.java2d.MouseBehaviorJ2D.class)
> I don't get the error.
--
----------------------------------------------------------
Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI 53706
hibbard@xxxxxxxxxxxxxxxxx 608-263-4427 fax: 608-263-6738
http://www.ssec.wisc.edu/~billh/vis.html
package visad.test;
import visad.*;
public class DeadMouse extends MouseHelper {
public DeadMouse(DisplayRenderer DR, MouseBehavior MB) {
super(DR, MB);
}
}
package visad.test;
import visad.*;
import visad.java2d.*;
import java.rmi.*;
public class MouseSuperceded extends MouseBehaviorJ2D {
public MouseSuperceded(DisplayRendererJ2D dRd) {
super(dRd, DeadMouse.class);
}
public static void main(String[] args)
throws RemoteException, VisADException {
DisplayRendererJ2D DR
new DefaultDisplayRendererJ2D(MouseSuperceded.class);
DisplayImpl theDisp = new DisplayImplJ2D("theDisp", DR);
System.out.println("done");
System.exit(0);
}
}