Edgar Maucourant - Expert / Formateur SharePoint

Aller au contenu | Aller au menu | Aller à la recherche

SharePoint 2007

Fil des billets

vendredi 13 février 2009

Windows Update, Framework.Net 3.5 SP1, et moteur de recherche MOSS : Pas Bon !

Bonjour à tous,

Vous l'avez peut-être remarqué, mais Windows Update a modifié la façon d'installer les .Net Framework ces jours-ci. En effet il y a peu encore vous deviez installer le FrameWork 2.0 puis 3.0 puis les SP1 de chaque et ensuite le .Net Framework 3.5 par un installeur à part.

A présent il n'y a qu'une entrée .Net Framework 3.5 SP1 dans WU qui installe les FrameWorks 2.0 SP2, 3.0 SP2 et 3.5 SP1 : wunderbar ! (Comme dirait nos amis d'outre rhin).

Oui mais, il y a un problème connu avec le .Net FrameWork 3.5 SP1 qui empêche l'indexeur du moteur de recherche de MOSS de fonctionner correctement si celui-ci essaie d'indexer le serveur où il se trouve. Ce cas est fréquent pour nous autres consultants qui faisont des machines toute en un, mais aussi pour certains clients qui n'ont qu'un serveur. Du coup plus d'indexation possible et donc plus de recherche :s

Heureusement le problème est connu depuis quelques temps comme en témoigne ce post d'Octobre 2008 (en anglais) :

https://blogs.msdn.com/ronalg/archive/2008/10/27/crawling-issue-with-net-3-5-sp1.aspx

Et la solution aussi !

Elle passe par la modification de la base de registre du serveur, le tout étant expliqué ici (en anglais) :

http://support.microsoft.com/kb/896861/en-us

A noter que cet article de la KB n'est pas réellement rédigé pour corriger ce problème, mais le problème est similaire et la solution fonctionne.

Attention donc à vos prochaines machines toute en un ! Car vous ne pouvez plus installer les Frameworks par WU sans installer le SP1 du 3.5 !

Bon code à tous !

vendredi 23 janvier 2009

Développement d'applis x86 et SharePoint x64 : pas bon !

Bonjour à tous

Après avoir perdu 1 h de mon temps sur un message d'erreur peu éloquent (étonnant non, de la part de SharePoint ?), je vous livre une info qui après coup semble logique mais qui ne m'a pas sauté au yeux au début.

Si vous avez un SharePoint en x64 (64bits) et que vous développez une application Windows ou console pour utiliser le modèle objet de SharePoint, cette application doit aussi tourner en x64 sinon vous ne pourrais pas vous connecter à SharePoint par le modèle objet. L'erreur arrive lors de la connexion à la collection de site en utilisant :

SPSite siteCol = new SPSite("http://urldemacollectiondesite");

Cette ligne renvoie l'erreur : "L'application Web est introuvable à l'adresse http://urldemacollectiondesite, vérifiez patati, patata...). Ce qui n'est pas du tout explicite.

Dans mon cas, après vérification de l'url, des accès de substitution, des différents paramètrages, tout était conforme et mon application aurait du trouver la collection de site.

En réalité, j'avais passé mon application en cible x86 (32 bits) car j'utilisais le composant d'accès à Access (AccessDataSource) qui ne fonctionne pas en x64. En repassant mon application en x64 (je vous passe les détails de l'investigation :p) tout fonctionnait pour SharePoint mais plus pour Access... Grrrrrrr !!!!

Heureusement Access 2007 dispose d'un module d'export très pratique qui m'a permis d'exporter ma base de données sur le serveur SQL qui fait tourner SharePoint, et du coup j'ai pu utiliser le composant d'accès à SQL Server qui lui fonctionne très bien en x64 ! Bon ça m'a pris juste 1h30 -<:o)

Moralité : ne mixez pas les environnements ou evitez autant que possible ! (qui a dit on le savait déjà ?)

Bon code à tous !

mercredi 21 janvier 2009

RadEditor et SharePoint (MOSS) "customisé" attention au DocType

Bonjour à tous,

Comme vous le savez peut-être déjà la société Telerik founi (en remplacement de l'éditeur de contenu fourni par Microsoft) un éditeur de contenu compatible avec plus de navigateurs que l'éditeur standand : RadEditor.

Ce contrôle fabuleux (même dans sa version lite), nécessite cependant que la page en cours utilise un DocType compatible XHTML, sinon les barres d'outils flottantes, le gestionnaire de liens et d'images apparaîtront en dehors de la page ce qui n'est ni pratique, ni esthétique, et encore moins professionnel.

Or les pages master par défaut de SharePoint n'utilisent pas un DocType XHTML mais HTML 4.01, donc si vous placez ce contrôle sur la page sans plus de modifications vous vous heurterez aux problèmes sus-mentionnés (wow qu'est ce que je parle bien !!!). Il est donc important (sinon impératif) que vous modifiez le DocType sur votre (vos) page(s) master.

