Closed tfabraham closed 6 years ago
[BizTalkers@11/28/2014] Found the cause of the problem - and it's not BTDF.
The values for the affiliate and fieldName variables I was pulling from a SQL db using SqlDataReader, this was appending CR LF at the end of the variable's value.
I guess it may be of use to leave this here in case anyone else falls into the same trap.
[UnknownUser@11/28/2014]
Issue closed by tfabraham with comment Not a BTDF issue
Reason closed Not BTDF
I'm using BizTalk 2013 and BTDF v5.5, I have SSOSettingsFileReader v5.5.100.0 in the .Net 4 GAC (there is no version in the .Net 2 GAC)
The SSOSettingsFileReader is normally rock solid but I've run out of ideas as to what is causing this problem.
I have an expression shape in an orchestration with the following code:
_ssoDetail = filenameHelper.GetSSODetails(filenamesDbConString, attachment.Filename); Microsoft.BizTalk.CAT.BestPractices.Framework.Instrumentation.TraceManager.WorkflowComponent.TraceInfo("ssoDetail.Affiliate=" + ssoDetail.Affiliate); Microsoft.BizTalk.CAT.BestPractices.Framework.Instrumentation.TraceManager.WorkflowComponent.TraceInfo("ssoDetail.field=" + ssoDetail.Field);
if (ssoDetail.Affiliate != null) { Microsoft.BizTalk.CAT.BestPractices.Framework.Instrumentation.TraceManager.WorkflowComponent.TraceInfo("Filename matches regex");
targetFolder = SSOSettingsFileManager.SSOSettingsFileReader.ReadString(ssoDetail.Affiliate, ssoDetail.Field);
Microsoft.BizTalk.CAT.BestPractices.Framework.Instrumentation.TraceManager.WorkflowComponent.TraceInfo("TargetFolder="+targetFolder);
The trace file output from the above code is as follows:
_[1]76CC.3A14::11/28/2014-10:39:05.964 [Event]:INFO: ssoDetail.Affiliate=BTS.GO.FactFeeds [1]76CC.3A14::11/28/2014-10:39:05.964 [Event]:INFO: ssoDetail.field=FootfallFILEReceiveLocation
[1]76CC.3A14::11/28/2014-10:39:05.964 [Event]:INFO: Filename matches regex [1]76CC.3A14::11/28/2014-10:39:05.982 [Event]:INFO: Caught Exception [1]76CC.3A14::11/28/2014-10:39:05.982 [Event]:INFO: exBase.Message=Requested SSO value FootfallFILEReceiveLocation
is not available within affiliate app BTS.GO.FactFeeds
Parameter name: valueName [1]76CC.3A14::11/28/2014-10:39:05.990 [Event]:ERROR: WorkflowComponent Exception Summary:
Timestamp: 28/11/2014 10:39:05.984 Machine Name: 000ALIEN004 Assembly Full Name: Microsoft.BizTalk.CAT.BestPractices.Framework, Version=1.0.0.0, Culture=neutral, PublicKeyToken=8f2a5bf0cda0e36b Assembly Version: 1.0.0.0 App Domain Name: _XDomain_3.0.1.0_0 Application Base Path: C:\Program Files (x86)\Microsoft BizTalk Server 2013\ Windows Identity: GOOUTDOORS\tom.cruise
Exception Information Details:
Exception Type: System.ArgumentException Message: Requested SSO value FootfallFILEReceiveLocation
is not available within affiliate app BTS.GO.FactFeeds
Parameter name: valueName ParamName: valueName TargetSite: System.String ReadString(System.String, System.String) Source: SSOSettingsFileReader HResult: -2147024809
Stack Trace Information Details:
at SSOSettingsFileManager.SSOSettingsFileReader.ReadString(String affiliateApplication, String valueName)
at BTS.GO.Core.Orchestrations.ProcessEmails.segment2(StopConditions stopOn)
at Microsoft.XLANGs.Core.SegmentScheduler.RunASegment(Segment s, StopConditions stopCond, Exception& exp)
So, it can be seen from the trace that I'm using an affiliate app name of "BTS.GO.FactFeeds" and a field name of "FootfallFILEReceiveLocation". These values were entered into SSO by the BTDF.
I've create a simple winforms app with the following code behind a button click:
MessageBox.Show(SSOSettingsFileReader.ReadString("BTS.GO.FactFeeds", "FootfallFILEReceiveLocation"));
This works and retrieves the expected value from SSO. I have tried running the winforms app exe directly (no from VS) when run as the same identity as the BizTalk host instance - it works in each case.
My question is, why is the winforms app able to retrieve the value but the orchestration is not?
Any suggestions would be appreciated! Thanks, Rob Bowman
This work item was migrated from CodePlex
CodePlex work item ID: '10788' Vote count: '1'