ScriptLoadFailedException in Google Chrome
Posted By: nicocrm on March 21st, 2012 in General, Saleslogix
No Gravatar

When using Google Chrome in the SalesLogix web client we noticed some of the dialogs were not showing up. Instead a “ScriptLoadFailedException” was displayed in the JavaScript console:

ScriptLoadFailedException

A brief research turned out this solution… apparently the Microsoft Ajax code has a few quirks with the WebKit browser. This piece of Javascript needs to be included on the page (I added the dojo.ready call to prevent some timing issues on Internet Explorer):


dojo.ready(function () {
Sys.Browser.WebKit = {}; //Safari 3 is considered WebKit
if (navigator.userAgent.indexOf('WebKit/') > -1) {
Sys.Browser.agent = Sys.Browser.WebKit;
Sys.Browser.version = parseFloat(navigator.userAgent.match(/WebKit\/(\d+(\.\d+)?)/)[1]);
Sys.Browser.name = 'WebKit';
}
});

The easiest way to accomplish that is to add it to jscript/sage-common/general.js and redeploy the site. To be a bit cleaner for upgrades, I like to instead create a new file (SSS/js/common.js) and add its path to SageSalesLogixCommon.jsb, which will also cause it to be included in the built sage-common.js when the site is deployed:


<?xml version="1.0" encoding="utf-8"?>
<project path="" name="SageSalesLogixCommon" author="Sage Software"....>
...
<target name="Sage common" file="sage-common\sage-common.js" debug="True"... >
...
<include name="..\SSS\js\common.js" />
</target>
...
<file name="..\SSS\js\common.js" path="" />
</project>


Unable to log in with Internet Explorer – case of the disappearing cookies
Posted By: nicocrm on March 12th, 2012 in General, Saleslogix
No Gravatar


Noticed a strange problem where Internet Explorer would not be able to log into SalesLogix, while Firefox had no problem. On IE the user would enter their username / password and be immediately resent to the login screen. Upon investigation with Fiddler we noticed the cookies were not being sent by IE. Even though the server sent them, they would not “stick”.


It turned out, this was caused by the name of the web server “slx_test”. The underscore is not a legal character in a DNS name, even though Windows lets you enter it as a computer name, so IE does not accept cookies with such a domain. Renaming the server slx-test fixed the problem!


Strange “IndexOutOfRangeException” on test site
Posted By: nicocrm on March 8th, 2012 in Saleslogix
No Gravatar

Out of the blue after adding a few fields to the test site we started getting some “IndexOutOfRangeException” and some type conversion errors. We have the test site on the same server as the production site (not a best practice! But an unfortunate requirement in this case) and it turns out those were caused by the test site connecting to the same memcache server as the production site.

So one good thing to remember – if you are in a position where you need to have 2 sites connecting to different databases on the same server, remember to edit the memcache settings (in web.config) to ensure they point to different ports.