Google Chrome Support for Exchange Tripped Up by Standards Again
Microsoft recently noted a problem with its Outlook Web App and its Exchange Admin Center when used with the latest Google Chrome browser.
Certain actions might not work, such as trying to edit the properties of an e-mail user, according to a Microsoft support page notice. The notice tersely pointed to the reason for this dysfunction -- namely, that the Google Chrome browser no longer supports a Web API called "showModalDialog."
A workaround is offered by the support page, with Microsoft promising to "address this problem" sometime in the future. The issue affects Exchange Server 2013 Standard and Enterprise editions, along with Exchange Online.
But rather than being a technical problem, the glitch is more the result of a communication problem. It's part of a twisted tale of HTML standards and the vagaries of the code deprecation process.
In essence, Google just stopped supporting the showModalDialog HTML standard when it released its Chrome version 37 browser back in August. Since that showModalDialog method was still being used by Microsoft's applications, certain functions in the Outlook Web App and Exchange Admin Center stopped working when used with Google Chrome.
The showModalDialog API opens up a dialog box in an HTML document, similar to a popup box. However, unlike other APIs, it stops all other operations until that dialog box is closed, according to a description and critique by Opera Software. The showModalDialog API is considered to be overly complex, with security vulnerabilities, according to Opera, which also favors its demise. Even Mozilla wants it dead.
Google had given advance public notice that it planned to stop supporting the showModalDialog API in its Chrome browser. That advanced notice seems to have appeared in Google's Blink developer group threads about nine months ago or so. A February Blink post indicated that showModalDialog was used by just 0.006% of traffic as measured in Google's stats, thus marking it for deprecation since it was largely unused.
In July, Google reiterated its rationale for killing off the showModalDialog API, saying that it essentially was a mistake that it had appeared in the HTML standard in the first place. The showModalDialog API had been a proprietary API that was introduced into the HTML standard with Internet Explorer 4 "although it was never formally standardized," the July Google blog post claimed.
It's not clear whether Microsoft took notice of Google's plans regarding the showModalDialog API. Other organizations that may have relied on the API for business apps may have been affected as well, unless they had been closely following Google's Blink developer threads or its Chromium blog posts.
Microsoft's support notice just offered a legal disclaimer:
The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, about the performance or reliability of these products.
Microsoft MVP Tony Redmond, an Exchange expert, offered blame all around. In a Windows IT Pro story, he noted that Google had provided just a six-weeks' notice with its July blog post that it planned to kill off support for the showModalDialog API. However, he also faulted Microsoft for seeming to not pick up on Google's notices to that effect.
Probably neither company can keep track of, or keep pace with, their rival's doings, but customers may be the ones to suffer as a result. For instance, Google's decision to drop support for Microsoft Exchange ActiveSync in 2013 led to calendar syncing problems for some Gmail users. In that case, standards also were at issue, as Google was dropping support of Exchange ActiveSync in favor of the CardDAV open protocol.
It seems it's not enough for an HTML standard to be published by the Worldwide Web Consortium. That standard also has to be widely used. And it also has to be supported by all of the browser makers, too.
About the Author
Kurt Mackie is senior news producer for 1105 Media's Converge360 group.