java applet using Next-generation plug-in
Asked Answered
T

2

8

I have a web application (struts 1.3, Weblogic 10.3.0, Toplink, Oracle) that has a Java applet which isn’t working in the browser (IE7/8) when the Next-Generation Plug-in setting is enabled in the Java control panel but works fine when it’s disabled. The trouble is that this setting is set to disappear in an upcoming Java release meaning that my users would have to keep using Java 1.6_xx on their workstations as they are currently. I have little influence over which version they use because they are all governed by their local IT departments across the country. So, either I have to find a simple fix to allow the Next-Generation setting to work, or we have to look at replacing/rewriting the applet with something else (but would be a last resort due to funding constraints), most likely something AJAX-friendly so as to avoid the need for a plugin. This application is quite old, written around 2001 before AJAX was really around.

The main window has a left, right, and top frame (JSP’s), as well as a center frame which is where the applet is. The applet has a main content area in the middle and a lower panel at the bottom which has some buttons. The buttons tell the content area (which is basically a treegrid) what to do (Save, Copy, change status, etc ). When I press one of the buttons the entire window (surrounding frames plus the applet itself) repeat inside the area where the applet is. It’s like a kaleidoscope or like a repeating fractal pattern kind of thing, or like when you take a picture of yourself in the mirror and you see the room repeated over and over in the mirror. In this case it repeats for each button press and the repeated set gets smaller each time. Weird!!

So, based on my research, the Java Next-Generation plugin works differently by allowing more than one process or thread whereas the classic plugin only uses a single thread. So my suspicion is that a new process is being spawned for each button press. I tried using the “separate_jvm” applet parameter but it made no difference whether it was set to true or false. I don’t see any other applet parameters which seem to be relevant.

Another idea I had is that maybe it’s something to do with the JSP frameset, maybe something like “target=_top” needs to be added somewhere…but I’m not sure how this relates to applet threads if at all.

Anyone have any suggestions, ideas or experiences that might help?

Thailand answered 7/12, 2012 at 18:2 Comment(4)
"I have a web application (struts 1.3, Weblogic 10.3.0, Toplink, Oracle) that has a Java applet.." Fix the applet. If the applet source is not available, if the applet is not supported, find a new one.Dongola
why don't you compile your applet with a new JDK, so that your applet works fine in next generation plug-in?Adelinaadelind
I do have the source code and have compiled it using the latest 1.6 JDK but still no help unfortunately. The next generation plugin was introduced in 1.6_10 and I have tried recompiling with 1.6_32.Thailand
I would assume that you have access to the applet source code. If that is the case then you won't have a big problem analyzing and fixing your applet - it isn't necessary to throw it away. If you have fixed that problem then "upgrade" it to the new requirements: Sign it with an official certificate, set all necessary flags etc. - then your customers can continue to use it and older jvms are still able to use it, too...Indebtedness
F
0

you can use velocity to handle these type of problem and it will also help you for future enhancement also.

Florist answered 31/8, 2014 at 7:16 Comment(0)
H
0

The problem is not related to version of IE but rather to version of Java. Below excerpt from letter of certificate provider (they took it from some forum, so direct link to source cannot be provided):

For JDK version higher than 1.6.0 and below 1.6_15, you can just clear all kinds of cache in web browser, java console and java control panel. Then it should works fine!

For JDK version between 1.6_15 and 1.6_30, you should disable the "next-generation java" option in java control panel.

For JDK version higher than 1.6_30, you should turn on "next-generation java" option in java control panel.

Hagiography answered 3/7, 2016 at 9:1 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.