Jak aktivovat debug mód Sharepointu?

Nestačí Vám standardní cool hlášky Sharepointu?

  • “Object reference not set to an instance of an object” – při volání příkazu STSADM –ADDSOLUTION tento příkaz znamená, že nemáte oprávnění 🙂
  • “File not found”
  • “Access Denied”
  • “Unknown Error”
  • “Unexpected Error has Occured”
  • a mnoho dalších libových hlášek

Pokud chcete vědět více o chybě, je potřeba zapnout ve webové aplikaci podporu ladění, která umožní zobrazení zásobníku, ze kterého je možné vyčíst již mnohem více informací (minimálně pro další googlování).

Otevřete si web.config webové aplikace v poznámkovém bloku, změňte následující hodnoty:

[more]

<SafeMode MaxControls=“200″ CallStack=“false“ …> <!– původní –>
<SafeMode MaxControls=“200″ CallStack=“true“ …> <!– nová hodnota –>

<customErrors mode=“On“ /> <!– původní –>
<customErrors mode=“Off“ /> <!– nová hodnota –>

<compilation batch=“false“ debug=“false“> <!– původní –>
<compilation batch=“true“ debug=“true“> <!– nová hodnota –>

Změny uložte a aktualizujte stránku s chybou v prohlížeči.

Celosvětový web VOLVO CARS je postaven na MOSS 2007, aneb Sharepoint není jen náhrada síťového disku pro ukládání dokumentů

Není to sice žádná velká novinka, ale spousta lidi stále ani netuší, že Sharepoint Server je možné přestavět i na velice silný nástroj pro internetovou prezentaci, počet implementací webových prezentací provozovaných na platformě MOSS neuvěřitelně roste, mezi další se nyní řadí například společnost Volvo:

http://www.volvocars.com/cz/Pages/default.aspx

image

[more]

Pro další podařené příklady implementací není třeba chodit daleko, třeba i naše Škodovka provozuje web na Sharepointu:

http://www.skoda-auto.cz/cze/Pages/home.aspx

image

ČSOB:

http://www.csob.cz/cz/Stranky/default.aspx

image

 

Walmark:

http://www.walmark.eu/cz/Stranky/default.aspx

image

A spousta dalších samozřejmě…

Pozor na ukládání aplikačních parametrů do SPWeb.Properties

Už jsem za svou praxi s vývojem aplikací pro Sharepoint viděl spoustu custom řešení/rozšíření, spousta z nich má však jednu pěknou vlastnost, a to že svá různá nastavení zapisuje do property bagu SPWeb.Properties. Na tom by samo o sobě nebylo nic špatného, špatné je to, že někteří jedinci (i tzv. “specialisti” a velké SW firmy) tam zapisují data typu hesla zcela nešifrovaně v plaintextu, případně v nějaké serializované XML struktuře!!! Není nic jednoduššího, než si otevřít Sharepoint Designer a přes menu Site –> Site Settings –> záložka Parameters si zobrazit kompletní seznam oněch parametrů, heslo si přečíst a použít… Nemyslím, že by byl takový problém alespoň ono heslo zašifrovat pomocí TripleDES /statické klíče mohou být v assembly, ty už běžný správce nebo editor obsahu hledat nebude/.

 

image 

image

BlogEngine.NET Extension: nastavení data vytvoření a popisku galerie

O původním rozšíření galerie pro BlogEngine.NET načítané z Sharepointu se dočtete zde:

http://www.pavelnovotny.info/post/BlogEngineNET-Extension-zobrazeni-lightbox-galerie-obrazku-ziskane-z-Sharepointu-(WSS-MOSS).aspx

 

Nyní jsem projekt malinko upravil tak, aby bylo možné uložit ke každé galerii popisek a její datum vytvoření, protože v předchozí verzi se jako datum vytvoření zobrazoval pouze datum vytvoření samotné knihovny, nešlo tedy alespoň trošku intuitivně nastavit zpětný datum.

Nyní je to možné v nastavení knihovny:

image

image

Zde je možné stejně jako přes menu akcí povolit přístup k vybrané galerii, nastavit datum pořízení + víceřádkový popis galerie. Výsledné zobrazení je možné si prohlédnout zde:

http://www.pavelnovotny.info/SharepointExtensions/Gallery.aspx

 

Aktualizovaná verze zdrojových souborů a instalačního balíku je opět zde:

http://www.pavelnovotny.info/public/BlogEngineExtensions.zip

Error message when you use SharePoint 3.0 Central Administration to try to re-add a content database in Windows SharePoint Services 3.0

Tato chyba se zobrazí v případě pokusu o připojení obsahové databáze Sharepointu na jinou verzi SP, vzhledem k nutnosti provést upgrade schématu není možné tuto akci provést přes webové rozhraní, ale je potřeba tuto databázi připojit ke kolekci webů pomocí příkazu stsadm:

stsadm.exe -o addcontentdb -url http://mujsharepoint/ -databasename Mojedatabaze

Více v KB:

http://support.microsoft.com/kb/926961

Vyšel dlouho očekávaný service pack 2 pro WSS 3.0, MOSS 2007, Office 2007

Vyšel dlouho očekávaný service pack 2 pro WSS 3.0, MOSS 2007, Office 2007.

Více informací o změnách v SP2 naleznete zde:
http://support.microsoft.com/kb/953338
a zde:
http://support.microsoft.com/kb/953334

Ke stažení:

[more]

Aktualizace Windows SharePoint Services 3.0 Service Pack 2 (SP2)
http://www.microsoft.com/downloads/details.aspx?displaylang=cs&FamilyID=79bada82-c13f-44c1-bdc1-d0447337051b

Aktualizace Microsoft Office Servers 2007 Service Pack 2 (SP2)
http://www.microsoft.com/downloads/details.aspx?displaylang=cs&FamilyID=b7816d90-5fc6-4347-89b0-a80deb27a082

Aktualizace Microsoft Office SharePoint Designer 2007 Service Pack 2 (SP2)
http://www.microsoft.com/downloads/details.aspx?FamilyID=88eff285-0b92-45ed-979b-65aa22304dd6&DisplayLang=cs

WSS: zjištění URL adresy Central Administration

Čekal jsem, že objekt SPFarm bude obsahovat nějakou property určující Url adresu centrální administrace WSS, to jsem se bohužel spletl a několik hodin jsem řešil tuto zdánlivě jednoduchou otázku, nakonec jsem přišel na následující funkci:

public static string GetCentralAdminUrl()
{
     SPWebService service = SPFarm.Local.Services.GetValue<SPWebService>("WSS_Administration");
     if (service != null)
     {
          SPAdministrationWebApplication application = service.WebApplications.GetValue<SPAdministrationWebApplication>();
          if (application != null)
               return application.GetResponseUri(SPUrlZone.Default).ToString();
      }
      return null;
}

Snad to ušetří čas i ostatním.

WSS: Rozšíření /zvětšení šířky/ multiple lookup fieldu v new a edit formu javascriptem

Pokud nechcete převádět List Form v Sharepoint Designeru na custom a ztratit tak možnost snadného přidávání/editaci fieldů v daném listu nebo knihovně dokumentů, stačí přidat na konec daného formuláře tento javascript:

[code:js]

<script language=“javascript“ type=“text/javascript“> 
   var inputs = document.getElementsByTagName(„select“);    
   for(var i=0;i<inputs.length;i++)
   {      
      if(inputs[i].id.indexOf(„_SelectCandidate“) >= 0)
         inputs[i].parentNode.style.width = 300;
      if(inputs[i].id.indexOf(„_SelectResult“) >= 0)
         inputs[i].parentNode.style.width = 300;
   }
</script>

[/code]

Ten najde všechny vícenásobné výběry na stránce a nastaví jim šířku na 300px. Každou lepší variantu vítám, toto bylo nejrychlejší řešení co mě napadlo 🙂

Výsledek: