Tuesday, November 24, 2009

Deploy Office Web apps on SharePoint 2010

Office Web Apps is the online companion to Word, Excel, PowerPoint and OneNote applications that allows users to access documents from virtually anywhere. Users can view, share, and work on documents with others online across personal computers, mobile phones, and the Web. Office Web Apps is available to users through Windows Live and to business customers with Microsoft Office 2010 volume licensing and document management solutions based on Microsoft SharePoint Server 2010.

To install Office Web Apps on your SharePoint Server 2010, read the following document for steps on how to deploy it. After deploying it to your SharePoint Server, users accessing your sites will be able to view, edit, and share documents from the web without the need to the Office client.


Other resources:

Integrated Windows Authentication with Claims Based Authentication in SharePoint 2010 error (IE)

Hi

In case you have a problem "signing as a different user" in SharePoint 2010 Web Application that uses "Claims Based Authentication" you will need to turn off the "Integrated Windows Authentication" option in Internet Explorer (As shown below). Without doing this, you wont be able to sign is as a different user.

This does not apply to other browsers and it is an IE issue.

Sunday, November 22, 2009

SharePoint Server 2010 Beta Key

In case you can’t find it on download page after registration page:

SharePoint Server 2010 Beta(Enterprise Client Access License features) product key:

PKXTJ-DCM9D-6MM3V-G86P8-MJ8CY

BV7VC-RMR6B-26P6Y-BTQDG-DX2KQ

Both keys can be used. Feel free to post it elsewhere!

Friday, November 20, 2009

Enabling Taxonomy features on a Site Collection created using "Blank Site" template

When you create a new site collection in SharePoint 2010 using the "Blank Site" or "STS#1" site template, the Taxonomy feature (and possibly other features) will not be activated by default. It appears that Microsoft does not staple any features in the farm with the blank site template. This means, there is no way to activate the Taxonomy features in a blank site using the SharePoint UI because the Taxonomy features are hidden.

To activate the features, run the following stsadm command from the command prompt to enable the feature

stsadm -o activatefeature -id "73EF14B1-13A9-416b-A9B5-ECECA2B0604C" -URL "http://siteurl/sitecollection"

This will enable the "TaxonomyFieldAdded" feature on the team site which should bring the "Term Store Management" link in the site administration section of a site. This will also enable you to add the Managed Metada column to your lists and content types.

On a side note, the following features are related to the taxonomy in SharePoint
TaxonomyFeatureStapler
TaxonomyFieldAdded
TaxonomyTenantAdminStapler
TaxonomyTenantAdmin
TaxonomyTimerJobs

All the above features are "hidden" which means that you can't enable them from the SharePoint UI

Wednesday, November 18, 2009

FileNotFoundException error when installing SharePoint 2010 Beta





On a Windows Server 2008 R2 installation which passed all the prerequisites, you might get the following error :


11/17/2009 16:39:32 9 ERR Exception: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.IdentityModel, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
File name: 'Microsoft.IdentityModel, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
at Microsoft.SharePoint.Administration.SPFarm.CurrentUserIsAdministrator(Boolean allowContentApplicationAccess)
at Microsoft.SharePoint.Administration.SPConfigurationDatabase.Microsoft.SharePoint.Administration.ISPPersistedStoreProvider.DoesCurrentUserHaveWritePermission(SPPersistedObject persistedObject)
at Microsoft.SharePoint.Administration.SPPersistedObject.BaseUpdate()
at Microsoft.SharePoint.Administration.SPFarm.Update()
at Microsoft.SharePoint.Administration.SPConfigurationDatabase.RegisterDefaultDatabaseServices(SqlConnectionStringBuilder connectionString)
at Microsoft.SharePoint.Administration.SPConfigurationDatabase.Provision(SqlConnectionStringBuilder connectionString)
at Microsoft.SharePoint.Administration.SPFarm.Create(SqlConnectionStringBuilder configurationDatabase, SqlConnectionStringBuilder administrationContentDatabase, IdentityType identityType, String farmUser, SecureString farmPassword, SecureString masterPassphrase)
at Microsoft.SharePoint.Administration.SPFarm.Create(SqlConnectionStringBuilder configurationDatabase, SqlConnectionStringBuilder administrationContentDatabase, String farmUser, SecureString farmPassword, SecureString masterPassphrase)
at Microsoft.SharePoint.PostSetupConfiguration.ConfigurationDatabaseTask.CreateOrConnectConfigDb()
at Microsoft.SharePoint.PostSetupConfiguration.ConfigurationDatabaseTask.Run()
at Microsoft.SharePoint.PostSetupConfiguration.TaskThread.ExecuteTask()WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].


To resolve the problem you will need to download the following Geneva Framework version that had the required DLL.





Installing SharePoint 2010 Beta

Since SharePoint 2010 has been made available for MSDN/TechNet subscriber now, here’re some steps you would like to follow to get a successful installation. But keep in mind: This beta is not supported and you CANNOT upgrade the installation to RTM when it’s released. This Beta should only be used for evaluation purpose.


Follow these steps to install SharePoint Foundation 2010 and SharePoint Server 2010 Beta products. The process is split in two parts. The first part will install SharePoint Foundation 2010 Beta, and the second part will install SharePoint Server 2010 Beta. You can either install SharePoint Foundation 2010 or Start by installing SharePoint Server 2010.

before you start the installation, you will need the following pre-requisites

  • .Net Framework 3.5 with SP1 installed
  • Geneva Framework (Windows Identity Foundation) (download here)\
  • SQL Server 2005 SP3 and CU3 OR Server 2008 SP1 and CU2
  • Install WCF FIX: A hotfix that provides a method to support the token authentication without transport security or message encryption in WCF is available for the .NET Framework 3.5 SP1 (Windows Server 2008, Windows Server 2008 R2 – link not activated yet) . Please note the 2008 fix also applies to Vista, while the 2008 R2 fix also applies to Windows 7.
    If you don't have this fix installed, you will get "Unrecognized attribute 'allowInsecureTransport'" error in ULS log. And most of the service applications will not run properly
  • Create a special AD account that will be used as the SharePoint Managed Account in your farm. Refer to step 3 of the following post for how to create this account.
After you have applied the fixes and updates
  • Run the pre-requisite tool for SharePoint foundation 2010
  • After installing the binaries, run the configuration wizard. Setup the farm using complete farm installation. Use standalone installation only on Windows 7/Vista for dev purposes.
  • Go to Central Administration and run the "Configuration Wizards" to setup the service applications. Use a special user for the SharePoint Managed Account for services and web applications in the farm
  • Enable Developer Dashboard and turn to OnDemand for troubleshooting page performance issues. It can be done by STSADM or SharePoint 2010 Management Shell (Windows PowerShell).
    STSADM: stsadm -o setproperty -pn developer-dashboard -pv OnDemand
    Windows PowerShell:
    $svc=[Microsoft.SharePoint.Administration.SPWebService]::ContentService
    $ddsetting=$svc.DeveloperDashboardSettings
    $ddsetting.DisplayLevel=[Microsoft.SharePoint.Administration.SPDeveloperDashboardLevel]::OnDemand
    $ddsetting.Update()

After installing this, you will have SharePoint Foundation 2010/SharePoint Server 2010 installed.

External Links

Friday, October 30, 2009

Taxonomy Services, Managed Metadata, and Managed keywords

SharePoint 2010 comes with a new services that provides the functionality to tag content types with metadata and keywords. I will be posting more information about how to manage taxonomies within SharePoint 2010 in upcoming posts, for now, i will explain some keywords that we will see a lot in SharePoint 2010.

Taxonomy is a hierarchal tree of Values
Term Store is a DB containing different taxonomies
Term Set is a section in the term store that contains individual terms.
Term is a node in the taxonomy tree with an ID and many text labels
Tagging is the act of linking an item to a node or multiple nodes in the taxonomy tree.
Groups are security boundaries within the term store and above the term set.
Keywords are the actual links (reference) to a node in the taxonomy tree.
Managed Metadata Column is a new column type that can be added to content types
Managed Keyword Column is a new column type that can be added to any content type

At this point, i'm not sure what is the difference between the Managed keywords, and Managed Metadata.

These can be managed in SharePoint 2010 using the Term Management Tool. You will find this in Central Administration --> Manage Service Applications. The tool will allow administrators to publish, Terms, Term Sets, and importing them.

It is possible to tag documents within a desktop Rich Client such as MS Office Word.

---------------------------------------------

More Links

Tuesday, October 20, 2009

SharePoint 2010 UI Improvements

SharePoint 2010 has a lot of improvements in the UI which impacts the usability of the WCM in SharePoint in a positive way.

Some of the enhancements are:

  • Cleaner Markup: The Microsoft SharePoint Foundation (MSF) controls are no longer table based, and all the CSS classes were re-factored and cleaned up.
  • SharePoint 2010 is XHTML compliant, and also supports WCAG 2.0.
  • Reduced Postbacks / Page refreshes.
  • Server Ribbon, which copies the functionality of the ribbon in Office applications.

Metadata in SharePoint 2010

SharePoint 2010 comes with a huge taxonomy API, put into the Microsoft.Taxonomy.dll assembly.
With SP 2010, it is possible to tag items and pages with keywords from a term store, which then can be leveraged through the search solutions, or navigation solutions.

This will provide SharePoint with another method to visualize the data, together with the folder structure (i.e. SPSites, SPWeb, SPList approach).


SharePoint 2010 Developers Center


The SharePoint 2010 Developer Center is now live on MSDN. The site contains useful learning modules about SharePoint 2010. The site includes modules for getting started developing in SharePoint 2010.






Welcome to SharePoint 2010

Beta version of SharePoint 2010 will be released in November as announced by Steve Ballmer and Jeff Teper today at the SharePoint 2009 Conference.


The new version of SharePoint Office Server has a lot of new enhancements in regards to content management and collaboration. Some of the interesting new features are:
  • Social Feedback and Organization
  • Enterprise Metadata
  • Web Publishing including Digital Asset Management
  • Governance and Records Management
  • Development on Windows 7
and many more


For more details about SharePoint 2010, visit the SharePoint Team blog

Monday, July 13, 2009

Updating SPGroup owner

Hi

To update the owner of the group, you simply set the Owner property of the SPGroup object to a SPMember (which can be a SPUser or an SPGroup).

SPGroup spGroup = currentWeb.SiteGroups["GroupName"];
spGroup1.Owner = spGroup2;
sp.Group1.Update();

I was trying to update the owner of the SharePoint group through the API using the code above, but unfortunately that did not work.

So i did what most of the developers do, google it (i mean bing it). However i didn't find an answer to my question, so i tried to change my code and debug it until i found the solution.

For some reason, i had to get the reference to the SharePoint group from the root web of the site collection, rather than getting it from the web SiteGroups property.

so to fix the problem, i changed the above code to:
SPGroup spGroup = currentWeb.Site.RootWeb.SiteGroups["GroupName"];
spGroup1.Owner = spGroup2;
sp.Group1.Update();

I hope you will find this useful.




Tuesday, July 7, 2009

University of Auckland - Virtual Medical Centre

Machinima Podcast by the ARCH Network: http://www.archvirtual.com

Second Life Tour led project :
Scott Diener, Ph.D.
Associate Director, IT Services
Academic and Collaborative Technologies
The University of Auckland


Anonymous access in SharePoint

Anonymous access in SharePoint can be configured on the lists level. This means that anonymous access can be setup to individual lists rather than an entire SharePoint site. It can be also turned on for an entire web site.

The anonymous access is enabled from the web application level first. ISA server (if available) will be also configured.

After a web application has been setup for anonymous access, individual web sites can be configured to enable anonymous access on them. By default, sites have their anonymous access turned off, and must be enabled by a site admin before non-authenticated users can access it. As mentioned earlier, this can also be set on individual lists and will be accessible by a direct link to the list.

MySite and Application pages
Unfortunately, with MOSS 2007, MySites cannot be accessible by anonymous users, and that’s because of the way that has been setup. To make them accessible to the outside users, some workarounds are needed. However, sub sites within MySite can be made accessible to outside users, but not the root MySite.

