|
| InstantiationException Fra : Jonas Swiatek |
Dato : 06-05-01 01:50 |
|
Hey!
java.lang.InstantiationException: WarpSpace
at com/ms/applet/BrowserAppletFrame.newInstance
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
Nogle der har set sådan en her før?
I Javadoccen står der, at det er hvis man forsøger at bruge new på en
abstrakt klasse, eller et interface...
Det gør jeg nu ikke - men jeg har en Singletonklasse... Kan appletten have
nogle kvaler med sådan en?
Det virker nemlig i mit udviklingsmiljø (Forte for Java)...
--
Jonas
| |
Ole Nielsby (06-05-2001)
| Kommentar Fra : Ole Nielsby |
Dato : 06-05-01 12:23 |
|
Jonas Swiatek <sxt@get2net.dk> skrev:
> java.lang.InstantiationException: WarpSpace
> at com/ms/applet/BrowserAppletFrame.newInstance
> at com/ms/applet/AppletPanel.processSentEvent
> at com/ms/applet/AppletPanel.processSentEvent
> at com/ms/applet/AppletPanel.run
> at java/lang/Thread.run
>
> Nogle der har set sådan en her før?
>
> I Javadoccen står der, at det er hvis man forsøger at bruge new
> på en abstrakt klasse, eller et interface...
Den kan også forekomme hvis man bruger en constructor som
ikke findes, via Class.newInstance(). Måske også hvis constructoren
er privat og kaldes udefra - dette burde vist strengt taget udløse en
IllegalAccessException, men sæt ikke din hals på at det gør det.
> Det gør jeg nu ikke - men jeg har en Singletonklasse... Kan
> appletten have nogle kvaler med sådan en?
>
> Det virker nemlig i mit udviklingsmiljø (Forte for Java)...
En singleton implementeres sædvanligvis som en klasse med
en privat construktor som kaldes via en public static method.
Hvis browseren forsøger at kalde din constructor direkte,
evt. med forkert signatur, har du et problem.
Du bør nok opsplitte i to klasser, så du har en normal
Applet-klasse der opretter en singleton.
ON/***fjern sneglen fra min svaradresse***
| |
Jonas Swiatek (06-05-2001)
| Kommentar Fra : Jonas Swiatek |
Dato : 06-05-01 21:28 |
|
Det var Singletonklassen som var synderen...
Men ik' fordi den er singleton, men fordi den tager sig af
Netværkskommunikation som serveren.
Der var åbenbart en exception i oprettelsen af socketen, som fremprovokerede
den noget alternative exception... Det burde have lavet en IOException eller
lig...
--
Jonas
"Ole Nielsby" <ole.nielsby@snailmail.dk> skrev i en meddelelse
news:9d3j05$p9c$1@news.inet.tele.dk...
>
> Jonas Swiatek <sxt@get2net.dk> skrev:
>
> > java.lang.InstantiationException: WarpSpace
> > at com/ms/applet/BrowserAppletFrame.newInstance
> > at com/ms/applet/AppletPanel.processSentEvent
> > at com/ms/applet/AppletPanel.processSentEvent
> > at com/ms/applet/AppletPanel.run
> > at java/lang/Thread.run
> >
> > Nogle der har set sådan en her før?
> >
> > I Javadoccen står der, at det er hvis man forsøger at bruge new
> > på en abstrakt klasse, eller et interface...
>
> Den kan også forekomme hvis man bruger en constructor som
> ikke findes, via Class.newInstance(). Måske også hvis constructoren
> er privat og kaldes udefra - dette burde vist strengt taget udløse en
> IllegalAccessException, men sæt ikke din hals på at det gør det.
>
> > Det gør jeg nu ikke - men jeg har en Singletonklasse... Kan
> > appletten have nogle kvaler med sådan en?
> >
> > Det virker nemlig i mit udviklingsmiljø (Forte for Java)...
>
> En singleton implementeres sædvanligvis som en klasse med
> en privat construktor som kaldes via en public static method.
>
> Hvis browseren forsøger at kalde din constructor direkte,
> evt. med forkert signatur, har du et problem.
>
> Du bør nok opsplitte i to klasser, så du har en normal
> Applet-klasse der opretter en singleton.
>
> ON/***fjern sneglen fra min svaradresse***
>
| |
|
|