Showing posts with label sharepoint. Show all posts
Showing posts with label sharepoint. Show all posts

Saturday, January 8, 2011

Common config for Sharepoint 2010




As always when the new SharePoint installation is deployed I tend to think about it's framework. As we know SharePoint is compiled to work with .NET framework 3.5, actually it works best with .NET 2.0 and I found myself doing hacks, from time to time, to make it work with 3.5 library. And I don't get it when people say that SharePoint 2010 works with .NET framework 3.5 Service Pack 1, it is so misleading. The truth is that SharePoint 2010 is compiled against .NET in version 3.5, and this version of ASP.NET framework is based on 2.0 runtime, it is because .NET version 3.0 and 3.5 did not change the runtime. Why can't I use framework 4.0, why people at Microsoft thought It would be great not to allowed SharePoint, to work with .NET 4.0 libraries? I can only guess that they wanted to realese new version as soon as possible, and didn't want to experiment with a new runtime, that probably did not exist when they started the project (or what is more probable it was unstable and no one knew if it is going to be stable on time). The result of those actions is my headacke, each time when I try to create architecture in order to overcome framework problem. In example I have to host WF4.0 workflows as WCF services in order to use it.

The next thing I do not like in SharePoint 2010 is it's configuration. Everything is done through XML, and there is no fluent, that I am aware of to make it simpler. In example, when I work in my development environment, and I have a fresh SharePoint installation I look at the web to find how to turn on error logging, that are developer friendly. As always it takes time to find in on the web and modify web.config.


<SharePoint>
<SafeMode CallStack="true" ...>
</SharePoint>
<system.web>
<customErrors mode="off">
</system.web>


Why can't you Microsoft make it more friendly?

Sharepoint 2010 on Windows 7




I finally did it! I was working on my mac dual boot (Leopard, Windows 7) box for a long time. Long time ago, I've chosen a Windows 7 32 bit operating system, instead of 64. I did it because when Microsoft released Windows 7 on 64 architecture I was struggling to do anything on 64 bit configuration (on my personal laptop), and I didn't want to face this same problems on my stationary computer at home. By problems (ehm... challenges, as my mentor once said) I mean majority of 3'party applications, or even applications written by Microsoft did not work on a 64 bit Windows 7. Those were a tools that everyone (developer) uses like SQL Server Management Studio Express, Remote Desktop, ... until updates were written and new version of products were released I spent many nights trying to find a tool that allowed me to do my job, that would be easily done by a tool that I knew, but was not willing to run on Windows 7 64.

Recently I find more (but still not many of them) applications that work only on 64 bit architecture. One of them in SharePoint server, and SharePoint foundation 2010. By not working on 32 bit architecture I mean that you can not even run the installer, It will simply not work. What you can do if you are desperate - you can virtualize the SharePoint image on your 32 bit computer. But it requires a different tool then Microsoft Virtual Server. You need a tool that can emulate the 64 bit architecture on top of 32 bit one (like VMWare Server, witch is also free). Some (I don't know any tool that does not) of emulating tools, like VMWare Server require you to have a special mother board that allowed such configuration (I mean that allowed emulation of 64 bit system on 32 bit one). Architectural and bits problems, It all always reminds me about old time programming for Windows, Petzold in his excellent book, spent tremendous work trying to explain to people why, for windows programmer, architecture mater. It's amazing that this book was released in 1998 (my version is from year 2001, and still keeps it's price) by current developers are facing this same challenges.

I finally reinstalled my windows system to take advantage of the 64 bit architecture. Unfortunately still I faced some problems in SharePoint installation. The normal SherePoint Server and SharePoint Foundation installer wont work on other operating system then Windows Server 2008. One needs to follow instructions. I would add some comments to this documentation. The command that needs to be triggered to unpack SharePoint Foundation installation is different:

SharePointFoundation.exe /extract:c:\SharePointFiles

And yes, you DON'T need to copy installation to following location:

C:\SharePointFiles

You can do it wherever you want.

The following command didn't work for me, and I didn't need it to install SharePoint:

c:\SharePointFiles\PrerequisiteInstallerFiles\FilterPack\FilterPack.msi

There error I received when trying to run this command was exactly this same as when trying to run default SharePoint installer - it requires Microsoft Server 2008.

If you installed Visual Studio 2010 you DON'T need to install following dependencies (even when you install SharePoint Foundations):

Microsoft Sync Framework
SQL Server Native Client
Chart Controls
SQL Server Analysis Services - ADOMD.Net


You need to install following dependencies:

Windows Identity Foundation (I got mine from here, for Windows 7 64bit version 6.1)


You DON'T need to fire up this instruction

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;
IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;
IIS-ApplicationDevelopment;IIS-ASPNET;IIS-NetFxExtensibility;
IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-HealthAndDiagnostics;
IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-ManagementScriptingTools;
IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-DigestAuthentication;
IIS-RequestFiltering;IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;
IIS-WebServerManagementTools;IIS-ManagementConsole;IIS-IIS6ManagementCompatibility;
IIS-Metabase;IIS-WMICompatibility;WAS-WindowsActivationService;WAS-ProcessModel;
WAS-NetFxEnvironment;WAS-ConfigurationAPI;WCF-HTTP-Activation;
WCF-NonHTTP-Activation

Just be sure to go to ControlPanel->Programs->IIS and enable all the features underneath IIS, that are showed in the documentation (I mean the SharePoint installation instruction for Windows 7 mentioned before).