Could not validate configuration of Primary Transport of Send Port

Topics: Bindings File, Settings Management and SSO
Sep 10, 2012 at 1:05 PM

Hi,
Im having problems with ports, both SendPort and ReceiveLocations, which are of transporttype FILE when using parameters through SettingsFileGenerator.xml.
In summary, I use a PortBindingsMaster.xml which have parameters retrieved from SettingsFileGenerator.xml. When I try to deploy I get the following error:
Error: Failed to update binding information.Could not validate configuration of Primary Transport of Send Port ‘Bla_Bla_Bla_xxxxx” with SSO server.
An invalid value for property “DestinationFolder”.
An invalid value for property “DestinationFolder”.
I have searched cyberspace in order to see if there are any similar errors, but the only thing I get attached to this error is something regarding the BizTalk Lob Adapter. But I have this adapter installed. I have also made sure that through the Platform Settings (in the Admin Console) have connected the Host Instance to both Send and Receive File. I have tried to run the deploy by both using escaped, and unescaped PortBindingsMaster.xml. I have even stripped the PortBindingsMaster-file for FILE-ports and manually created them before exporting the "new" binding-file in order to see if there are any differences from the newly created port vs what I have in my original PortBindingsMaster-file. Which it was not. If I then used the parameters in the "newly exported bindings-file" it also gave me the same error.

I believe it is something regarding the SettingsFileGenerator's parameters and the PortBindingsMaster.xml.


Some additional info:
In the btdfproj:   <IncludeSchemas>True</IncludeSchemas><IncludeOrchestrations>True</IncludeOrchestrations><IncludeTransforms>True</IncludeTransforms><IncludePipelines>True</IncludePipelines><IncludeComponents>True</IncludeComponents><IncludePipelineComponents>True</IncludePipelineComponents><IncludeCustomFunctoids>False</IncludeCustomFunctoids><IncludeVocabAndRules>False</IncludeVocabAndRules><IncludeVirtualDirectories>False</IncludeVirtualDirectories><IncludeMessagingBindings>True</IncludeMessagingBindings><IncludeDeploymentTest>False</IncludeDeploymentTest><Includelog4net>False</Includelog4net><IncludeSSO>False</IncludeSSO><IncludeEsbItineraries>False</IncludeEsbItineraries><IncludeBam>False</IncludeBam><IncludeInstallUtilForComponents>False</IncludeInstallUtilForComponents><UsingMasterBindings>True</UsingMasterBindings><ApplyXmlEscape>False</ApplyXmlEscape><RequireXmlPreprocessDirectives>True</RequireXmlPreprocessDirectives><IncludeSettingsSpreadsheetInMsi>True</IncludeSettingsSpreadsheetInMsi><IncludeCompsAndVDirsAsResources>False</IncludeCompsAndVDirsAsResources><SkipIISReset>True</SkipIISReset><SkipHostInstancesRestart>False</SkipHostInstancesRestart><StartApplicationOnDeploy>False</StartApplicationOnDeploy><EnableAllReceiveLocationsOnDeploy>False</EnableAllReceiveLocationsOnDeploy><StartReferencedApplicationsOnDeploy>False</StartReferencedApplicationsOnDeploy><UseIsolatedAppDomain>False</UseIsolatedAppDomain><EnableBizTalkExtendedLogging>False</EnableBizTalkExtendedLogging><EnableBizTalkAssemblyValidation>False</EnableBizTalkAssemblyValidation><EnableBizTalkCorrelationValidation>False</EnableBizTalkCorrelationValidation><EnableBizTalkSchemaValidation>False</EnableBizTalkSchemaValidation><ManageFileAdapterPhysicalPaths>True</ManageFileAdapterPhysicalPaths>(The ManageFileAdapterPhysicalPath-setting has been tried both True and False, and without..)

Example of a SendPort which gives an error(among other FILE-ports):
<PrimaryTransport>  <Address>${Ordrsp_Sjekk_Av_Dtm100}\%MessageID%.xml</Address>  <TransportType Name="FILE" Capabilities="11" ConfigurationClsid="5e49e3a6-b4fc-4077-b44c-22f34a242fdb" />  <TransportTypeData>    <CustomProps>               <UseTempFileOnWrite vt="11">0</UseTempFileOnWrite>    <AllowCacheOnWrite vt="11">0</AllowCacheOnWrite>    <CopyMode vt="19">1</CopyMode>    <FileName vt="8">%MessageID%.xml</FileName>    </CustomProps>  </TransportTypeData>  <RetryCount>3</RetryCount>  <RetryInterval>5</RetryInterval>  <ServiceWindowEnabled>false</ServiceWindowEnabled>  <FromTime>2000-01-01T22:00:00</FromTime>  <ToTime>2000-01-01T21:59:59</ToTime>  <Primary>true</Primary>  <OrderedDelivery>false</OrderedDelivery>  <DeliveryNotification>1</DeliveryNotification>  <SendHandler Name="BizTalkServerApplication" HostTrusted="false">    <TransportType Name="FILE" Capabilities="11" ConfigurationClsid="5e49e3a6-b4fc-4077-b44c-22f34a242fdb" />  </SendHandler></PrimaryTransport>

ParameterSettings in SettingsFileGenerator:Under Settings: Ordrsp_Sjekk_Av_Dtm100Under Local Development (where Generate File is Yes and SettingsFileName is Exported_LocalSettings.xml)C:\MyProject\ordrsp_til_sjekk_av_dtm100
As far as I can see the path and the usage of the backslash, and the path itself, should not give me any error of this nature.
This problem is a big showstopper for us since it prevents us from using the parameters attached to the physical paths. It is very important for us to use the parameters since some environment uses the D-drive instead of the C-drive.
Would appreciate any feedback!
Thank you.

Coordinator
Sep 10, 2012 at 4:15 PM

Hi,

Have you opened and reviewed PortBindings.xml, which is generated from the combination of PortBindingsMaster.xml and the settings XML file?  You should look there first to see if your tokens are being replaced as expected.

If so, then you need to first manually configure the bindings in BizTalk Admin, then export the bindings to a file.  Next, use WinMerge or some other diff tool to compare the generated PortBindings.xml in your project folder with the one you exported.

An extra carriage return or an extra character in the wrong place in the bindings XML can be enough to cause the import to fail if it falls in the wrong place.

Thanks,
Tom

Sep 13, 2012 at 8:27 AM

Hi Tom and thanks for your reply!

It's almost emberrassing, but I figured out the problem and it was something as stupid as a setting in the btdfproj-file. The reason why all the ports, which had a physical path like C:\, got an error was because I had <RequireXmlPreprocessDirectives>True</RequireXmlPreprocessDirectives> in my btdfproj-file.

So whenever I used a parameter for giving an address for a SendPort, the installation failed because instead of getting something like C:\, it got ${.....}.

But things are working now and the sun is shining once again!

Thank you!

Coordinator
Sep 16, 2012 at 3:48 AM

Excellent, glad to hear that!

Thanks for the update,
Tom