none
Unable to deploy CommerceSharePointExtensibilityKit RRS feed

  • Question

  • I want to customize the CommerceSharepoint ExtensibilityKit and i have performed following steps,
    1- Signed all project in CommerceSharePointExtensibilityKit with new key
    2- Rebuilt them to create the .wsp files "MicrosoftCommerceMOSSDefaultSite.wsp", "MicrosoftCommerceWebParts.wsp" and "MicrosoftCommerceWSSDefaultSite.wsp"
    3- Retracted already installed commerce server solutions "MicrosoftCommerceMOSSDefaultSitev2.wsp", "MicrosoftCommerceWebParts.wsp".
    4- "MicrosoftCommerceWebParts.wsp" is successfully deployed on sharepoint site. 

    The issue is "MicrosoftCommerceMOSSDefaultSite.wsp" throws error on deployment

    "This solution contains no resources scoped for a Web application and cannot be deployed to a particular Web application."

    I investegated further and found that there are some missing template files in manefist.xml file of "MicrosoftCommerceMOSSDefaultSitev.wsp" that i built. All the template files having postfix "_contemporary.ascx" (e.g. cart_contemporary.ascx) are missing.

    please can some one explain the procedure to rebuild CommerceSharePointExtensibilityKit  and deploy it? did i missed any step?
    Wednesday, March 17, 2010 12:13 PM

Answers

  • You have listed most of the steps correctly. In general you have to:

    1- Create a strong name key file for one of the projects in extensibility kit.

    2- use the same strong name key file for all projects in the extensibility kit.

    4-Fix the reference to Microsoft.SharePoint.ApplicationPages under ProfileSharePoint

    3- build the solution and get the public token of your assemblies.

    4- Since the Extensibility kit originally uses the Microsoft public token to reference the project DLL's in project artifacts like .ascx, aspx and feature files,  you need to repaired the references to use your new public token. you can follow the following steps to do so:

    a.       Brows to your bin output directory using Visual studio Command line (C:\CommerceSharePointExtensibilityKit\CommerceSharePointExtensibilityKit\bin\Debug)

    b.      Use sn.exe to find out the public token of your dlls (all of them should have a same public token) here is an example of using SN tool  “sn -T Microsoft.Commerce.Portal.Common.dll”. you will see the public token in the result. Copy this value and save it for further references in the following steps. We will preset this value as [ext-public-token].

    c.       Search for all references to Microsoft commerce server public tokens (“31bf3856ad364e35”) and replace them with your own public token. If you are using VS 2008

                                                                   i.      Open Find and replace in file, from Edit/Find and replace menu

                                                                 ii.      Expand the Find Options and check “use” and select Regular expression from the drop down beside it.

                                                                iii.      Provide the root directory of ext kit in “look in” field (e.g. C:\CommerceSharePointExtensibilityKit)

                                                               iv.      Check “Include sub-folders” check box and

                                                                 v.      In “find what” field provide “{Microsoft[.]Commerce[.]Portal.*}{31bf3856ad364e35}” . this regular expression matches all public key tokens which follows a Microsoft.Commerce.Protal.

                                                               vi.      In “Replace With:” field put "\1[ext-public-token]". This replaces the second part of match {i.e. 31bf3856ad364e35} with your public token

                                                              vii.      Expand result options and uncheck “keep modified files open after replace all” checkbox. (Note that this will make your search replace irrecoverable but save on resources).

                                                            viii.       Click “replace all”. If you search in files and provide  “{Microsoft[.]Commerce[.]Portal.*}{31bf3856ad364e35}”  you should not find  any match.

     

     

    Based on the error in your message I am assuming that you are trying to deploy this solution to a web application. MicrosoftCommerceMOSSDefaultSite is not an application level feature and does not have Web Application level resources. If you have not added a new feature to Extensibility Kit you can use “SharePointCommerceServicesConfiguration.exe”  to deploy them. Here is the steps to do that:

     

    1.       Back up the original WSP files “MicrosoftCommerceMOSSDefaultSite.wsp” and “MicrosoftCommerceWebParts.wsp” in “C:\Program Files\Microsoft Commerce Server 2007\Microsoft Commerce Server 2009\Site”

    2.       Replace the original WSP files -“MicrosoftCommerceMOSSDefaultSite.wsp”, and “MicrosoftCommerceWebParts.wsp – with those Generated by extensibility kit. These files can be found in [Unpacked Extensibility Kit directory]\bin\Debug\WSP

    3.       Run “SharePointCommerceServicesConfiguration.exe” to deploy a new site in SharePoint

       

    • Proposed as answer by David Hargis Wednesday, March 24, 2010 8:38 PM
    • Marked as answer by Emre Daglik Monday, March 29, 2010 6:49 PM
    Tuesday, March 23, 2010 6:14 PM

