After
immediately upgrading to PeopleTools 8.50, we have encountered several issues
that were related to new AJAX features introduced in 8.50. Here is the list of
such issues
1.
Getting frequent error 501 not implemented on the browser with IE7 and IE8.
2.
Component page reset. Users are getting kicked out to first page or the search
dialog box in the middle of a multi page transaction and losing the data they
have entered.
3.
Suddenly the page will become unresponsive and entire browser will freeze and
will require restart of the browser.
All
the 3 symptoms were annoying for the users and we eventually traced it to AJAX
feature, that results in loss of POST data.
Temporary Solution:-
Turning
off the AJAX setting resolved all 3 issues. Here is a way to turn off the AJAX
Go
to PeopleTools –> Web Profile > Open the Web profile you use for e.g. DEV
or PROD.
Go
to Custom Properties and Add a Property AJAX of type Boolean and set its value
to false. This will turn off the AJAX. To enable it again make it true or
remove the row. Bounce all the Web servers using this web profile to make this
setting take effect.
Permanent Solution:-
Though
the above changes resolves the issue, this is not desirable and also may not be
supported in future peopletools release. I have found this issue to be related
to a bug in IE7 and IE8 when used with Windows XP OS. Fortunately microsoft
includes the hotfix to resolve the issue, however registry change needs to be
made to enable the hotfix. For more details, see this following KB http://support.microsoft.com/kb/895954 - When you use Microsoft
Internet Explorer or another ! program to perform a re-POST operation, only the
header data is posted.
See
How to enable this hotfix section for registry changes.
Basically,
the issue happens as IE sends the AJAX request in 2 tcp ip packets one for the
header and one for the body. When network error happens, and ie tries to send
the ajax request again, it fails to send the body. This causes PIA to loose the
session state and we see the issues described above. The other browsers
Firefox, Safari and Chrome do not send ajax request in multiple packets and
this issue does not appear there.
According
to this , you can specify the value in any one of the following location, in
order of decreasing precedence.
- HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Internet
Explorer\Main\FeatureControl
- HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet
Explorer\Main\FeatureControl
- HKEY_CURRENT_USER\Software\Microsoft\Internet
Explorer\Main\FeatureControl
- HKEY_LOCAL_MACHINE\Software\Microsoft\Internet
Explorer\Main\FeatureControl