Customizing MySite in MOSS 2007

Support case volumes coming in for MOSS 2007 is huge. When we try and help customers to find answers to complex problems/questions, many a times we end up learning great stuffs & things that sometime make us yell “Wow, it’s amazing stuff man!!”. Well, this was one of such “case” and I thought I’d share this out.

The requirement was as simple as it could be. Customizing MySite in MOSS 2007. Well, that’s fairly simple I though! And immediately had the following questions bugging me:

1. We cannot create a custom site definition for MySite as the template ID is hard coded in the source! So, is there any other way?

2. Well if that’s not possible, can I modify the SPSPERS folder? No way!

3. Would creating a custom master page help? Well, it could have, but that requires laying hands on OOB files which is owned by Microsoft – so don’t do it at any cost J

Feature the savior

Thankfully, we have this very useful and new feature in MOSS/WSS called Features. It’s a new innovation that allows us to switch on a particular stuff on different scopes (farm, web, site). With a little help from SharePoint API’s & carefully designing a feature.xml & element.xml file, I was finally able to get a solution ready that works like charm! Not to forget, I had to hit my head hard against a concrete wall before I could reach there. Hopefully, this write up will save time for most of you who might think of customizing MySite in MOSS 2007.

First thing first – create a custom master page

This was very simple for me. I just had to copy the default.master page file into a folder and write the text “y0 man! MOSS 2007 feature rocks!” sentence within the <BODY> tag. Obviously, this is something you wouldn’t call as customization, but in a way it is – you know what I mean? J

The default.master page found under the TEMPLATE\GLOBAL folder structure under 12 hive is the master page used by MySite by default. I am going to try to be a bit more visually descriptive in my posts, so below is a screenshot:

Grab a copy of this file and put in another folder where you would also be putting your feature files soon. Customize whatever you want in that file. When I say this, I assume you know what you are doing J  Once you do that and believe you have the master page you want, proceed further.

 

Do I need to do something with Visual Studio 2005 at all?

 

Yes, you have to. You need to create a new class library in Visual Studio 2005. Add reference to Microsoft.SharePoint.dll (this is actually displayed as Windows® SharePoint® Services). Add a using directive to both Microsoft.SharePoint & Microsoft.SharePoint.Administration namespaces. And derive your main class from SPFeatureReceiver. I used the below code for the specific case I worked on…

 

using System;

using System.Diagnostics;

using System.Collections.Generic;

using System.Text;

using Microsoft.SharePoint;

using Microsoft.SharePoint.Administration;

namespace MySiteFeatureStaple

{

    public class MySiteFeatureStaple : SPFeatureReceiver

    {

        public override void FeatureInstalled(SPFeatureReceiverProperties properties)

        {

            //throw new Exception("The method or operation is not implemented.");

        }

        public override void FeatureUninstalling(SPFeatureReceiverProperties properties)

        {

            //throw new Exception("The method or operation is not implemented.");

        }

        public override void FeatureActivated(SPFeatureReceiverProperties properties)

        {

            SPSecurity.RunWithElevatedPrivileges(delegate()

            {

                EventLog eventlog = new EventLog();

                eventlog.Source = "MySiteFeatureStaple";

                eventlog.WriteEntry("Starting Activation of the MySite Master Page Switcher Feature");

                try

                {

                    SPSite mysite = properties.Feature.Parent as SPSite;

                    SPWeb myweb = mysite.RootWeb;

                    if (myweb.WebTemplate == "SPSPERS")

                    {

                        using (myweb)

                        {

                            myweb.Description = "MySite :: " + DateTime.Now.ToShortDateString();

                            if (myweb.MasterUrl.Contains("default.master"))

                            {

                                myweb.MasterUrl = myweb.MasterUrl.Replace("default.master", "sridhar.master");

                                myweb.ApplyTheme("MyReflector");

                            }

                            myweb.Update();

                            eventlog.WriteEntry("Found site using 'SPSPERS' template & updated it with the custom master page");

                        }

                    }

                    if (myweb.WebTemplate == "SPSMSITEHOST")

                    {

                        using (myweb)

                        {

                            myweb.Description = "MySite :: " + DateTime.Now.ToShortDateString();

                            if (myweb.MasterUrl.Contains("default.master"))

                            {

                                myweb.MasterUrl = myweb.MasterUrl.Replace("default.master", "sridhar.master");

                                myweb.ApplyTheme("MyReflector");

                            }

                            myweb.Update();

      eventlog.WriteEntry("Found site using 'SPSMSITEHOST' template & updated it with the custom master page");

                        }

                    }

                }

                catch (Exception e)

                {

        eventlog.WriteEntry(String.Format("Error activating MySite master page switcher feature {0} : ", e.Message));

                }

            });

        }

        public override void FeatureDeactivating(SPFeatureReceiverProperties properties)

        {

            SPSecurity.RunWithElevatedPrivileges(delegate()

            {

                EventLog eventlog = new EventLog();

                eventlog.Source = "MySiteFeatureStaple";

                eventlog.WriteEntry("Starting De-activation of the MySite Master Page Switcher Feature");

                try

                {

                    SPSite mysite = properties.Feature.Parent as SPSite;

                    SPWeb myweb = mysite.RootWeb;

                    if (myweb.WebTemplate == "SPSPERS")

                    {

                        using (myweb)

                        {

                            if (myweb.MasterUrl.Contains("sridhar.master"))

                            {

                                myweb.MasterUrl = myweb.MasterUrl.Replace("sridhar.master", "default.master");

                                myweb.ApplyTheme("none");

                            }

                            myweb.Update();

             eventlog.WriteEntry("Removed custom master page from site using 'SPSPERS' template");

                        }

                    }

                    if (myweb.WebTemplate == "SPSMSITEHOST")

                    {

                        using (myweb)

                        {

                            if (myweb.MasterUrl.Contains("sridhar.master"))

                            {

                                myweb.MasterUrl = myweb.MasterUrl.Replace("sridhar.master", "default.master");

                                myweb.ApplyTheme("none");

                            }

                            myweb.Update();

                            eventlog.WriteEntry("Removed custom master page from site using 'SPSMSITEHOST' template");

                        }

                    }

                }

                catch (Exception e)

                {

                    eventlog.WriteEntry(String.Format("Error de-activating MySite master page switcher feature {0} : ", e.Message));

                }

            });

        }

    }

}

 

I don’t really think the RunWithElevatedPrivileges() call is required, however…. J

 

There are specific aspects that need your attention on the above code. As you might have seen, SPFeatureReceiver is an abstract class and so we have implemented all the abstract methods in it irrespective of whether we are using them or not. The code specifically “looks for” MySite and swaps the default.master page with sridhar.master page. As I said, I tried this out for a customer’s scenario. You can change this to suit your needs. I’ve also used ApplyTheme() method to apply a custom theme (wondering how to do this? Here you go) to MySite. Additionally, as any good software programmer does, I’ve added few lines for logging stuffs regarding what’s happening or if something has gone wrong.

 

Compile this project. Install the assembly file into GAC.

 

We are not done yet – most important part is to create the feature we need

 

So, we have our DLL that will perform the logic of checking whether a site is a MySite or not and if so, apply a custom master page and a custom theme to it. Now, we need to create a feature to be able to install/uninstall & activate/deactivate it at will.

 

There’s no hard & fast rule in creating a feature.xml & element.xml file. Just pop open a notepad file, name it feature.xml and add the following tags as shown below:

Oh yes, if you use Visual Studio 2005 things would be easier for you. My suggestion for working with XML in Visual Studio 2005:

 

1. Create a new XML file with name feature.xml

2. Pop open the XML file’s properties.

3. You should see a schemas option in the properties window.

4. For working with features (i.e., creating feature.xml & element.xml files) you can add a reference to C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\XML\wss.xsd file.

5. This will make things easier for you as you’ll experience IntelliSense™.

 

Coming to the above feature.xml file, it’s pretty simple to understand. It has a GUID (generated using GUIDGEN), a title, description, version. The important attributes though are:

· Scope: The scope at which the feature would be activated. For this discussion, I have specified “Site”, which means the feature will be installed at the site collection level. “Web” would be at a particular site level. “Farm” would be at the farm level and will be available universally to all sites falling under the farm.

· ReceiverAssembly/ReceiverClass: Since we are installing the assembly in GAC, we have to sign it with a strong name. The full assembly name after signing needs to be specified for ReceiverAssembly. The ReceiverClass name depends on your namespace and your main class name.

· There’s a <ElementManifests> tag under which the location of the custom master page file is specified. I had this master file put in the same folder as the feature and so I just provide the master page file name. There’s also another location that points to MySiteFeatureStapleElement.xml (element.xml file as it is known). You’ll see what that is in the next section.

 

Create element.xml file

The element.xml file I created looks like what is shown below:

It’s just a description of what, where & how the custom master page is, while in the feature we just defined it. As you can see, it talks about where to upload the custom master page to, what’s the file name, is it ghostable or not and a unique name.

 

Note: The element.xml file can be named anything e.g., sharepointrocks.xml. But make sure the feature.xml is named as is and that the correct element.xml file is referenced in feature.xml file.

 

Installing Custom MySite Feature

 

That’s it, you are almost done! Now, you just need to install/activate this feature to see the magic J  Goto 12 hive BIN folder and use the stsadm tool:

 

stsadm –o installfeature –name <feature name>

stsadm –o activatefeature –name <feature name> -url <https://sharepointurl>

 

In case you are wondering which URL you need to specify? It should be the URL of the web application that you created for MySite. Even if you provide the URL of the site from where your user will be accessing their MySite, it would work. After all, the feature will only get activated in MySite. See the difference below:

This approach would be a supported method of accomplishing MySite customization. I've also enclosed a sample application that you can refer to.

MySiteFeatureStaple.zip