The Application pages (pages in the _Layouts folder) are also not accessible to the outside users. This includes the search default page. It is possible to solve these problems with some workarounds that involves custom developments.

Wednesday, May 20, 2009

Getting a SoapServerException after installing MOSS 2007 Service Pack 2

It appears that Service Pack 2 for MOSS 2007 has made some changes to the SharePoint Web Services in the way that it handles errors.

Today we noticed that the following error was being thrown from one of the List
ServicesException of type 'Microsoft.SharePoint.SoapServer.SoapServerException' was thrown.
Before the Service pack was installed the exception was encapsulated within the XML returned by the method. After installing Service Pack 2 the method throws the exception and it must be caught by a try and catch statement.

This is how we used to handle the error

Service.Lists listsProxy = new Service.Lists();
listsProxy.Credentials = new NetworkCredential(sUser, sPassword, sDomain);
XmlNode ndReturn = listsProxy.UpdateListItems("ListName", xmlQuery);
if (ndReturn.InnerText.Contains("0x81020089")) {
return false;
}
return true

after applying the Service Pack, the code needed to be changed to

Service.Lists listsProxy = new Service.Lists();
listsProxy.Credentials = new NetworkCredential(sUser, sPassword, sDomain);
try {
XmlNode ndReturn = listsProxy.UpdateListItems("ListName", xmlQuery);
catch(Exception ex){
// do something
}
return true

Hope this helps

Wednesday, May 13, 2009

Geneva now supports SharePoint 2007

Geneva Team released beta 2 of the server and the framework. In the list of new features is supporting SharePoint 2007. This means that SharePoint 2007 could potentially connect to a STS server and be a Claim Based application.

http://blogs.msdn.com/card/archive/2009/05/12/what-s-new-in-geneva-beta-2.aspx

SP2 for MOSS was released a while ago, and in the enhancements was a better integration between client applications and FBA for SharePoint.


Monday, April 27, 2009

SSRS Web Services in SharePoint Integrated Mode Example

Hi all

We have been lately trying to get Reporting Services working with our SharePoint and so far it is playing nicely.
I have managed to get together a piece of code that will load a report template that is stored in SharePoint site and render the report in a browser. Well, I found the code in the description of the "Render" method in MSDN Documentations.

Here is a list of links that might be useful to read:
The below code is
You will have to add web references to the ReportExecution2005.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ReportingServiceWebServicesTest.CecilAdmin08ReportExecution2005;

namespace ReportingServiceWebServicesTest
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ReportExecutionService rs = new ReportExecutionService();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;

// Render arguments
byte[] result = null;
string reportPath = "/reportingservices/Reports/Report1.rdl";
string format = "HTML4.0";
string historyID = null;
ParameterValue[] parameters = new ParameterValue[2];

string encoding;
string mimeType;
string extension;
Warning[] warnings = null;
string[] streamIDs = null;

ExecutionInfo execInfo = new ExecutionInfo();
ExecutionHeader execHeader = new ExecutionHeader();

rs.ExecutionHeaderValue = execHeader;

execInfo = rs.LoadReport(reportPath, historyID);

parameters[0] = new ParameterValue();
parameters[0].Name = "param1";
parameters[0].Value = "2";

parameters[1] = new ParameterValue();
parameters[1].Name = "param2";
parameters[1].Value = "5";


rs.SetExecutionParameters(parameters, "en-us");
String SessionId = rs.ExecutionHeaderValue.ExecutionID;

result = rs.Render(format, null, out extension, out encoding, out mimeType, out warnings, out streamIDs);

Response.ClearContent();
Response.AppendHeader("content-length", result.Length.ToString());
//Response.ContentType = "application/pdf";
Response.BinaryWrite(result);
Response.Flush();
Response.Close();
}
}
}

Wednesday, April 22, 2009

SharePoint site usage report or reports

SharePoint offers a way for web sites owners to view some statisticts about who is visiting thier site, which pages were accessed, and who is refering to thier site. These are called "Site Usage Reports" or "Site Usage Report" if you havn't enabled the MOSS Standard site features.

All the documentations that describe the process of enabling the "Site Usage Reports" fail to mention that you need to enable the "Office SharePoint Server Standard Site features" on the site to get the advanced statistics.

You will need to enable this feature so you can display some more advanced statistics about the site, as shown in the picture.

It took me a while to figure out why some of my sites were displaying these advanced reports and some weren't.

The advanced reports page has the following url:
~/_layouts/SpUsageSite.aspx
while the normal usage reports has
~/_layouts/UsageDetails.aspx

At the moment, I'm having a problem with displaying the data in the advanced usage reports, however, the normal reports succeeds in displaying them.

References:

Monday, April 20, 2009

SP2 for Office products due to be released at end of this month

Microsoft announced that the Office SP2 will be released on the 28th of April 20009. The Service pack will include new updates to office products including SharePoint.

http://blogs.technet.com/office_sustained_engineering/archive/2009/04/16/service-pack-2-for-the-2007-microsoft-office-system-due-to-ship-april-28th.aspx

The interesting bits to SharePoint were the following:

    version of SharePoint and provides feedback and best practice recommendations on your current environment.
      SP2 offers support for a broader range of Web browsers.
        Substantial improvements to Forms-based authentication.

        I wonder what is the FBA improvements! I would love to see any "claims based authentication" components in the improvements. Can't think of anything else.


        Saturday, April 18, 2009

        SharePoint Server 2010, no more "14"

        So, in case you haven't heard yet, Microsoft dropped the "14" from the next version of SharePoint Server. Yes, there is no "Office" in the name. Microsoft also dropped the word "Office" from SharePoint and therefor, MOSS is no longer an acronym to SharePoint.

        You may ask, what about WSS? Microsoft says, that there will be a new version of WSS (v4), and they working on it.

        For more info about this read Microsoft's official post here

        Thursday, April 2, 2009

        Navigation Menu in Sharepoint corrupt

        If you get the following error:

        "The page has been modified by another author on ..."


        when modifying the SharePoint Site Navigation, then it is probably because of a corrupted heading node. If you find the target URL for the heading set to something like "/_layouts/viewlsts.aspx?BaseType=0?BaseType=0?BaseType=0?BaseType=0" then the heading is corrupted.

        To fix the problem, you will basically have to remove them, and the header either manually, or using the list settings.

        This is a known bug and allot of people have been experiencing it.

        Refrences:

        Thursday, March 26, 2009

        How to include your DLL files into the final WSP file

        Often developers reference external DLLs into their VS projects when developing application in Visual Studio. When a developers use the WSPBuilder or the VSeWSS to build their SharePoint projects, they can include the referenced DLLS in the WSP file.

        To include/exclude the DLLs, view the properties of the referenced DLL in your VS project, and from the properties window, change the "Copy to local" property to "True" if you would like to include the DLL, or "False" to skip it. If the DLL file gets copied into the "bin" folder when building the project, that file will be included in your final WSP file.

        Note that you will run into problems when installing/uninstalling the WSP files that share the same DLL file on SharePoint. The DLL file will be removed from the GAC if one of the solutions were uninstalled. SharePoint does not keep a count of the number of dependant solutions. It would have been good if SharePoint could keep track of the number of solutions that depend on the DLL files in GAC.

        Monday, March 23, 2009

        Telerik Editor Vs. TinyMCE with SharePoint

        Hi Everyone,

        Today i managed to implement TinyMCE Editor with MOSS2007 using the instructions in these articles:

        and found out some pros and cons between them and would like to share them.

        Pros for using the Telerik editor are:
        Telerik integrates well with the SharePoint for finding files within the SP lists.

        Cons for using Telerik:
        You need to activate the telerik feature per web in order for it to appear which might be a long process if you have a large number of already provisioned webs.

        Pros for using TinyMCE:
        Open Source, and easier to configure

        Cons for using TinyMCE:
        It is harder to integrate with SP file system. MCFileManager is needed to intgrate it with SP lists.


        Thursday, March 19, 2009

        My First post

        Hey everybody,
        I will hopefully keep this updated as much as possible.

        I will be posting some of the challenges i face during my work, and i hope you will find this helpful.