Answered How do I deploy BCS/BDC to my SP site?

  • Thursday, May 17, 2012 7:54 PM
     
     

    I've create a BCS model in Visual Studio which works perfectly when I deploy directly to my local development SP site.  When I try to deploy the WSP file to my production SP site it's visible in Central Admin and shows as globally deployed and active, yet it doesn't create a BDC Model (which it does in development).  I then manually import my BDC model and create an external list, however when I try to access it I get an error.

    Looking at the event logs I find:

    Could not obtain a proxy to WebService for LobSystem 'BdcModel1' in App Domain '/LM/W3SVC/373847411/ROOT-1-129817532624662219'. The full exception text is: Assembly was requested for LobSystem with Name 'BdcModel1', but this assembly was not returned. SystemUtility of Type 'Microsoft.SharePoint.BusinessData.SystemSpecific.DotNetAssembly.DotNetAssemblySystemUtility' requires the assembly to be uploaded.. The inner exception text is: .

    Any idea what that means or what I'm doing wrong?  Thanks for your help!

    • Edited by RyanSTV Thursday, May 17, 2012 7:55 PM fixed formatting
    •  

All Replies

  • Thursday, May 17, 2012 9:03 PM
    Moderator
     
     Answered Has Code

    Hi

    The error message indicates that you have to upload the referenced assembly. There's a Powershell cmdlet designed for that purpose here

    An example:

    $url = "<url to your site>"

    $assemblyPath = "<path to your model dll>"

    $lobSystem = "<name of metadata object>"

    $serviceContext = Get-SPServiceContext $url

    $lobSystem = Get-SPBusinessDataCatalogMetadataObject -ServiceContext $serviceContext -BdcObjectType lobsystem -Name $lobSystem

    Import-SPBusinessDataCatalogDotNetAssembly -LobSystem $lobSystem -Path $assemblyPath



    Regards Bjoern
    Blog




  • Friday, May 18, 2012 1:04 PM
     
      Has Code

    Hi

    The error message indicates that you have to upload the referenced assembly. There's a Powershell cmdlet designed for that purpose here

    An example:

    $url = "<url to your site>"

    $assemblyPath = "<path to your model dll>"

    $lobSystem = "<name of metadata object>"

    $serviceContext = Get-SPServiceContext $url

    $lobSystem = Get-SPBusinessDataCatalogMetadataObject -ServiceContext $serviceContext -BdcObjectType lobsystem -Name $lobSystem

    Import-SPBusinessDataCatalogDotNetAssembly -LobSystem $lobSystem -Path $assemblyPath



    Regards Bjoern
    Blog




    Thank you Bjoern!!!!!!!!!  This was exactly what I was looking for!