Bonjour à tous,

Avant de vous dire comment l'installation du MOSS Editor peut fusiller votre site et surtout comment régler le problème, je voudrais juste faire un rappel pour ceux qui ne connaitraient pas les contrôles Telerik. Ceux sont des contrôles en ASP.Net Ajax (depuis peu) à la norme XHTML 1.1 (un n'est pas compatible), compatibles avec SharePoint et avec tous les grands navigateurs (Firefox, IE, Opera, Safari). On y trouve vraiment des contrôles fantastiques comme des menus très bien faits, des éditeurs de texte puissants, des Combobox avancées, etc... le mieux est d'aller visiter leur site et de regarder les démos c'est assez impréssionant :) -> http://www.telerik.com

Parmis tous ces composants il y en a un qui a particulièrement été développé pour SharePoint : MOSS Editor. Une alternative à l'éditeur de texte fourni dans SharePoint par Microsoft mais compatible avec Safari (sauf liste et indentation, cf la doc). Une version lite (gratuite) regroupant l'intégralité des fonctions de l'éditeur SharePoint standard est dispo ! La version complète quand à elle fournit bien d'autres fonctionnalités très intéressantes.

Intéressons nous maintenant au probème mentionné dans le titre de ce post. Telerik a récement mis à jour ses composants pour ASP.NET Ajax en version Q2, les assemblies sont maintenant en version 2008.2.723.35. Or si vous avez installé ces composants et que vous essayer d'installer le MOSS Editor cela va fusiller votre site avec une erreur très bizarre qui ne donne pas du tout l'origine réelle du problème. Plus aucunes pages ne fonctionnent sur le site (pas même les pages d'application.) et vous vous dîtes que votre lit était finallement si douillet...

Mais ne désespérez point, en réalité le problème et très simple et vient de la modification du fichier web.config lors de l'installation du MOSS Editor. En effet lors de ce processus le programme d'installation modifie le web.config pour ajouter les DLL du MOSS Editor comme Safe de la façon suivante :

<SafeControl Assembly="Telerik.Web.UI, Version=2008.2.723.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" Namespace="Telerik.Web.UI" TypeName="*" Safe="True" />
<SafeControl Assembly="Telerik.Web.UI, Version=2008.2.723.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" Namespace="Telerik.Web.UI.Editor" TypeName="*" Safe="True" />
<SafeControl Assembly="Telerik.Web.UI, Version=2008.2.723.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" Namespace="Telerik.Web.UI.Design" TypeName="*" Safe="True" />
<SafeControl Assembly="Telerik.Web.UI, Version=2008.2.723.20, Culture=neutral, PublicKeyToken=121fae78165ba3d4" Namespace="Telerik.Web.UI.Widgets" TypeName="*" Safe="True" />

Classique me direz-vous, c'est le Delco ! Heu non... c'est la façon de faire, isn't it ? (Je parfais mon anglais :p). 

Oui mais si vous avez déjà installé les versions Q2 de Telerik, certaines DLL sont déjà enregistrées comme sûres. Et il semble que SharePoint n'aime pas du tout, mais alors pas du tout ça, et du coup vous le signifie avec une erreur qui ne signifie rien pour bien vous montrer l'absurdité de la situation :).

Alors ?

Alors que faire pour corriger ce problème ?

Sacré bon dieu va-t-il le dire ???

Oui, oui ca va on y vient, pour une fois que je vous tiens sur un article, je réserve mes effets :)

Donc disais-je pour corriger le problème il faut parler gentillement à SharePoint, et tout d'abord, il vous faut supprimer la première et la troisième ligne (celles comportant les namespaces : Telerik.Web.UI et Telerik.Web.UI.Design). En effet ces lignes ont déjà en principe étaient déclarée en tant que contrôle sûres. Il faut ensuite aussi remplacer la version de DLL (2008.2.723.20) pour les deux autres lignes par 2008.2.723.35. Et Tada ! Votre site refonctionne :) En tout cas pour moi cela a corrigé le problème.

Bien que je n'ai pas fais l'essai, le problème devrait se poser aussi si vous avec les Q1 de Telerik, car la version des DLL est 2008.1.619.35, et posera aussi un problème de conflit. Mais dans ce cas je pense que ce sont les déclarations pour les contrôle Q1 qu'il faudra supprimer (car MOSS Editor nécessite la version 2008.2.723.20 au minimum). Cependant encore une fois je n'ai pas tester ce cas là (ai-je dit que je ne l'avais pas testé ?)

N'hésitez pas à me faire part de vos remarques si cela fonctionne ou ne fonctionne pas chez vous ;). En attendant 'have fun" avec les contrôles Telerik (oui je parfais encore mon anglais ici aussi :)

Bon code à tous !