Comments

  • Anonymous
    May 28, 2007
    Nice Artiacal....really need full. But can you please focus on What is MySite?

  • Anonymous
    June 04, 2007
    This site shows a way easier way of doing this... Just modify the default template used for MySites: http://blogs.msdn.com/danielmcpherson/archive/2004/05/23/139886.aspx

  • Anonymous
    June 04, 2007
    I've followed your guide exactly. But after activating the feature, I get a 403 forbidden error. And I can't get back into the portal, http://sharepointurl/ Can you give me some advice? Greetz.

  • Anonymous
    June 05, 2007
    Rudolph, Yes, that's another way of accomplishing MySite customization.  But that will put you into unsupported scenario.

  • Anonymous
    June 05, 2007
    Savan, An introduction to MySite is provided here: http://office.microsoft.com/en-us/sharepointserver/HA101087481033.aspx

  • Anonymous
    June 05, 2007
    Greetz, In that case, you might need to troubleshoot that.  Check the IIS logs, event viewer entries & ULS logs in SharePoint.  You might be able to find what's going wrong. cheers, Sri

  • Anonymous
    June 05, 2007
    Followed exactly what is mentioned but when I visit mysite I get HTTP 404 Resource cannot be found any idea how I can debug this?

  • Anonymous
    June 06, 2007
    Hi sridhara, Oke I've installed and activated the feature. But now only the "My Profile" pages are affected. It's must be something with the scope of the feature. Once I activate it on http://sharepointurl/personal/user it works fine but only for the specific user. You know how I can setup the scope the right way? Greetz

  • Anonymous
    June 07, 2007
    Amardeep, Where have you placed the custom master page you created?  If you have followed the steps as is, then you should have your custom master page in the same folder as your feature. cheers, Sri

  • Anonymous
    June 07, 2007
    Bartski, Is your current scope set to site or web? Setting the scope to site shouldn't cause this issue.  Further, you can also add debugging entries to find out what's happening. cheers, Sri

  • Anonymous
    June 13, 2007
    I am seeing the same issue as bartski.  It only is applying to the profile tab page and not the other. When looking at the event log it shows it applying to SPSMSITEHOST only.  I don't see it finding or applying to SPSERS

  • Anonymous
    June 14, 2007
    Yes the scope is set to site. I made a new webapp, and a new sitecollection to host the mysites. Deployed the feature, but it only affects the public view. When I try to deploy the feature on http://sharepointurl:port/personal I get: There is no web with the name /personal  (or something similar, it's in dutch) Furthermore I have no idea how to make debugging entries..

  • Anonymous
    June 27, 2007
    the way steve does it at: http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx

  • Anonymous
    June 27, 2007
    SridhaRa, Thanks for the great blog. Could I use this for creating a calendar list for all new user in their My Site? jmager

  • Anonymous
    June 27, 2007
    Sridhara, Great blog! Question...could I use this for creating a List (Calendar) for all new users My Sites? If so...how... Jm

  • Anonymous
    June 30, 2007
    If you look at one of the microsoft portal architect's code sample (http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx ) you will see he staples the master to a site defintion SPSPERS#0 - seems that would scale for larger deployments better than the if for each site creation.  Thoughts?   Also, since the administrator can customize the public view....do you really need to if on the mysite host....I only ask this re performance in the enterprises.  Thanks for sharing this with us!  It's a great community share on your part!

  • Anonymous
    July 06, 2007
    I tried the feature approach and it worked good , but my requirement is to have only the public page and not to give provide private sites to all users..Any way of achieving this functionality?

  • Anonymous
    July 06, 2007
    Hi sridhara, Nice work! Is the feature activated for all MySites in that web application? And how is the feature activated for new mysites that are not yet created? Thanks, Ton

  • Anonymous
    July 10, 2007
    I installed and activated this feature, but it only changes the theme when user X looks at user Y (My Home tab) this feature doesn't seem to change anything, atleast not the theme (it does change at the My Profile tab though). I have to admit I don't fully understand the concept with shared and private mysites and the templates involved but I thought this feature would force my own theme to ALL views, both private and shared. What I want is simpy a way to centrally decide a custom theme (corporate branding) to apply to ALL tabs/pages for all MySites, no matter what user inspects what MySite. Could this be achieved using this code with slight alterations ? And if so, how ? Thanks

  • Anonymous
    August 23, 2007
    Thank you very much for an awesome article. One question: You've modified the appearance of the site, but is it possible to dictate: -which web parts appear? e.g. it would be nice to have a web outlook (configured with the user's email) when they go to the site -whether parts of the site are editable. e.g we are a school, that wants to force boys to have their web outlook inbox on their mysite. It presume that one is always the owner of one's MySite, so it's impossible to restrict modification? Thanks again, Fergus

  • Anonymous
    August 24, 2007
    MikeH, Have you tried debugging the code and stepping into it to find what is happening at runtime? Sri

  • Anonymous
    August 24, 2007
    Bartski, I don't quite follow when you say you are creating a sitecollection for mysite.  Have you setup an SSP?  You will be creating a web app for mysite when setting up SSP. Sri

  • Anonymous
    August 24, 2007
    The comment has been removed

  • Anonymous
    August 24, 2007
    cafearizona, yes, for enterprise implementation and scalability http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx is an excellent walk-through. Sri

  • Anonymous
    August 24, 2007
    Raghu Iyer, if you are talking about mysites, I don't think that is possible. Sri

  • Anonymous
    August 24, 2007
    Ton, the mysite appearance changes when new mysites are created after you activate the feature. Sri

  • Anonymous
    August 24, 2007
    kalle11, this could help: http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx Sri

  • Anonymous
    August 24, 2007
    Fergus, See here: http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx Sri

  • Anonymous
    August 28, 2007
    The comment has been removed

  • Anonymous
    August 28, 2007
    Gustis, Are you sure your custom master page also follows a similar template like the default one does?  More details on customizing master page can be found here: http://msdn2.microsoft.com/en-us/library/ms476046.aspx cheers, Sri

  • Anonymous
    August 29, 2007
    Well, the sites I tried to apply my master to were all migrated from SPS 2003. But I am 100% sure that the master page I created (with sharepoint designer on another computer) can be uploaded and set as master page manually with Sharepoint Designer on my test server. Thats how I do it on the production machine right now. But still, my portal site shouldn't be affected since I only uploaded the master to other types of subwebs. Could the SPSecurity.RunWithElevatedPriviligies method have caused som irreparable error? I found errors in the event log suggesting that something wasn't ok. But thanks anyway, nice article.

  • Anonymous
    August 31, 2007
    Gustis, I guess, you have not checked for a particular template before changing the master page through feature.  Even if you did and if the base template were the same for all your sites, you might face issues like this.  I am not really sure, if creating master page through SharePoint designer would give us a master page similar to default.master that contains different place holders. Sri

  • Anonymous
    September 06, 2007
    Algunas preguntas relacionadas: ¿Cómo personalizo mi sitio de trabajo de SharePoint? ¿Cómo puedo personalizar

  • Anonymous
    September 06, 2007
    Algunas preguntas relacionadas: ¿Cómo personalizo mi sitio de trabajo de SharePoint? ¿Cómo puedo personalizar...

  • Anonymous
    September 11, 2007
    Algunas preguntas relacionadas: ¿Cómo personalizo mi sitio de trabajo de SharePoint? ¿Cómo puedo personalizar

  • Anonymous
    October 03, 2007
    Thanks for the article, but I cannot get this working in WSS 3.0. First, if I set the feature scope to "Site", stsadm -o installfeature complains that "Elements of type 'Receivers' are not supported at the 'Site' scope.  This feature could not be installed." If I change the scope to "Web", it says "Operation completed successfully.", but I can't find the feature in the web interface. Where is it supposed to show up?

  • Anonymous
    October 30, 2007
    Después de algún tiempo sin postear el habitual recopilatorio de recursos interesantes de WSS 3.0 &amp;

  • Anonymous
    December 11, 2007
    very nice article i get more help...

  • Anonymous
    January 14, 2008
    Hi This was really useful, got me most of the way. i was wondering if anyone had the same problem as Bartski in that the customisations only applied to the profile page and not the personal view. Anyone know of a reason why this happens, or even better a fix!

  • Anonymous
    January 21, 2008
    Hi there, I have a clean SP install and download your sample application. Then I did the following: I copied the MySiteFeatureStaple subfolder to 12TEMPLATEFEATURES. This MySiteFeatureStaple subfolder included Feature.xml, sridhar.master and MySiteFeatureStapleElement.xml. Then I ran: gacutil -i bindebugMySiteFeatureStaple.dll iisreset stsadm -o installfeature -name MySiteFeatureStaple stsadm -o activatefeature -name MySiteFeatureStaple -url http://server (server is the real name for my SP installation!) When I checked the mySite for my existing user: no change! When I created a new user and checked: "file not found..."-error message. Any ideas? Thanks Cees cees@connectcase.nl

  • Anonymous
    January 21, 2008
    the scope set to site. When I try to activate the feature on http://sharepointurl:port/personal I get: There is no web with the name /personal if I deploy http://sharepointurl:port/personal/username Now its deploying but the feature is activated for that particular user.      Do you have any how do I activate the feature for all My site User?

  • Anonymous
    January 27, 2008
    Hi! It does not work for me. When installing the eventlog says: Starting Activation of the MySite Master Page Switcher Feature But it does not show up in the "Manage Web Application Features " as a feature. I have tried to delete the mysite, and the mysite sitecollection. recreated the mysite site collection and created a new mysite for the user. But no new masterpage. and nothing in the eventlog. Please help.

  • Anonymous
    April 07, 2008
    Hello, I would like to know if there is way to create a custom site definition using MySite template, make some changes (like the webparts it displays) and deploy it without overwriting the current MySite, but with the same behavior ... (It does no appear under the create site templates and it creates automatically for each user) Thanks

  • Anonymous
    May 12, 2008
    i have a similar query to Ton, i have a web app for mysites and have a feature already for branding. I just dont know how to activate the feature for the whole web app? I can do it within my own mysite but not via the site collection. Is this done via central admin or my web application. Thanks

  • Anonymous
    May 16, 2008
    Can you modify the left menu without changing the master page? may be in the CSS

  • Anonymous
    May 26, 2008
    Hi Sridhara, I found this article very helpfull - But i am stuck with a question !- How do i have the document and list libraries disabled only for the Mysite of my web application ? ie I dont want any of my users to upload any lists or docmuments to their Mysite . Any help Thanks Sriniko

  • Anonymous
    June 25, 2008
    I don't understand why this won't work. I created a MOSS MySite, then deleted it, and followed your process. Afterwards the MySite generates for my user but without (your) master page changes. I've deployed the MySiteFeatureStaple.dll into the GAC and reset iss. The public token is correct in the xml. xml files and master page is in MySiteFeatureStaple directory under FEATURES dir. I installed the feature successfully. I activated the feature successfully at http://<mysite-webapp>/ and http://<mysite-webapp>/mysite I created a new mysite for my user, but it has the same template as before. I'm not getting any errors. Please help.

  • Anonymous
    June 25, 2008
    The comment has been removed

  • Anonymous
    June 25, 2008
    l0b0 - MySites are only available in MOSS, not in WSS. For this to work you would have to be using MOSS or there will be no MySite definition/template for it to find. Part of the code checks to see if it is a MySite, since there isn't one in WSS this piece will fail.

  • Anonymous
    June 25, 2008
    Hi Chris, You might wanna check if you've deployed the feature folder correctly. cheers, sridhar

  • Anonymous
    June 26, 2008
    The comment has been removed

  • Anonymous
    June 26, 2008
    Ok, I tried activating the feature on http://<mysite-webapp>/personal/chrisj and it applied the feature to my private site - but I will have hundreds of users and many being added all the time. There must be a way to apply the feature on private site generation. thoughts?

  • Anonymous
    June 26, 2008
    Hi Chris, I suggest you follow the feature stapling method outline here: http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx cheers, Sridhar

  • Anonymous
    July 03, 2008
    I created this feature in a wsp file using wspbuilder.  I then deployed it to my site.  When I go in to activate the feature it is not listed in the features for me to activate.  Do you know why? Thanks in advance!

  • Anonymous
    July 10, 2008
    Hi, I followed your instructions to customize the MySite but I ran into the same problems like Amardeep Setty. The installation and activation of the feature finish without any errors. But the mysite creation process for an user ends with a 404 error: Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly. Requested URL: /personal/tester5/default.aspx Any ideas or suggestions how to solve this problem? Bye, Flo

  • Anonymous
    July 29, 2008
    I can not add the created assembly to GAC even if its with strong name.


Cannot Add Assembly

Unable to add the selected assembly.  The assembly must have a strong name (name, version and public key).

OK  

Is there any idea what can be the issue?

  • Anonymous
    September 04, 2008
    The comment has been removed

  • Anonymous
    September 04, 2008
    Sous entendu comment modifier les My Site de MOSS 2007 avant création et leur maintenance après création.

  • Anonymous
    September 18, 2008
    Great feature! I have everything setup as instructed by you and also created/setup the MyReflector theme (as instructed by MSDN). When I go into the Site Feature to activate it, I receive this error in the Event Viewer: "Error activating MySite master page switcher feature A theme with the name "MyReflector 1011" and version  already exists on the server. : " I'm not sure what this means exactly. It appears to be trying to create the theme and is finding one already out there (and therefore stops executing the MySite feature activation). Should the theme not be previously created in the ..templatestheme directory? Any advice is appreciated.

  • Anonymous
    September 18, 2008
    Scratch my last post. I did some digging and apparently it's a bug with custom themes. To fix it, I opened the site in SP Designer and found the _themes directory and deleted the custom theme (I had to apply the custom theme first, got the error, and then deleted the theme directory in Designer). I worked it like a charm. Thanks for this solution!

  • Anonymous
    September 22, 2008
    I am deploying the fetures for Customizing the My site. Created the Web Application and then created Mysite by using MySiteHost teamplate. actually deleted the MySite created while ssp configuration. so creating new MYSite. Now when deloying feature in this sitecoll. getting error file not found

  • Anonymous
    September 22, 2008
    Hi there, Is there anywhere on the web that gives a full detailed account on how to customise 'MySite'. I have tried various approaches, which I found on the web, and they all failed. I am using MOSS 2007 and I can't find adequate support, anywhre, for the customising of MySite. It is my opinion that this issue needs to be addressed urgently, by Microsoft. I think that some solution needs to be found and incorporated into the next release of Sharepoint. Despite trying various methods, they all failed, for me. Regards, Dan

  • Anonymous
    October 03, 2008
    I get the same 404 as Flo and Amardeep Setty. Resource cannot be found. (/personal/administrator/default.aspx) When I open default.aspx in SP Designer. I get a master page error. It seems the contentplaceholder don't match. Even when I try to reattach it to the default.master now, I still get the same placeholder errors. content regions in the current page and master page do not match: PlaceHolderAdditionalPageHead PlaceHolderPageTitle so weird...

  • Anonymous
    December 17, 2008
    We've implemented a feature which should replace master page of MySite public page (http://servername/MySite/Person.aspx?...), implementation of the feature  was mostly based on an article "Customizing MOSS 2007 My Sites within the enterprise" (http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx). The feature was successfully installed and activated on a production server, but it doesn't replace default master page with a new one(although in 'Site Collection Features' it is displayed as 'Active' and field MasterUrl in Webs table of the WSS_Content database is referencing to the new master page), but it doesn't replace default master page with a new one(although in 'Site Collection Features' it is displayed as 'Active' and field MasterUrl in Webs table of the WSS_Content database is referencing to the new master page. The feature was also installed and activated on another SharePoint server which was installed from scratch - the feature works fine there. During tracing of the database it was found that each time when the feature is activated/deactivated on the clean environment and any user's public profile is requested in browser for the first time, the following transaction appears in a database trace log: BEGIN TRAN   EXEC dbo.proc_DeleteDocBuildDependencySet N'4fa19f0f-bf3d-44ff-a354-299f38e0e2de',N'MySite',N'Person.aspx',1   EXEC dbo.proc_AddBuildDependency '4fa19f0f-bf3d-44ff-a354-299f38e0e2de',N'MySite',N'Person.aspx',N'MySite/_catalogs/masterpage',N'ibron_profile.master',1   EXEC dbo.proc_UpdateDocBuildDependencySet '4fa19f0f-bf3d-44ff-a354-299f38e0e2de',N'MySite',N'Person.aspx',1,0x01000...7800 COMMIT This transaction updates data in AllDocs and BuildDependencies tables and as a result page 'Person.aspx' starts to use the new master page instead of the default one. But the same transaction never appears in the production enviroment. So the problem is that the feature is never get activated completely in the production enviroment. Could you please advise what could be a reason of such behaviour?

  • Anonymous
    January 01, 2009
    I have tried this, it worked once, but when I used it with my custom mster page, it will not reflect anything. I had able to change "My Profile" page by sharepoint designer, but unable to change "My Home" page. Please help me regarding this matter. Thanks

  • Anonymous
    January 09, 2009
    Hi, I have done following steps, 1.Add MySiteFeatureStaple.dll into GAC. 2.Add "MySiteFeatureStaple" folder into "Feature" folder. 3.Add "sridhar.master" into  masterpage gallery of MySite and respective site. 4.Install and activate features as given in the tutorial. It install and activate successfully, but no change appears in the mysite. Please help me regarding htat issue.

  • Anonymous
    January 31, 2009
    Dear sridhara i used the same approach u followed bt the master page is not affected. I think I might not be putting the master page on right place. what I did is - created a feature and put the feature in FEATURES folder by creating a folder MySiteTemplate inside FEATURE directory and also put my custom master page inside MySiteTemplate folder.

  • Anonymous
    February 01, 2009
    Hi, I followed same step and could resolve the error "file not found". but the problem is - do I have to activate the feature for each user. because when I use http://<Server>/personal/ it is saying there is no web /personal. and when I am using http://<Server>/personal/<userid>/ then it is working. suggest me How can we activate the feature for all the user at one glance. Regards Deewaker

  • Anonymous
    March 25, 2009
    Hi everyone, is there any way to tell sharepoint (i supose "featuring") to create complete "My Site", i mean, "My Home" and "My Profile" pages using myCustom.master page??? i want both pages with my masterpage, i mean, i want sharepoint creates "My Site" with my masterpage. is it possible??? thankssss

  • Anonymous
    April 05, 2009
    this fine but how can i add and configure myinbox webpart to my site , to view the outlook mail automatically once the user log to his personal site  

  • Anonymous
    April 30, 2009
    Hi, I am creating a Community Site in MOSS 2007 with customization and also want to use existing My Site(basically “My Pofile”) feature for each user’s profile like ORKUT fashion(which maintains GROUPS, FRIEND’s List, SCRAPBOOK, MESSAGES etc.). Can i use “My Site” feature of this purpose?? Can you please help me in this context?? Thank you, Saurabh

  • Anonymous
    June 30, 2009
    I am also facing same problem as Biswajit was facing. I deployed DLL in to the GAC and copied the features to the Feature folder. But the theme and Master page is getting applied to only "My Profile" not to the "My Home". Can anyone help me to resolve this problem? Thanks

  • Anonymous
    July 15, 2009
    The comment has been removed

  • Anonymous
    September 07, 2009
    After successfully installing the feature. I tried to activate the feature, but it is showing the error message "Requested registry access is not allowed." Please let me know what is the problem. Thanks Satheesh

  • Anonymous
    September 12, 2009
    the master page logic you discussed, does is changes the master for person.aspx (My profile page) how to do that. Also I wanted to change the name of the my home and my profile page. and add aditional page to my site. Can you give me some pointers to it Thanks Sandeep Rao

  • Anonymous
    September 22, 2009
    Nice post Sridhar. For all the people wanting to know how to apply / update your theme to all existing MySites then read my blog on this here http://simonjamesovens.spaces.live.com/blog/cns!613CA7756E719023!164.entry

  • Anonymous
    October 03, 2009
    Hi! There, I am getting the same 404 error as Flo, Mado and Amardeep Setty. "HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly Requested URL: /my/default.aspx" I am able to debug the code and it replaces the master page exactly as what we want. Please help if anyone has allready solved this problem... Thanks ashish

  • Anonymous
    December 10, 2009
    The feature got installed and got activated... but it has to be activated for each user seperately... Can you please help on this

  • Anonymous
    January 03, 2011
    Hello Sridhar, Nice article! I have a question like is there any way that we can customize/ format the structure in MyProfile. Let me put my question in detail, can we display multi-value rows in table format in MyProfile page. Thanks, Madhan

  • Anonymous
    February 08, 2011
    The comment has been removed