Home > Dynamics CRM 2011 Technical > CRM 2011 JavaScript Error : object doesn’t support property or method ‘Form load’–on most entity forms with a Non Customized CRM

CRM 2011 JavaScript Error : object doesn’t support property or method ‘Form load’–on most entity forms with a Non Customized CRM

Recently i installed and setup a fresh copy of our CRM 2011 system, the installation went fine and there were no errors or warnings during the installation.

But,

We had one problem – When you open almost any entity form, you get a JavaScript On load Error

There was an error with this field’s customized event

Field: window

Event: onload

Error: object doesn’t support property or method ‘Form load’

That was strange when there are no customizations made and it’s just freshly installed or not even upgraded from CRM 4.0.

After much digging, i learned that it was just because of a corrupt or missing component (ReWrite Module) for the CRM website in IIS.

Before proceeding with the steps to resolve, we can confirm that by opening up IIS Manager from your CRM server – navigate to CRM website – open Modules under IIS Tab,

1

2

If you notice the above image, there is none named Rewrite Module listed under modules.

So, the Resolution was to install/repair the Microsoft URL ReWrite module from your CRM installation media under a folder named URLReWriteModule and the file name is “rewrite_1.1_amd64_rtw”

3

Alternatively, you can also download that from here,

http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=16784

Once you install/repair the URL Rewrite Module – The Errors doesn’t occur any more and everything works fine.

You can also confirm the changes by going back to Modules under IIS and check for ReWrite Module entry and also open the CRM web.config and find the new entry like this,

<rewrite>
      <rules>
        <rule name="ClientGlobalContextRule" stopProcessing="true">
          <match url="/?([0-9a-zA-Z][^/]*)?/?((?:%7b|\{)[^/]*(?:%7d|\}))?/?(WebResources|Handlers)/ClientGlobalContext.js.aspx" />
          <action type="Rewrite" url="/{R:1}/_Common/ClientGlobalContext.js.aspx" />
        </rule>
        <rule name="WebResourcesRule" stopProcessing="true">
          <match url="/?([0-9a-zA-Z][^/]*)?/?((?:%7b|\{)[^/]*(?:%7d|\}))?/?webresources/([^\\?]+)" />
          <action type="Rewrite" url="/{R:1}/Handlers/WebResource.ashx?name={R:3}" />
        </rule>
        <rule name="FederationMetadataRule" stopProcessing="true">
          <match url="FederationMetadata/2007-06/FederationMetadata.xml" />
          <action type="Rewrite" url="/Handlers/FederationMetadata.ashx" />
        </rule>
      </rules>
    </rewrite>

URL ReWrite – What it does and how does it work in conjunction with CRM?

When a webresource Ex. An entity form is requested from the CRM server, the URL is built dynamically using URL ReWrite component. More information on URL Rewriting in Asp.net is found here.

Hope this helps someone and was a good learning for me as well.

Thanks,

Francis Edwin

About these ads
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 531 other followers

%d bloggers like this: