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.
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.