Pour y arriver rien de plus simple, dans votre page master recherchez la ligne (ou quelque chose d'approchant) :

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

et remplacez la par :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Attention, si votre mise en page est basée sur les CSS, le fait de passer en XHTML peut faire apparaître des défauts qu'il faudra corriger (pour tous les navigateurs...).

Une petite astuce ici : si des défauts apparaissent, avant de tout reprendre assurez vous que le nom de la classe ou de l'identifiant CSS soit bien écrit en respectant la casse. En effet, si une majuscule transfomée en miniscule ne gêne pas HTML 4.01, dans un DocType XHTML la classe ne sera pas du tout appliquée à votre élément ! (Ce qui vous en conviendrez est assez gênant tout de même...)

Morale : passer le plus tôt possible votre DocType en XHTML, cela vous évitera de devoir refaire votre mise en page...

Bon code à tous !

mardi 23 décembre 2008

WSS 4.0 : Tester la compatibilité de votre code maintenant (enfin bientôt !)

Bonjour à tous,

Après un (long) moment d'absence je reviens pour blogger sur cette news quelque peu inquiétante pour tous ceux qui ont fait des views avec du code CAML perso. Le SP2 de WSS et MOSS devrait bientôt sortir (aux dernières nouvelles au mois de février...), il apportera son lot de correctifs et des nouveautés tel que le Pre-Upgrade Checker, un outil vous permettant de tester votre code pour savoir s'il sera compatible avec le futur WSS 4.0 (MOSS 2009/2010 ?). On peut déjà trouver sur la base de connaissance Microsoft quelques infos à ce sujet :

List of all Windows SharePoint Services and SharePoint Server Pre-Upgrade Checker knowledge base articles

A noter donc si on (je) lit correctement que Microsoft mettra l'accent sur le XSLT dans la prochaine version de WSS au détriment de CAML (mais ce n'est que supposition au regard de ces quelques article de la KB). Entre ceci et l'anonce faite par Bill Gate durant sa Keynote à la SharePoint Conférence, il semblerait que pour le développement sur la future plate-forme SharePoint il faudra mettre l'accent sur deux languages par forcement toujours maîtrisé par les développeurs SharePoint à savoir : XSLT et SQL (T-SQL surtout). Tous à vos bouquins / Tutoriaux / Webcasts !!!

Bon code à tous !

dimanche 3 août 2008

L'install de Telerik Moss Editor a fusillé votre site ?

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 !

mardi 1 juillet 2008

VseWSS 1.2 sorties oui mais.... pas en x64 :(

Bonjour à tous,

La pluspart d'entre vous l'on sûrement déjà noté, les VseWSS 1.2 (Visual Studio Extensions for WSS) sont sortis au début de ce mois. C'est une bonne nouvelle car elles apportent le support de Visual Studio 2008 ce qui manquait vraiment jusqu'à présent... Cependant un bémol (et de taille je trouve) vient ternir le tableau, ces extensions ne sont disponibles qu'en version 32 bits ! Exit les plates-formes de dév en x64. Or avec de plus en plus de serveurs disponibles en x64 et tout le buzz autour de cette avancée, beaucoup de clients ont migrés ou vont migrer leur infrastruture... Afin de limiter la casse lors du déploiement il vaut mieux avoir aussi des machines de développement en x64, J'ai donc décidé moi aussi de migrer certaines de mes machines de développement en x64, et là c'est le drame comme dirait l'autre.

Conséquence : Je me passerai des extensions pour le moment au profit d'autres outils disponibles sur CodePlex, mais c'est bien dommage quand même... En espérant que Microsoft sorte rapidement une version x64 mais pour le moment rien n'est annoncé, aller encore un petit effort les gars ! :)

Bon code à tous !

dimanche 17 février 2008

VseWSS 1.1, VseWSS 1.2 et Visual Studio 2008

Pour faire echo à ce post : WebPart SharePoint et Visual Studio 2008 ?, Microsoft vient d'annoncer la release des VseWSS 1.1 lors de l'Office Developers Conference. Au menu, support avancé des solutions et features, corrections de bugs, amélioration de la rapidité du déploiement (IISReset remplacé par un Pool recycle). Des versions localisées (notamment en Français) sont prévues pour le mois de Mars.

Pour ceux qui utilisent déjà Visual Studio 2008 (j'espère que vous êtes nombreux :p) sachez qu'un support de VS2008 sera disponible dans les VseWSS 1.2 prévues pour le mois de Juin 2008. Encore un peu de patience les betas devraient arriver un peu plus tôt :)

Tout l'info sur le blog officiel de la SharePoint Products et Technologies Team : Announcing the Final Release of VSeWSS 1.1 (and the upcoming version 1.2)!

Bon code à tous !

page 2 de 2 -