none
Resources dependencies problem RRS feed

  • Question

  • Hi All,

    I have a BizTalk application called "ABC.Schemas" which only has the common schemas used across ABC.Ideally,it will be referenced by many more projects ,as it is the place holder for common schemas.

    I have referenced the ABC.Schemas.dll in other Maps / Orchestrations projects & they are also deployed as ABC.Maps / ABC.Orchestrations applications.

    Now , whenever I make any changes to the  ABC.Schemas.dll (add new schema/update existing schema) & try to deploy it again (which in VS terms updating the assembly) , It is not allowing me to do .

    It is giving an error saying

    Error 4 Failed to add resource(s). Change requests failed for some resources. BizTalkAssemblyResourceManager failed to complete end type change request. Cannot update assembly "ABC.Schemas, Version=1.0.0.0, Culture=neutral, PublicKeyToken=152f7997c4196b82" because it is used by assemblies which are not in the set of assemblies to update.
    To update the assembly, remove the following assemblies:
    ABC.Maps / ABC.Orchestrations , Version=1.0.0.0, Culture=neutral, PublicKeyToken=132f7997c4196b82  0 0

    So , How do i resolve this ? Do i need to delete resouces manually every time ? for  ABC.Maps / ABC.Orchestrations , every time I make a change to the common ABC.Schemas ?

    I do understand that this error comes because there are entery for this Schema allready there in GAC...and there are two way to remove that enetry 1) manully, which i am doing 2) Is there a way to remove this by using script ?

    I am doing correct ?

    How do I acheive Loosly coupling here ? Please provide your Input .

    Thanks & Regards

    Nilesh Thakur.


    Thanks and Regards, Nilesh Thakur.

    Friday, May 3, 2013 7:09 AM

Answers

  • Hi Nilesh

    go to project properties -

    click on build events .

    write inside Post Build event command line

    "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\gacutil" /nologo  /i "$(TargetPath)" /f

    .

    This will update the dll in GAC when you change in SChema and build.

    Regards

    Mohit Gupta

    • Proposed as answer by Vineeth V.L Friday, May 3, 2013 10:13 AM
    • Marked as answer by Pengzhen Song Thursday, May 9, 2013 10:58 AM
    Friday, May 3, 2013 8:48 AM

