woensdag 2 januari 2013

Help! Mijn web part doet het niet! Een checklist voor het debuggen...

Komen de volgende foutmeldingen bekend voor als je een web part werkend wilt krijgen?

"A Web Part or Web Form Control on this Page cannot be displayed or imported. The type could not be found or it is not registered as safe"

"Cannot import web part"

De volgende checklist kan je misschien met de oorzaak van het probleem helpen:

1. Controleer of het betreffende web part is opgenomen in de Web Part Gallery

2. Controleer of de xml in de Web Part Gallery (View XML) overeen komt met de .webpart XML in je solution

3. Controleer de assembly paden in je .webpart files:

Deze paden zijn case sensitive, aaa is anders dan AAA.
Is het Public Key Token in het Assembly Path opgenomen?

4. Controleer de inhoud van de wsp solution file, zitten alle onderdelen erin?

De wsp solution file is een zip-file (of cab file) die je kunt renamen in .cab zodat je de inoud ervan kunt controleren.

5. Na een update van de Web Part solution (retract, delete, add, deploy) worden:
- Web Part Gallery bijgewerkt
- Web Parts in pages updated

Als dat niet het geval is:
- Verwijder en herinstalleer de solution dan handmatig (retract, delete)
- Verwijder de web parts uit de Web Part Gallery
- Disable de bijbehorende feature.

Daarna:
- Handmatig de solution weer installeren (add, deploy)
- Eventueel (als het Web Part nog steeds niet werkt): deactiveer de bijbehorende feature, verwijder de Web Parts handmatig uit de Gallery, en activeer de feature weer zodat de Web Part Gallery weer wordt gevuld.

6. Is de bijbehorende DLL in de GAC opgenomen? Met de juiste naam en versie?

Voor de GAC, zie de commandline tool gacutil of de map "C:\WINDOWS\assembly".
Let op: versienummers als "1.0.*" werken soms niet, gebruik liever de volledige versie nummering, bijvoorbeeld: "1.0.0.0".

7. Controleer of het betreffende web part als "safe" is aangemerkt in de web.config.

Deze wordt aangepast zodra de solution wordt deployed, in de SafeControls sectie. Controleer hier ook de paden, het versienummer en het PublicKeyToken.

8. Controleer de SharePoint logfiles "C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\logs" op fouten.

9. Kijk kritisch naar de programmacode van het betreffende web part:
- Controleer de programmacode op de juiste class declaraties (naamgeving) en het gebruik van "public".
- Fouten als het aanpassen van properties die niet bestaan, etc..

10. En af en toe een extra iisreset na installatie kan ook helpen... ;)

Bij het debuggen van web parts is het belangrijk om nauwkeurig te zijn: een foutje zit in een klein hoekje en SharePoint is erg kritisch.

Geen opmerkingen:

Een reactie posten