Re: Problem creating an NSButton subclass in Java
Re: Problem creating an NSButton subclass in Java
- Subject: Re: Problem creating an NSButton subclass in Java
- From: Chris Backas <email@hidden>
- Date: Sat, 02 Aug 2003 15:51:57 -0400 (EDT)
- Priority: Normal
>
> I'm trying to subclass an NSButton in my program with a Java class, so
>
> I've picked NSButton in IB, subclassed it, clicked the button in my
>
> form, set the custom class property to my new subclass, and created
>
> the file
>
> for my new class. (Did I miss anything?)
>
>
>
> For whatever reason, my program won't run when my subclass is set at
>
> the button's custom class. I get this cryptic console error:
>
>
>
> jobjc_jvm_newObject(): constructor with signature
>
> (Ljava/io/InputStream;)V on class java/io/ObjectInputStream failed
>
> (should morph the java exception)
>
>
>
> I don't know what this is referring to, as I don't use the
>
> java.io.ObjectInputStream class. Am I missing a step in my above
>
> procedure? Thanks for any help.
>
>
You've run into a problem when subclassing any object that goes through
>
the java bridge. Basically you have to define a no-arguments
>
constructor in your subclass. It's to do with how the NSArchiving of
>
stuff in IB works, if you don't define this method the runtime can't
>
instantiate your class.
>
>
public class MyButton extends NSButton {
>
public MyButton() {
>
super(); // Need to call this
>
// Otherwise you can leave this blank.
>
}
>
}
>
>
Happy subclassing,
>
>
Tom
Hi Tom,
Thanks for replying. This actually occurred to me, so I have this for my class so far:
import com.apple.cocoa.foundation.*;
import com.apple.cocoa.application.*;
import java.io.*;
public class DropableButtonClass extends NSButton
{
public DropableButtonClass()
{
super();
};
public DropableButtonClass(NSRect frame)
{
super(frame);
};
}
It doesn't make a difference in the error though. I'd actually created these constructors just to mimic the ones that NSButton had in its documentation. Any other ideas? I'm stumped =)
Chris Backas
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.