So there's an issue with Chrome 38 and higher and Exchange 2013 Outlook Web App (OWA): the calendar will fail to load any data effectively showing up blank for users. You'll also see the error in the client headers as "ClientError;exMsg=Uncaught SyntaxError: Unexpected token );file=https://mail.corp.com/owa/15.0.995.29/owa2/scripts/boot.0.mouse.js:11". This is not the modalDialog issue that's causing issues with OWA 2010, it's an issue with Chrome's V8 javascript engine their array object definition.
The fix is pretty simple to implement. On one of your mailbox servers copy the contents of: C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\Owa\prem\15.0.995.29\scripts\ to a directory on your workstation (may want to make a backup copy on the server just in case). There's no need to copy any subdirectories, only the root js files. Also note that you may have a different version number in there: 15.0.995.29 is Update 6.
Using Notepad++, find and replace in all files in the directory on your local machine: replace '"values"in n' with 'n.hasOwnProperty("values")' (without the surounding 's). On 15.0.995.29 this was 42 replacements:
Copy the updated files back to all of your Exchange Mailbox servers (if you segregate your CAS and MB hosts, you only need to update on the MB hosts as they do the actual site rendering). Also after you update the files there's no need to cycle the AppPool, clients just need to logout and log back into OWA (if you have a NetScaler or similar load balancer in between doing any form of caching you may need to refresh that).
You can actually see Microsoft's implemented the same fix for this in the Office 365 release chain; they added the fix between 16.0.411.0 and 16.0.411.1:
https://r1.res.office365.com/owa/prem/16.0.411.0/scripts/boot.0.mouse.js
https://r1.res.office365.com/owa/prem/16.0.411.1/scripts/boot.0.mouse.js
Credit to finding the root issue goes to adamk@chromium.org, the Chrome issue is here:
https://code.google.com/p/chromium/issues/detail?id=409858
Update for Chrome looks like it's coming down the pipeline soon, should also be in the Exchange 2013 Update 7 in late November.
Blog for information, notes, and other useful tidbits from an IT worker administering Windows Server, Server Core, Exchange, and System Center Configuration Manger ( SCCM ). With a nice thin layer of PowerShell tying it all together.
Friday, October 17, 2014
Wednesday, February 22, 2012
"The file name you specified is not valid or too long" with SharePoint 2010 Mapped Drives
Ran into an issue today with using mapped drives in Windows 7 and a SharePoint 2010 Document Library. Making new files worked just fine, but when trying to move files between folders I was getting the error: "The file name you specified is not valid or too long".
The work around is to rename the document library. Since you can't do this directly from the SharePoint web interface, I had to do it using SharePoint Workspaces. Once the library was renamed, it's working properly now.
Long story short, it turns out the WebDAV support in Windows 7 doesn't seem to like certain characters in paths, specifically space in this case (although I assume there are others). In this case it didn't like that the Document Library was at:
http://sharepoint/docs/Documents%20And%20Things
This is with WebClnt.dll 6.1.7601.21728, which is the most recent I could track down.
The work around is to rename the document library. Since you can't do this directly from the SharePoint web interface, I had to do it using SharePoint Workspaces. Once the library was renamed, it's working properly now.
Wednesday, August 10, 2011
Eject for Mac OSX (or OS X)
Tired of getting the "Device Removal" dialog box in OSX every time you pull out your USB flash drive or iPod?
I present "Eject" a two tap utility for OS X that will display a dialog of all of your mounted disks. Select one, click "Choose", and Finder will eject it.
Here's a screenshot:
http://dl.dropbox.com/u/5396315/Eject/screenshot.png
http://dl.dropbox.com/u/5396315/Eject/screenshot.png
Here's the App in a Zip file:
http://dl.dropbox.com/u/5396315/Eject/Eject.zip
http://dl.dropbox.com/u/5396315/Eject/Eject.zip
And the Automater Workflow if you want to tweak it:
http://dl.dropbox.com/u/5396315/Eject/Eject_Workflow.zip
http://dl.dropbox.com/u/5396315/Eject/Eject_Workflow.zip
Monday, June 28, 2010
Note on Deploying Adobe CS5
Found this tidbit in the Adobe Enterprise Deployment guide. At least they're upfront about not being user or administrator friendly:
The CS5 applications do not implement application preferences in a consistent manner across applications, nor do the implementations conform to existing platform standards.
Thursday, June 10, 2010
Set Printer Share Comment to the Port Name With IP Address
So as an update to an earlier post on adding the port name to the comments of a print queue on a Server 2003/2008/2008 R2 box, below is an update script that will add both the port name and the IP address or DNS host name associated with a given port.
$printersWMI = Get-WMIObject -Class "Win32_Printer" -NameSpace "root\cimv2" -computername "."
$portsWMI = Get-WMIObject -Class "Win32_TCPIPPrinterPort" -NameSpace "root\cimv2" -computername "."
$ports = @{}
ForEach($port in $portsWMI){
$ports[$port.name] = $port.HostAddress
}
ForEach($printer in $printersWMI){
$printer.Comment = $printer.PortName + "`r`n" + $ports[$printer.PortName]
$printer.Put()
}
Tuesday, November 03, 2009
Excluding My Music from Roaming Profile
By popular demand, we recently rolled out iTunes to our users. An unexpected consequence of this was that our windows roaming user profile demands skyrocketed. We're talking over doubling basically over night. Our solution to it was to exclude the My Music folder from the roaming user profile. In general its probably best we don't have user's music collections sitting on expensive enterprise storage. To do this, create a new Group Policy. Drill down to Administrative Templates\System\User Profiles. Enable "Exclude directories in roaming profiles" and set the value to "My Documents\My Music". If there are other folders you'd like to exclude you can add them with a semicolon, eg "My Documents\My Music;Temp".
The good news is that once this policy is enabled, the next time that the user logs off, the user profile will sync without any of the Excluded directories. Even better is that it will remove existing "My Music" folder on the server copy of the roaming profile. Turn on Performance Monitor, setup some counters, and watch the drive space roll in.
The good news is that once this policy is enabled, the next time that the user logs off, the user profile will sync without any of the Excluded directories. Even better is that it will remove existing "My Music" folder on the server copy of the roaming profile. Turn on Performance Monitor, setup some counters, and watch the drive space roll in.
Friday, April 10, 2009
Exchange Cluster Continuous Replication Failed
We had an Exchange 2007 Mailbox server's storage drive fill up due to log files not being cleaned out due to the backup job failing (don't ask). After we deleted the unnecessary log files and got the store back online, we weren't able to get its CCR passive node to bring 3 of the 5 stores online. We ran "Update-StorageGroupCopy -DeleteExistingFiles", and the process would complete. I would then show up as "healthy" with a "Get-StorageGroupCopyStatus" for a minute or so, and then fail. Checking the event log we got:
Given that we're using a backup solution that backs up the databases from the passive node, I had to use NTBackup Utility to do a normal backup on the database. Once this completed I was able to use the Update-StorageGroupCopy command to get the database replication back to a healthy state. In theory this process should work on a Standby Continuous Replication
SCR cluster as well.
Event ID: 2059It wouldn't make sense straight away, as the database on the active node was "up to date" and shouldn't need those log files. After some research, I found that this was a result of the failed backup process. When we deleted the log files on the active node, we'd broken the replay log process (as we'd deleted log files that were created after the last time the database was backed up).
Source: MSExchangeRepl
The log file 404149 foris missing on the production copy. Continuous replication for this storage group is blocked. If you removed the log file, please replace it. If the log is lost, the passive copy will need to be reseeded using the Update-StorageGroupCopy cmdlet in the Exchange Management Shell.
Given that we're using a backup solution that backs up the databases from the passive node, I had to use NTBackup Utility to do a normal backup on the database. Once this completed I was able to use the Update-StorageGroupCopy command to get the database replication back to a healthy state. In theory this process should work on a Standby Continuous Replication
SCR cluster as well.
Subscribe to:
Posts (Atom)