Home > Archive > Java Help > January 2007 > Cisco SDM Java Applet StackOverflowError
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
Cisco SDM Java Applet StackOverflowError
|
|
| Ian Wilson 2007-01-23, 8:08 am |
| Note: Crossposted to comp.lang.java.help and comp.dcom.sys.cisco.
My cisco 877 router provides a Java applet in a web interface for
configuring and monitoring the router. This is cisco SDM version 2.3.
On one notebook PC this works fine. On another desktop PC I get a
StackOverflowError and the applet never opens it's window.
Previously I used SDM Express, which worked fine on the desktop PC which
doesn't run SDM. (I upgraded SDM Express to SDM in the router in order
to be able to configure router features not supported in SDM Express.)
Both PCs run Windows XP. Both have a Sun Java Runtime (JRE). I have
tried both IE 7 and Mozilla Firefox 1.5.
The notebook has JRE 1.5.0_06.
The desktop has JRE 1.5.0_09, I tried upgrading to 1.5.0_10, same problem.
The Java console reports ...
Requesting URL: http://webrouter/archive/flash:comm...on/jploader.jar
Exception in thread "AWT-EventQueue-3" java.lang.StackOverflowError
at sun.java2d.Disposer.add(Unknown Source)
at sun.java2d.Disposer.addRecord(Unknown Source)
at sun.awt.windows.Win32SurfaceData.initOps(Native Method)
at sun.awt.windows.Win32SurfaceData.<init>(Unknown Source)
at sun.awt.windows.Win32SurfaceData.createData(Unknown Source)
at sun.awt.Win32GraphicsConfig.createSurfaceData(Unknown Source)
at sun.awt.windows.WComponentPeer.replaceSurfaceData(Unknown Source)
at sun.awt.windows.WComponentPeer.replaceSurfaceData(Unknown Source)
at sun.awt.windows.WComponentPeer.setBounds(Unknown Source)
at java.awt.Component.reshapeNativePeer(Unknown Source)
at java.awt.Component.reshape(Unknown Source)
at java.awt.Component.setBounds(Unknown Source)
at java.awt.Component.resize(Unknown Source)
at java.awt.Component.setSize(Unknown Source)
at java.awt.BorderLayout.layoutContainer(Unknown Source)
at java.awt.Container.layout(Unknown Source)
at java.awt.Container.doLayout(Unknown Source)
at tea.set.Scroller.doLayout(Unknown Source)
at java.awt.Container.validateTree(Unknown Source)
at java.awt.Container.validate(Unknown Source)
at tea.set.Scroller.aeH(Unknown Source)
at tea.set.Scroller.aeH(Unknown Source)
at tea.set.Scroller.aeH(Unknown Source)
at tea.set.Scroller.aeH(Unknown Source)
at tea.set.Scroller.aeH(Unknown Source)
The last mesage is repeated many times, possibly hundreds.
I am not sure if this is a bug in the cisco SDM applet (which works fine
on the laptop) or in my JRE (which ran SDM Express OK).
Any suggestions?
| |
| Andrew Thompson 2007-01-23, 8:08 am |
| Ian Wilson wrote:
> Note: Crossposted to comp.lang.java.help and comp.dcom.sys.cisco.
Note: Follow-up set to c.l.j.help, feel free to widen
the follow-up address if it suits you.
....
> Any suggestions?
Even as part of the debugging, I would suggest
setting up a web start test for the applet.
It removes the browser (largely) from the picture,
and gives more control over choice of JRE.
Andrew T.
| |
|
|
Have you tried an older version of JRE? Many of Cisco's
java applets cause problems with the latest versions of
the JRE. 1.3.x seems to preferred by Cisco.
Check the release notes, they might have something to
say about that.
--
Posted via a free Usenet account from http://www.teranews.com
| |
| Nigel Wade 2007-01-24, 4:26 am |
| Ian Wilson wrote:
> Note: Crossposted to comp.lang.java.help and comp.dcom.sys.cisco.
>
> My cisco 877 router provides a Java applet in a web interface for
> configuring and monitoring the router. This is cisco SDM version 2.3.
>
> On one notebook PC this works fine. On another desktop PC I get a
> StackOverflowError and the applet never opens it's window.
>
> Previously I used SDM Express, which worked fine on the desktop PC which
> doesn't run SDM. (I upgraded SDM Express to SDM in the router in order
> to be able to configure router features not supported in SDM Express.)
>
> Both PCs run Windows XP. Both have a Sun Java Runtime (JRE). I have
> tried both IE 7 and Mozilla Firefox 1.5.
>
> The notebook has JRE 1.5.0_06.
> The desktop has JRE 1.5.0_09, I tried upgrading to 1.5.0_10, same problem.
>
> The Java console reports ...
>
> Requesting URL: http://webrouter/archive/flash:comm...on/jploader.jar
> Exception in thread "AWT-EventQueue-3" java.lang.StackOverflowError
> at sun.java2d.Disposer.add(Unknown Source)
> at sun.java2d.Disposer.addRecord(Unknown Source)
> at sun.awt.windows.Win32SurfaceData.initOps(Native Method)
> at sun.awt.windows.Win32SurfaceData.<init>(Unknown Source)
> at sun.awt.windows.Win32SurfaceData.createData(Unknown Source)
> at sun.awt.Win32GraphicsConfig.createSurfaceData(Unknown Source)
> at sun.awt.windows.WComponentPeer.replaceSurfaceData(Unknown Source)
> at sun.awt.windows.WComponentPeer.replaceSurfaceData(Unknown Source)
> at sun.awt.windows.WComponentPeer.setBounds(Unknown Source)
> at java.awt.Component.reshapeNativePeer(Unknown Source)
> at java.awt.Component.reshape(Unknown Source)
> at java.awt.Component.setBounds(Unknown Source)
> at java.awt.Component.resize(Unknown Source)
> at java.awt.Component.setSize(Unknown Source)
> at java.awt.BorderLayout.layoutContainer(Unknown Source)
> at java.awt.Container.layout(Unknown Source)
> at java.awt.Container.doLayout(Unknown Source)
> at tea.set.Scroller.doLayout(Unknown Source)
> at java.awt.Container.validateTree(Unknown Source)
> at java.awt.Container.validate(Unknown Source)
> at tea.set.Scroller.aeH(Unknown Source)
> at tea.set.Scroller.aeH(Unknown Source)
> at tea.set.Scroller.aeH(Unknown Source)
> at tea.set.Scroller.aeH(Unknown Source)
> at tea.set.Scroller.aeH(Unknown Source)
> The last mesage is repeated many times, possibly hundreds.
That looks like a recursion error. Whatever tea.set.Scroller.aeH is it is
calling itself recursively and not returning, resulting in a stack overflow.
I have never heard of tea.set.Scroller.aeH (and neither has Google), it's not
part of the Java release. That's most likely where the problem lies.
--
Nigel Wade, System Administrator, Space Plasma Physics Group,
University of Leicester, Leicester, LE1 7RH, UK
E-mail : nmw@ion.le.ac.uk
Phone : +44 (0)116 2523548, Fax : +44 (0)116 2523555
| |
| Ian Wilson 2007-01-24, 8:17 am |
| Nigel Wade wrote:
> Ian Wilson wrote:
>
>
> That looks like a recursion error. Whatever tea.set.Scroller.aeH is it is
> calling itself recursively and not returning, resulting in a stack overflow.
>
> I have never heard of tea.set.Scroller.aeH (and neither has Google), it's not
> part of the Java release.
I suspect it is part of a widget set called "Tea Set" developed long ago
by a company known as isoft who now appear to be defunct.
> That's most likely where the problem lies.
I'll have to wait until cisco redevelop SDM then :-)
| |
| Ian Wilson 2007-01-24, 8:17 am |
| Drake wrote:
> Have you tried an older version of JRE? Many of Cisco's
> java applets cause problems with the latest versions of
> the JRE. 1.3.x seems to preferred by Cisco.
>
> Check the release notes, they might have something to
> say about that.
>
Aha! There are no release notes on the cisco SDM CD but it does have a
"JRE" subdirectory which contains a file named
jre-1_5_0_06-windows-i586-p.exe
So it looks like you are right and I must ensure SDM is run under JRE
1.5.0_06.
My desktop PC has various JRE's including 1.5.0_06 but both my web
browsers are using the latest JVM I've installed.
Options?
- uninstall more recent versions of Java & reinstall 1.5.0_06 browser
plugins. Ugh!
- use JWS? when installed on a PC, SDM is started from a nasty tangle of
html, shtml and other files that make a lot of use of Javascript,
rewriting URLs etc. The classes are bundeled up in .sqz files and there
is a special class that I guess loads the app from these. AIUI JWS is
mostly for apps not applets and runs applets via a AppletViewer that has
some limitations. I think my chances of success are low and it would
be a long hard struggle. Ugh!
- find a way to change the JRE version used by the browser. I've googled
but not found any clues how I might do this.
I think I'll give in, I'll use the laptop PC that has the right version
of JRE and be careful not to update Java on that PC!
Thanks to all for the help.
|
|
|
|
|