1

BizTalk Server 2006 をホストしている既存の VM のコピーとして、新しい VM (Windows Server 2003 を実行する MS Virtual Server) を構成しました。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 の構成解除/再構成を試みました。私が知る限り、新しいサーバーのすべてが稼働中のサーバーとまったく同じように構成されています。

どんな助けでも、感謝して受け取ります-私は一日中これにこだわっています!

4

2 に答える 2

1

返信ありがとうございます。私は今問題を修正しました。問題は、レジストリを変更する際のユーザー エラー (私のもの) でした。次のようにreg設定を作成する必要がありました

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

BRE が静的メソッドを利用できるようにするため。これについては、http ://technet.microsoft.com/en-us/library/dd298814.aspx で説明されています。

サーバーを構成するときに追加しましたが、うっかり dword ではなく文字列を使用してしまいました。これを理解するのに1日以上かかったので、すぐに同じ間違いをすることはありません!

于 2009-05-09T19:27:56.513 に答える
1

スタック トレースをたどると、「キャッシュ」と「トラッキング」を読み取ることができます。ホストを再起動して、HAT のルール トラッキングのチェックを外します。

于 2009-05-08T21:48:20.960 に答える