You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Martin Grigorov (JIRA)" <ji...@apache.org> on 2011/07/11 21:29:59 UTC

[jira] [Commented] (WICKET-3887) Problems concerning IE9 with "ActiveX Filtering" enabled

    [ https://issues.apache.org/jira/browse/WICKET-3887?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13063483#comment-13063483 ] 

Martin Grigorov commented on WICKET-3887:
-----------------------------------------

This is fixed in 1.5 long ago.
I think it is safe to back port to 1.4

> Problems concerning IE9 with "ActiveX Filtering" enabled
> --------------------------------------------------------
>
>                 Key: WICKET-3887
>                 URL: https://issues.apache.org/jira/browse/WICKET-3887
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-core
>    Affects Versions: 1.4.17
>         Environment: Windows 7, Internet Explorer 9, "ActiveX Filtering" enabled (for example as a domain policy in a company)
>            Reporter: Walter B. Rasmann
>            Priority: Minor
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> Internet Explorer 9 contains a new feature to block all ActiveX content by default:
>   http://ie.microsoft.com/testdrive/Browser/ActiveXFiltering/About.html 
> If the feature is enabled, all ActiveX controls are blocked silently. With Wicket this currently results in a lot of JavaScript content (but not all of it) being blocked as well. The user can allow an exception by clicking on a small icon in the address bar, however, he usually will be only able to do so, if he knows exactly what causes the problem.
> A user who enabled the feature himself might still see what is wrong, but the feature can be also enabled in a domain policy, which might make solving the problem much more difficult and have adverse effects on customers.
> The reason that some JavaScript content is blocked along with blocking ActiveX elements is the usage of window.ActiveXObject:
> wicket-ajax.js:
> >if (window.ActiveXObject) {                                                                                                                      
> >  transport = new ActiveXObject("Microsoft.XMLHTTP");                                                                                          
> >  Wicket.Log.info("Using ActiveX transport");                                                                                                  
> >} else if (window.XMLHttpRequest) {                                                                                                              
> >   transport = new XMLHttpRequest();                                                                                                            
> >   Wicket.Log.info("Using XMLHttpRequest transport");                                                                                           
> >}
> According to 
>   http://blogs.msdn.com/b/ie/archive/2011/05/02/activex-filtering-for-developers.aspx 
> the usage of this pattern is not advisable and the order should be changed to:
> >// Best Practice: Use Native XHR, if available
> >if (window.XMLHttpRequest) {
> >  // If IE7+, Gecko, WebKit: Use native object
> >  var xmlHttp = new XMLHttpRequest();
> >}
> >else if (window.ActiveXObject) {
> >  // ...if not, try the ActiveX control 
> >  var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
> >}
> The problem is reported to be fixed in JQuery 1.5.1, for instance.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira