JDK-6617302 : pogo game applets fail to load
  • Type: Bug
  • Component: deploy
  • Sub-Component: plugin
  • Affected Version: 6u5
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_vista
  • CPU: x86
  • Submitted: 2007-10-16
  • Updated: 2010-04-04
  • Resolved: 2007-10-31
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Related Reports
Duplicate :  
Relates :  
* Problem: Some of pogo game applets (Bingo Luau, Spades, WordJong) fail to load-  It doesn't happen using promoted 6u5-b04

* Tested build: 6u5-b99 (plugin2) - Oct 5 window build

* Tested OSes/browsers:  
- Vista-business/IE7
- win2003 SE/ IE7
- Xp-pro(sp2)/ IE6

* Steps to reproduce:

1) Browse http://www.pogo.com
2) Click "All Free Games" link  on the left frame
3) From the game list, click "Bingo Luau"
4) Login if required 
5) Click "Play Now" 

The "Bingo Luau" game applet should load after step #5. 
Using plugin2-6u5-b99 (oct 5 build), the applet fails to load (a white blank screen displaye). The same applet loads fine using promoted 6u5-b04.  See attached Java console and games screenshots for details both for the plugin2 failing scenario and promoted 6u5-b04 passing scenario).
Other pogo game applets (Spades, WordJong) display the same issue.

EVALUATION This bug is being marked as a duplicate of 6622332 for bookkeeping purposes and does not need to be re-verified independently. In the case of a regression please file a new bug.

SUGGESTED FIX http://sa.sfbay.sun.com/projects/deployment_data/6u5/6617302.0

EVALUATION The Pogo games run multiple applets per page which expect to be able to refer to each other by name via static variables. The class loader cache, introduced in the new plug-in under 6618920, addresses the problem of these applets being able to see each others' static variables. However, there was another problem: the names of these applets were occasionally turning up empty. The reason for this turned out to be slight differences in how the old and new plug-ins' ActiveX controls queried the "ambient display name" of the control, which is apparently how the id of the object tag is passed up as the applet's "name" parameter. It seems that when the applet tag is in use and the "name" parameter is specified, under some circumstances the ambient display name will be null or empty. The problem is fixed by checking for this case and avoiding destroying a valid name for the applet object. In conjunction with the fix for 6618920, this fix makes the games from www.pogo.com work in the new Java Plug-In.

EVALUATION It turns out that the absence of the class loader cache was one of the reasons that the Pogo games were not working, but not the only one. Some of the code the new plug-in inherited in its Internet Explorer port queried the "ambient display name" of the ActiveX control and passed this up to Java as the "name" parameter for the applet. Apparently this is how one provides an identifier to the OBJECT tag. It seems that in certain situations the applet was specifying a valid "name" parameter, but for some reason the ambient display name of the ActiveX control was null or empty. This meant that two out of the three applets on the game's web page had their (valid) names blown away, preventing them from looking up each other by name later. Adding a check for this case fixed the problem and along with the introduction of the class loader cache the Pogo games are now working. This bug will therefore be fixed separately from 6618920.

EVALUATION Inspection of the failing codes indicates that the lack of the class loader cache in the new plug-in is the reason for these failures. This work will be done under 6618920 and once it has been confirmed as fixing this problem this bug will be closed as a duplicate of that one.