This project has moved and is read-only. For the latest updates, please go here.

Problem in Deploying the BRE

Topics: General Questions, Server Deployment
Mar 16, 2011 at 6:13 AM

Hi,

In my project, the BRE Vocabulary is making use of a .net class,hence i have added a tag to the btdfproj file as below

 

<ItemGroup>
    <ExternalAssemblies Include="Project.Helpers.dll">
      <LocationPath>..\Library</LocationPath>
    </ExternalAssemblies>

</ItemGroup> 

i am also able to see the dll file in the assembly location (C:\Windows\Microsoft.NET\assembly\GAC_MSIL)

i don't understand why i am getting the below mentioned error.

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

 
  "C:\Program Files (x86)\Deployment Framework for BizTalk\5.0\Framework\DeployTools\DeployBTRules.exe" /vocabularyName "ProjectFrameWork" /ruleSetVersion "1.1" /unpublish /undeploy
  BizTalk Rules Engine Policy/Vocabulary Deployment Tool v1.1.0.0
  Copyright (C) 2005-2010 Scott Colestock, Thomas F. Abraham
 
  Warning: Could not find a published vocabulary with name 'ProjectFrameWork' and version '1.1'.
  Operation complete.
 
DeployVocabAndRules:
  "C:\Program Files (x86)\Deployment Framework for BizTalk\5.0\Framework\DeployTools\DeployBTRules.exe" /ruleSetFile "..\BusinessRuleEngine\Vocabulary\ProjectFrameWork_Vocabularies.xml"
  BizTalk Rules Engine Policy/Vocabulary Deployment Tool v1.1.0.0
  Copyright (C) 2005-2010 Scott Colestock, Thomas F. Abraham
 
  Importing and publishing from file '..\BusinessRuleEngine\Vocabulary\ProjectFrameWork_Vocabularies.xml'...
  Failed: Microsoft.RuleEngine.BusinessRulesLanguageValidationException: Unable to locate assembly "Project.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2d912ef16f4bb18f".
  File: "D:\ProjectFramework\Project\BusinessRuleEngine\Vocabulary\ProjectFrameWork_Vocabularies.xml", line: 31, position: 13 ---> Microsoft.RuleEngine.RuleEngineConfigurationAssemblyNotFoundException: Unable to locate assembly "Project.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2d912ef16f4bb18f". ---> System.IO.FileNotFoundException: Could not load file or assembly 'Project.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2d912ef16f4bb18f' or one of its dependencies. The system cannot find the file specified.
  File name: 'Project.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2d912ef16f4bb18f'
     at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
     at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
     at System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
     at System.Reflection.Assembly.Load(String assemblyString)
     at Microsoft.RuleEngine.RemoteUpdateService.RemoteUpdateService.LocateAssembly(String assembly)
 
  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].
 
     --- End of inner exception stack trace ---
     at Microsoft.RuleEngine.RemoteUpdateService.RemoteUpdateService.LocateAssembly(String assembly)
     at Microsoft.RuleEngine.BusinessRulesLanguageConverter.LocateType(String assembly, String className)
     at Microsoft.RuleEngine.BusinessRulesLanguageConverter.ProcessVocabularyClassInformation(XmlReader vrdr)
     at Microsoft.RuleEngine.BusinessRulesLanguageConverter.ProcessVocabularyClassMemberBinding(XmlReader vrdr, Guid id, String name, String description)
     at Microsoft.RuleEngine.BusinessRulesLanguageConverter.ProcessVocabularyBinding(XmlReader vrdr, Guid id, String name, String description)
     at Microsoft.RuleEngine.BusinessRulesLanguageConverter.ProcessVocabularyDefinition(XmlReader vrdr)
     at Microsoft.RuleEngine.BusinessRulesLanguageConverter.ProcessVocabulary(XmlReader vrdr, VocabularyDictionary vocabulary)
     at Microsoft.RuleEngine.BusinessRulesLanguageConverter.Load(Stream input, VocabularyDictionary& vocabularies, RuleSetDictionary& ruleSets)
     --- End of inner exception stack trace ---
     at Microsoft.RuleEngine.BusinessRulesLanguageConverter.Load(Stream input, VocabularyDictionary& vocabularies, RuleSetDictionary& ruleSets)
     at Microsoft.RuleEngine.FileRuleStore.LoadFile()
     at Microsoft.BizTalk.RuleEngineExtensions.RuleSetDeploymentDriver.ImportAndPublishFileRuleStore(String fullFileName)
     at DeployBTRules.DeployRules.Main(String[] args)
 
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1473,5): error MSB3073: The command ""C:\Program Files (x86)\Deployment Framework for BizTalk\5.0\Framework\DeployTools\DeployBTRules.exe" /ruleSetFile "..\BusinessRuleEngine\Vocabulary\ProjectFrameWork_Vocabularies.xml"" exited with code -1. [D:\Project\Project\Project.Deployment\Project.Deployment.btdfproj]
Done Building Project "D:\ProjectFramework\Project\Project.Deployment\Project.Deployment.btdfproj" (Deploy target(s)) -- FAILED.

Build FAILED.

"D:\Project\Projectk\Project.Deployment\Project.Deployment.btdfproj" (Deploy target) (1) ->
(DeployVocabAndRules target) ->
  C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1473,5): error MSB3073: The command ""C:\Program Files (x86)\Deployment Framework for BizTalk\5.0\Framework\DeployTools\DeployBTRules.exe" /ruleSetFile "..\BusinessRuleEngine\Vocabulary\ProjectFrameWork_Vocabularies.xml"" exited with code -1. [D:\Project\Project\Project.Deployment\Project.Deployment.btdfproj]

    0 Warning(s)
    1 Error(s)

 

kindly guide me through this

 

Mar 16, 2011 at 7:26 AM

Can you confirm if you are using version 5.0 RC2?

Thanks,
Tom

Mar 16, 2011 at 7:37 AM

it is 5.0 RC2.

Thanks,

Mala.

Mar 16, 2011 at 8:10 AM

Are you using BizTalk 2006 R2 or 2009 and you have .NET 4.0 installed on the computer?  If so, please go to C:\Program Files\Deployment Framework for BizTalk\5.0\Framework\DeployTools and edit DeployBTRules.exe.config in Notepad.  Delete or comment out the XML element <supportedRuntime version="v4.0" />.  If you're testing the deployment through an MSI install vs. in Visual Studio, you'll need to rebuild the MSI.

Thanks,
Tom

Mar 16, 2011 at 9:03 AM

Thanks Tom.

the error is cleared after i uninstalled and reinstalled the deploymentframework.One more concern,

is it possible to create a Biztalk Deployment Framework Project with in a separete Solution?

since i did not want the deployment Framework Project to get mess up with the client Project. In this scenario i am placing the dlls of the biztalk Projects in a separate folder with in the solution folder so that i could give the relative path for the dlls.

Problem i am facing here is that i am not able to deploy the Solution.Give a idea to perform this task..

thanks,

Mala..

Mar 17, 2011 at 7:04 AM

Since the Deployment Framework doesn't have a native Visual Studio project, there's no need to add anything to the solution.  The Visual Studio add-in just looks for an open solution, then looks in several pre-determined folder paths below the solution root folder for the .btdfproj file.  Your solution file isn't required to contain anything but your regular BizTalk and C# projects.

Thanks,
Tom

Mar 21, 2011 at 11:11 AM

Thanks Tom.

Got Clear with the concept.

I am facing a new trouble,everything is successfully happening in my PC,problem is that when i try to deploy it in other PC i face some problem,actually i am expecting  a "orchestration cannot be enlisted error" (which is usual before creating the port bindings)but no error comes and  build is successful. But the problem is that the orchestrations are not getting displayed in the Biztalk server admin console..

what could be the problem?

thanks,

Mala

Mar 22, 2011 at 5:56 AM

