【问题标题】:BizTalk BRE InvalidCastExceptionBizTalk BRE InvalidCastException
【发布时间】:2009-05-08 16:32:04
【问题描述】:

我已将新 VM(运行 Windows Server 2003 的 MS 虚拟服务器)配置为托管 BizTalk Server 2006 的现有 VM 的副本。我遇到了 BRE 处理问题。策略的部署和词汇表的发布与工作 VM 上的完全相同。

一个编排调用一个辅助组件,该组件又使用 BRE 组件。辅助组件中似乎执行的最后一行是:

Policy workflowPolicy = new Policy(policyName)

我已经从下面的事件日志中粘贴了堆栈跟踪:

Exception type: InvalidCastException
Source: Microsoft.RuleEngine
Target Site: Int32 GetInt32(System.String, Int32)
The following is a stack trace that identifies the location where the exception occured
   at Microsoft.RuleEngine.Configuration.GetInt32(String key, Int32 defaultValue)
   at Microsoft.RuleEngine.ReteTranslator.RuleSetToReteTranslatorImpl.Translate(RuleSet ruleset, Int32 duration)
   at Microsoft.RuleEngine.ReteTranslator.RuleSetToReteTranslator.Translate(RuleSet ruleset, Int32 duration)
   at Microsoft.RuleEngine.RuleEngine..ctor(RuleSet ruleSet, Boolean doOptimizations)
   at Microsoft.RuleEngine.RuleEngineCache.Allocate(String rulesetName, Int32 majorRevision, Int32 minorRevision, TrackingConfiguration& trackingConfig)
   at Microsoft.RuleEngine.RuleEngineCache.Allocate(String rulesetName, TrackingConfiguration& trackingConfig)
   at Microsoft.RuleEngine.Policy..ctor(String policyName)
   at Tesco.BRE.Services.PolicyServices.Direct.OrderWorkflowServices.Commands.GetNextTaskList.Execute()
   at Tesco.DataSources.Integration.Common.CommandBase.CommandDecorators.CommandLoggingDecorator`1.Execute()
   at Tesco.DataSources.Integration.Common.CommandBase.CommandUtilities.GetCommandResponse[T](CommandBase`1 command)
   at Tesco.BRE.Services.PolicyServices.Direct.OrderWorkflowServices.OrderWorkflowOperations.GetNextTaskList(String currentTaskName, String currentTaskStatus, XmlDocument order)
   at Tesco.Direct.OrderManagement.Orchestrations.FollowTaskResult.segment2(StopConditions stopOn)
   at Microsoft.XLANGs.Core.SegmentScheduler.RunASegment(Segment s, StopConditions stopCond, Exception&

似乎正在向 Microsoft.RuleEngine.Configuration.GetInt32 传递一个无法转换为 Int32 的值?

我已尝试取消配置/重新配置 BRE。据我所知,新服务器上的所有内容都完全按照工作服务器进行配置。

任何帮助,感激不尽 - 我整天都被这个问题困扰!

【问题讨论】:

    标签: biztalk biztalk-rule-engine


    【解决方案1】:

    如果遵循堆栈跟踪,则可以读取“缓存”和“跟踪”。我会尝试重新启动主机并取消选中 HAT 中的任何规则跟踪。

    【讨论】:

    【解决方案2】:

    感谢您的回复马丁。我现在已经解决了这个问题。问题是进行注册表更改时的用户错误(我的)。我必须按如下方式创建一个 reg 设置

    HKLM\SOFTWARE\Microsoft\BusinessRules\3.0\StaticSupport (DWORD), value 2
    

    为了使 BRE 能够使用静态方法。这在以下位置进行了描述:http://technet.microsoft.com/en-us/library/dd298814.aspx

    虽然我在配置服务器时进行了添加,但我无意中使用了字符串而不是 dword。因为这花了我一天多的时间才能弄清楚 - 我不会很快犯同样的错误!

    【讨论】:

      猜你喜欢
      • 2020-10-31
      • 1970-01-01
      • 1970-01-01
      • 2019-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多