在Dynamics 2011中破坏了ClientGlobalContext.js.aspx?

时间:2011-12-08 01:46:20

标签: dynamics-crm dynamics-crm-2011

我正在尝试使用jquery / ajax和odata实现自定义Web资源。我遇到了麻烦,最终在我打电话时发现:

var serverUrl = context.getServerUrl();

代码抛出异常。

但是,当我将serverUrl更改为文字网址时,它可以正常工作。然后我发现论坛帖子说我应该手动验证我的.aspx页面,转到https://[org url]//WebResources/ClientGlobalContext.js.aspx验证它是否正常工作。当我这样做时,我收到了警告页面:

The XML page cannot be displayed 
Cannot view XML input using style sheet. Please correct the error and then click the Refresh button, or try again later. 


--------------------------------------------------------------------------------

Invalid at the top level of the document. Error processing resource 'https://[org url]//WebResources/Clien...


document.write('<script type="text/javascript" src="'+'\x26\x2347\x3b_common\x26\x2347\x3bglobal.ashx\x26\x2363\x3bver\x2...

这意味着什么?

2 个答案:

答案 0 :(得分:0)

很难说出代码的背景(双关语),但为什么不这样做呢?

var serverUrl =  Xrm.Page.context.getServerUrl();

(大概是因为你已经定义了自己的上下文var?)

此外,从Rollup 12开始不推荐使用此方法,请参阅此处:http://msdn.microsoft.com/en-us/library/d7d0b052-abca-4f81-9b86-0b9dc5e62a66。您现在可以使用getClientUrl。

答案 1 :(得分:0)

我现在已经晚了但希望这对其他将面临这个问题的人有用。 直到现在,即使使用R15,也有两个 ClientGlobalContext.js.aspx

  1. https:// [org url] /WebResources/ClientGlobalContext.js.aspx (糟糕的)
  2. https:// [org url] / [组织名称] / [发布ID] /WebResources/ClientGlobalContext.js.aspx (好的)
  3. 我不知道为什么存在1.但它会导致许多问题,如:

    • 无法发布或保存信息(您的案例@Steve)。
    • 在具有多个组织的部署中,似乎只为最后部署的组织保存信息,导致 Xrm.Page.context。下的方法将从固定组织返回信息。实际上是地下使用包括在的 ClientGlobalContext.js.aspx 这些常数每个方法:USER_GUID,ORG_LANGUAGE_CODE,ORG_UNIQUE_NAME,SERVER_URL,USER_LANGUAGE_CODE,USER_ROLES,CRM2007_WEBSERVICE_NS,CRM2007_CORETYPES_NS,AUTHENTICATION_TYPE,CURRENT_THEME_TYPE,CURRENT_WEB_THEME,IS_OUTLOOK_CLIENT,IS_OUTLOOK_LAPTOP_CLIENT,IS_OUTLOOK_14_CLIENT ,IS_ONLINE,LOCID_UNRECOGNIZE_DOTC,EDIT_PRELOAD,WEB_SERVER_HOST,WEB_SERVER_PORT,IS_PATHBASEDURLS,LOCID_UNRECOGNIZE_DOTC,EDIT_PRELOAD,WEB_RESOURCE_ORG_VERSION_NUMBER,YAMMER_IS_INSTALLED,YAMMER_IS_CONFIGURED_FOR_ORG,YAMMER_APP_ID,YAMMER_NETWORK_NAME,YAMMER_GROUP_ID,YAMMER_TOKEN_EXPIRED,YAMMER_IS_CONFIGURED_FOR_USER,YAMMER_HAS_CONFIGURE_PRIVILEGE,YAMMER_POST_METHOD。例如,方法 Xrm.Page.context.getUserId()实现为return window.USER_GUID;

    要确保您的网址正确,请按照@Chris

    发布的the link进行操作