This could be caused by a number of things.  Are you deploying to the other PC using the MSI or Visual Studio?  If the MSI, then you can look through the MSBuild log (see DeployResults folder in your app's Program Files install folder after deployment) and search for DeployOrchestrations to see if it appears to be doing that step successfully.  You can also look for ImportBindings to see what's happening at that stage.

Let me know if you don't see anything obvious, then maybe you can post some relevant sections from the log file.

Thanks,
Tom

Mar 23, 2011 at 6:09 AM

C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018: The "CreateVirtualDirectory" task failed unexpectedly. [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018: System.Runtime.InteropServices.COMException (0x800700B7): Cannot create a file when that file already exists. (Exception from HRESULT: 0x800700B7) [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at System.DirectoryServices.Interop.UnsafeNativeMethods.IAdsContainer.Create(String className, String relativeName) [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at System.DirectoryServices.DirectoryEntries.Add(String name, String schemaClassName) [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at DeploymentFramework.BuildTasks.CreateVirtualDirectory.Execute() [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask, Boolean& taskResult) [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
Done Building Project "D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj" (Deploy target(s)) -- FAILED.

Build FAILED.

"D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj" (Deploy target) (1) ->
(DeployVDirs target) ->
  C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018: The "CreateVirtualDirectory" task failed unexpectedly. [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018: System.Runtime.InteropServices.COMException (0x800700B7): Cannot create a file when that file already exists. (Exception from HRESULT: 0x800700B7) [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at System.DirectoryServices.Interop.UnsafeNativeMethods.IAdsContainer.Create(String className, String relativeName) [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at System.DirectoryServices.DirectoryEntries.Add(String name, String schemaClassName) [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at DeploymentFramework.BuildTasks.CreateVirtualDirectory.Execute() [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]
C:\Program Files (x86)\MSBuild\DeploymentFrameworkForBizTalk\5.0\BizTalkDeploymentFramework.targets(1646,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask, Boolean& taskResult) [D:\AsteaFramework\Carrier.ASTEAIntegrationFramework\Carrier.ASTEAIntegrationFramework.Deployment\Carrier.ASTEAIntegrationFramework.Deployment.btdfproj]

    0 Warning(s)
    1 Error(s)

Time Elapsed 00:00:54.35

what could be the cause for this

Thanks,

Mala

Mar 23, 2011 at 6:43 AM

Maybe you are not starting with a clean slate in IIS, or you have not undeployed first.  It appears to be failing to create the virtual directory because it already exists.  Was it already there before you ran the deploy for the first time, or are you re-deploying to the same machine?  Try deleting the virtual directory in IIS Manager.

Thanks,
Tom

Mar 23, 2011 at 7:08 AM

you are correct i am re-deploying it in the same machine.

i have deleted the virtual folder from IIS.

Still it is showing the same.

thanks,

Mala.

Mar 23, 2011 at 8:06 AM

Are you certain that you've deleted all of the virtual directories configured in your .btdfproj?  The error is: System.Runtime.InteropServices.COMException (0x800700B7): Cannot create a file when that file already exists. (Exception from HRESULT: 0x800700B7) in the CreateVirtualDirectory task.

A long shot guess, if this is on IIS7, make sure that you have the IIS6 compatibility features installed.

Thanks,
Tom

Aug 19, 2011 at 1:40 AM

 

Please see below error:

"c:\Project Name\Deployment\Framework\DeployTools\DeployBTRules.exe" /ruleSetName "RuleSetFile" /ruleSetVersion "1.0" /unpublish /undeploy
                BizTalk Rules Engine Policy/Vocabulary Deployment Tool v1.1.0.0
                Copyright (C) 2005-2010 Scott Colestock, Thomas F. Abraham
               
                Failed: Microsoft.RuleEngine.RuleEngineDeploymentDatabaseConnectionException: Error encountered while connecting to database: "Initial Catalog=BizTalkRuleEngineDb;Data Source=SQLServer\instanceA;Integrated Security=SSPI;". ---> System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)
                   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
                   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
                   at System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity)
                   at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, SqlConnection owningObject)
                   at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout)
                   at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
                   at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
                   at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
                   at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
                   at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
                   at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
                   at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
                   at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
                   at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
                   at System.Data.SqlClient.SqlConnection.Open()
                   at Microsoft.BizTalk.RuleEngineExtensions.RuleSetDeploymentDriver.OpenConnection(String location)
                   --- End of inner exception stack trace ---
                   at Microsoft.BizTalk.RuleEngineExtensions.RuleSetDeploymentDriver.OpenConnection(String location)
                   at Microsoft.BizTalk.RuleEngineExtensions.RuleSetDeploymentDriver.OpenConnection()
                   at DeployBTRules.DeployRules.ProcessPolicies(DeployRulesCommandLine cl, RuleSetDeploymentDriver dd)
                   at DeployBTRules.DeployRules.Main(String[] args)
               
                c:\Project Name\Deployment\Framework\BizTalkDeploymentFramework.targets(1588,5): error MSB3073: The command ""c:\Project Name\Deployment\Framework\DeployTools\DeployBTRules.exe" /ruleSetName "RuleSetFile" /ruleSetVersion "1.0" /unpublish /undeploy" exited with code -1.
            Done building target "UndeployVocabAndRules" in project "Project Name.Deployment.btdfproj" -- FAILED.

 

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0" />
        <supportedRuntime version="v2.0.50727" />
    </startup>
</configuration>

 If i remove the Supported Runtime Version v4.0 element, It is working fine. Please advise. What am i missing?

Aug 19, 2011 at 7:54 AM

I don't know why it would fail to connect to the SQL Server under .NET 4.0 and not .NET 2.0.  What version of BizTalk is installed?  Maybe you don't have the current SQL Server client files installed... but generally you get what you need with the .NET Framework install.

Tom