All replies

  • HI Nilesh,

    here is one chance, if your codeplex deploymnet, use the undeploy option .

    Thanks

    Friday, May 3, 2013 8:40 AM
  • Hi Nilesh

    go to project properties -

    click on build events .

    write inside Post Build event command line

    "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\gacutil" /nologo  /i "$(TargetPath)" /f

    .

    This will update the dll in GAC when you change in SChema and build.

    Regards

    Mohit Gupta

    • Proposed as answer by Vineeth V.L Friday, May 3, 2013 10:13 AM
    • Marked as answer by Pengzhen Song Thursday, May 9, 2013 10:58 AM
    Friday, May 3, 2013 8:48 AM
  • I would recommend you to do the deployment using the scripts the following are two most popular options, learning these is not that difficult and it will make deployment lot easier.

    1. PowerShell Provider BizTalk

    2. Deployment Framework for BizTalk (BTDF)


    Please mark the post answered your question as answer, and mark other helpful posts as helpful, it'll help other users who are visiting your thread for the similar problem, Regards -Rohit Sharma (http://rohitt-sharma.blogspot.com/)

    • Proposed as answer by Chandra Kumar Thursday, May 30, 2013 12:56 PM
    Saturday, May 4, 2013 8:05 AM
    Moderator
  • When I trip on this, it's usually one of two things.

    1. A referencing (consumer of a schema) Project's Deploy option is not checked in selected Build Configuration.

    2. The applications are in different Applications in BT Admin.  The Deploy process in Visual Studio doesn't handle that scenario too well.  Use one Application for DEV and let the PROD installer split as necessary.  Applications are simply a convenience in BT Admin, the artifacts are not actually partitioned in any way.

    If you are simple modifying the content of a Schema, and not any of the first class properties (Root name, namespace, typename) you can get away with reGAC'ing only in a DEV environment.

    Saturday, May 4, 2013 3:56 PM
    Moderator
  • Hi,

    In TechNet Wiki article BizTalk: List of Errors and Warnings, Causes and Solutions you can find this and many other BizTalk related errors.

    Kind Regards,

    Steef-Jan Wiggers

    MVP & MCTS BizTalk Server 2010

    http://soa-thoughts.blogspot.com/ |@SteefJan

    If this answers your question please mark it accordingly

    BizTalk Server 2010 Cookbook


    BizTalk

    Tuesday, May 7, 2013 9:28 AM
    Moderator
  • When it is possible to re-GAC assembly without full redeployment?

    I would copy a text from the BTDF Help:

    "...

    The Quick Deploy option is appropriate when you've made changes that are "internal" to your BizTalk artifacts and not directly visible to BizTalk.


    Common changes that are compatible with this command include:

    • changing Expression shape code
    • adding or removing (most) shapes inside an orchestration
    • changing code inside an existing .NET helper method
    • changing links or functoids within an existing map


    Examples of common changes that are visible to BizTalk and are incompatible with this command include:

    • changing ports in an orchestration
    • changing the source or destination schemas in a map
    • changing schema namespace or root node properties
    • changing a property schema

    ..."

    Also I would recommend to study the generics about the BizTalk deployment.


    Leonid Ganeline [BizTalk MVP] BizTalk: the Naming Conventions in Examples


    Tuesday, May 7, 2013 11:00 PM
    Moderator
  • The BizTalk project assemblies also need to be re-deployed when BizTalk artifacts are added or removed from an assembly so the management database tables can be updated.


    David Downing... If this answers your question, please Mark as the Answer. If this post is helpful, please vote as helpful.

    Wednesday, May 8, 2013 1:57 PM
  • Try deploying using the scripts, as the Deploy process in Visual Studio doesn't handle that scenario too well.

    Ref- http://biztalkdeployment.codeplex.com/

    Friday, May 31, 2013 8:30 PM
  • Hi Nilesh,

    Before deploying schema application you should remove the references and after deploying schema application you have to add reference once gain.Then you will not get this Error.

    Thanks

    Manoj

    Wednesday, June 19, 2013 10:28 AM
  • What you could do is increase the assembly version :-), or alternatively change the snk key

    But in this case you need to update your maps to reference the updated version of the assembly

    Once all the maps have updated, then you can remove safely the old one


    BizTalk Consultant in France

    Tuesday, June 25, 2013 1:13 PM
  • BTW If all projects are in the same solution, you can just Deploy solution and the VS + BizTalk take care of all correct deployment order. :)

    Leonid Ganeline [BizTalk MVP] BizTalk: the Naming Conventions in Examples

    Tuesday, July 2, 2013 11:29 PM
    Moderator
  • It's not in same solution...

    diff solution are there....


    Thanks and Regards, Nilesh Thakur.

    Friday, July 5, 2013 5:29 AM
  • Hello manoj,

    you are correct....but this will be easy if you are reffering schema at only one place( only in Map).

    If i am reffering it in Map,Orchestration,Pipeline and so on in 2 to 3 diffrent solutions then...

    i don't think this will be feasible solution...

    ...Nilesh


    Thanks and Regards, Nilesh Thakur.

    Friday, July 5, 2013 5:32 AM
  • Hello all,

    Finaly this problem got resolved, solution to this problem was as follows.

    I have noticed that i am reffering DLL file from other solution\project\bin\debug\ .dll file.

    Insted of that i should reffere it from assembly :

    C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Component\versionnumber\. dll file.

    Thanks for help...


    Thanks and Regards, Nilesh Thakur.

    Wednesday, August 7, 2013 6:24 AM