Internet Explorer 10 and the Agile Platform

Internet Explorer 10 and the Agile Platform

  
Hi everyone,
 
OutSystems is currently working towards certifying applications built with the Agile Platform when accessed by Internet Explorer 10. At this point most of the problems we identified have already been fixed in all the mainstream versions (5.0, 5.1, 6.0, 7.0); however, full certification is still undergoing.

We expect to have full support for IE10 by the end of May 2013 for Agile Platform 6.0 and 7.0.

For each of the versions, the fixes we already produced are available after:

  • Platform Server 5.0.2.61+
  • Platform Server 5.1.1.35+
  • Platform Server 6.0.1.24+
  • Platform Server 7.0.0.18+

To address the remainder of the problems at this point we recommend two actions, which can be implemented in any of the versions indicated above, and which will make all applications appear correctly in IE10.

The actions are:
 
  1. Force the pages to be rendered in IE10 in IE9-compatibility mode (.NET and Java stacks);
  2. Fix a problem in the browser detection algorithm to correctly identify IE10 as a javascript-capable browser (.NET Stack only).
 
These actions need to be applied to all the front-ends in your OutSystems installation – i.e. all machines where you have the Agile Platform Server installed.


 .Net
 
To apply these actions in the .NET stack:
 
1. Force the pages to be rendered in IE10 in IE9-compatibility mode
 
For this we will add the X-UA-Compatible custom header with value IE=9,chrome=1 (http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx).
To add this header follow the instructions at http://www.iis.net/configreference/system.webserver/httpprotocol/customheaders

Note: if you detect that the X-UA-Compatible header is already set and using this or a lower value for IE you can skip this step.

 
2. Fix a problem in the browser detection algorithm to correctly identify IE10 as a javascript-capable browser
 
This procedure assumes that you are not customizing the <browserCaps> element in machine.config to support special browsers. The default with OutSystems is not to customize this.
If you did customize <browserCaps> or if you are not sure, please contact OutSystems Product Support.
 
Also, if you installed the Agile Platform for the first time in version 6.0+ you can skip this step.
 
To apply this fix proceed as follows:
 
1)      Find your machine.config location
 
For 32bit OS: %WINDIR%\Microsoft.NET\Framework\v2.0.50727\Config 
For 64bit OS: %WINDIR%\Microsoft.NET\Framework64\v2.0.50727\Config 
 
2)      Make a backup copy of machine.config file and place it in a safe location (in case you need revert the changes);

3)      Open the file in Notepad (in Windows 2008R2, open Notepad with Right-Click -> Run as administrator )

4)      Find <browserCaps> element

        

5)     Select the text all the way until the closing tag </browserCaps> 
       

6)     Delete the selected content, leaving only <browserCaps> </browserCaps>

        

7)      Save the file and you are good to go.


3. [additional step] Apply a Microsoft hotfix regarding .Net browser definition files

This blogpost details an issue when using IE10 with a Windows Server whose .Net browser definition files have not been updated to recognize this new browser version.

We have seen some servers where this hotfix was necessary to help the problems that were experienced when using IE10. A lot of Windows Server installations should have this correction already applied by the automatic Windows Updates that frequently occur.
Nevertheless, we reccommend you verify that these hotfixes are applied:

http://support.microsoft.com/kb/2600100 for Win7 SP1/Windows Server 2008 R2 SP1, Windows Vista/Server 2008, Windows XP/Server 2003
http://support.microsoft.com/kb/2608565 for Win7/Windows Server 2008 R2 RTM
 

Java
 
To apply the below action in the Java stack:
 
1. Force the pages to be rendered in IE10 in IE9-compatibility mode
 
For this we will add the X-UA-Compatible custom header with value IE=9,chrome=1 (http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx).
To add this header
 
1)       Make a backup copy of file $JBOSS_HOME/server/outsystems/deployers/jbossweb.deployer/web.xml to a safe location (in case you need to rollback the change);

2)       Add the parameter in the CommonHeadersFilter section
         

         The parameter to add is the following:
 
      <init-param>
        <param-name>X-UA-Compatible</param-name>
        <param-value>IE=9,chrome=1</param-value>
      </init-param>


Note: if you detect that the X-UA-Compatible header is already set and using this or a lower value for IE you can skip this step.

           

3) Save the file.

4) Restart JBoss (service jboss-outsystems restart).
 

If you have any further questions you can simply reply to this post.
With best regards,

Luís


I can confirm that step 2 indeed makes the problems go away (-:

Nice to see that this information is shared on the forum also (in a nice clean post)
This is NOT working for me, at least not in IE10 for Windows 7. Fiddling around in the F12 tools, the only combination that works right is choosing "Browser Mode: IE10 Compat View" and "Document Mode: Standards". I do not know how to force this combination programatically. I have confirmed that we are forcing it to IE9 Standards mode on the document via HTTP headers, but that does not fix the problem.

The "Browser Mode" shouldn't matter, because we do NOT have a "browserCaps" section in machine.config (though I did try adding an empty one just to be sure). But all the same, we are having this problem.

We really need a 100% working solution here, this is really starting to impact our customers and will only get worse as IE10 starts to come through Windows Update soon. :(

J.Ja
Hi guys,
 
While checking this issue with Justin, we found some info on this subject online. According to this blog post, Microsoft released a hotfix that addresses this issue where .Net browser definition files have not been updated to recognize IE10 new browser version.

This was helpful for Justin to fix his problem so I'm adding it to the procedure above.
 
Cheers,
João Proença
Hi all,

I am running Outsystems CE 8.0.016 on a Windows XP desktop.

Recently upgraded my browser to IE11 and on that browser the JavaScript does not work properly for SubMenus. It worked before on IE8, and with Chrome and Firefox I do not have any issues either.

Is that the same issue described in this topic, because it does  not mention AP 8.

Best regards,

Harry
Hi Harry,

We tried reproducing the problem you've described but with no success. Can you please provide us with more details on how the javascript doesn't work? Perhaps some errors you see either on the page or on the developer tools console (which should be accessible by pressing F12).

Cheers,
Miguel