Details
-
Type: Bug
-
Status: Closed
-
Priority: Critical
-
Resolution: Duplicate
-
Affects Version/s: 1.6.2, 1.7
-
Fix Version/s: 1.7.2
-
Component/s: ICE-Components
-
Labels:None
-
Environment:All
Description
A simple Flash chart is being used with an outputMedia component. When the chart is clicked it alerts the user with a JavaScript alert. In IE7 when the chart is clicked the alert is shown but once the alert is closed all of the ICEfaces components on the page are unresponsive until a browser refresh occurs. This issue does not happen in FireFox. A sample application has been developed that shows this behavior in action. It uses the address demo application with the outputMedia component.
Issue Links
Activity
Arran Mccullough
created issue -
Arran Mccullough
made changes -
Field | Original Value | New Value |
---|---|---|
Attachment | address.war [ 11143 ] |
Arran Mccullough
made changes -
Attachment | IE7-output-error.txt [ 11144 ] | |
Attachment | IE7-output-proper.txt [ 11145 ] |
Deryk Sinotte
made changes -
Assignee | Mircea Toma [ mircea.toma ] |
Deryk Sinotte
made changes -
Priority | Major [ 3 ] | Critical [ 2 ] |
Mircea Toma
made changes -
Fix Version/s | 1.7.2 [ 10130 ] |
Deryk Sinotte
made changes -
Ken Fyten
made changes -
Assignee Priority | P3 |
Ken Fyten
made changes -
Assignee Priority | P3 | P2 |
Deryk Sinotte
made changes -
Ken Fyten
made changes -
Status | Open [ 1 ] | Closed [ 6 ] |
Assignee Priority | P2 | |
Resolution | Duplicate [ 3 ] | |
Assignee | Mircea Toma [ mircea.toma ] |
So this problem is an old friend and we need to document it somewhere more highly visible both internally (product support , developers) and externally (customers, users). Perhaps there is a programmatic solution as well - or at least some way we could log a warning. In any event, we've run into this several times, always under duress/panic and it can take a certain amount of work to find depending on where it's hiding.
The datasets for their Flash graphing component look like this:
<dataset seriesName='Talk Time' color='153E7E' ratio='100' alpha='100'>
<set value='69.0' link="JavaScript:alert('Got here ... 1st bar!');" />
</dataset>
The goal is to to have an alert popup when you click on one of the bars in the graph. The problem is that with IE, when you use the javascript: protocol as an action for any kind of link, IE runs window.unload which, with ICEfaces, is bad because it unloads the client bridge. That's why things become unresponsive and that's why a reload of the page basically fixes it (the bridge is reloaded). Since I don't know the Flash graphing package in question, it's difficult to provide a workaround.
1) They may be able to call the JavaScript in another way. Perhaps there is another attribute of the <set> tag that allows this.
2) They could provide an actual link to a real pop-up window rather than use the javascript: protocol.
Not sure if there is a way for us to figure out how window.unload is called. If we could detect that the javascript: protocol triggered it, maybe we could at least log a warning.