All replies

  • You have listed most of the steps correctly. In general you have to:

    1- Create a strong name key file for one of the projects in extensibility kit.

    2- use the same strong name key file for all projects in the extensibility kit.

    4-Fix the reference to Microsoft.SharePoint.ApplicationPages under ProfileSharePoint

    3- build the solution and get the public token of your assemblies.

    4- Since the Extensibility kit originally uses the Microsoft public token to reference the project DLL's in project artifacts like .ascx, aspx and feature files,  you need to repaired the references to use your new public token. you can follow the following steps to do so:

    a.       Brows to your bin output directory using Visual studio Command line (C:\CommerceSharePointExtensibilityKit\CommerceSharePointExtensibilityKit\bin\Debug)

    b.      Use sn.exe to find out the public token of your dlls (all of them should have a same public token) here is an example of using SN tool  “sn -T Microsoft.Commerce.Portal.Common.dll”. you will see the public token in the result. Copy this value and save it for further references in the following steps. We will preset this value as [ext-public-token].

    c.       Search for all references to Microsoft commerce server public tokens (“31bf3856ad364e35”) and replace them with your own public token. If you are using VS 2008

                                                                   i.      Open Find and replace in file, from Edit/Find and replace menu

                                                                 ii.      Expand the Find Options and check “use” and select Regular expression from the drop down beside it.

                                                                iii.      Provide the root directory of ext kit in “look in” field (e.g. C:\CommerceSharePointExtensibilityKit)

                                                               iv.      Check “Include sub-folders” check box and

                                                                 v.      In “find what” field provide “{Microsoft[.]Commerce[.]Portal.*}{31bf3856ad364e35}” . this regular expression matches all public key tokens which follows a Microsoft.Commerce.Protal.

                                                               vi.      In “Replace With:” field put "\1[ext-public-token]". This replaces the second part of match {i.e. 31bf3856ad364e35} with your public token

                                                              vii.      Expand result options and uncheck “keep modified files open after replace all” checkbox. (Note that this will make your search replace irrecoverable but save on resources).

                                                            viii.       Click “replace all”. If you search in files and provide  “{Microsoft[.]Commerce[.]Portal.*}{31bf3856ad364e35}”  you should not find  any match.

     

     

    Based on the error in your message I am assuming that you are trying to deploy this solution to a web application. MicrosoftCommerceMOSSDefaultSite is not an application level feature and does not have Web Application level resources. If you have not added a new feature to Extensibility Kit you can use “SharePointCommerceServicesConfiguration.exe”  to deploy them. Here is the steps to do that:

     

    1.       Back up the original WSP files “MicrosoftCommerceMOSSDefaultSite.wsp” and “MicrosoftCommerceWebParts.wsp” in “C:\Program Files\Microsoft Commerce Server 2007\Microsoft Commerce Server 2009\Site”

    2.       Replace the original WSP files -“MicrosoftCommerceMOSSDefaultSite.wsp”, and “MicrosoftCommerceWebParts.wsp – with those Generated by extensibility kit. These files can be found in [Unpacked Extensibility Kit directory]\bin\Debug\WSP

    3.       Run “SharePointCommerceServicesConfiguration.exe” to deploy a new site in SharePoint

       

    • Proposed as answer by David Hargis Wednesday, March 24, 2010 8:38 PM
    • Marked as answer by Emre Daglik Monday, March 29, 2010 6:49 PM
    Tuesday, March 23, 2010 6:14 PM
  •  

    Thanks a lots Matin

    Friday, April 2, 2010 6:17 AM