問題タブ [kie-wb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
deployment - KIE Workbench - 大きなルールファイル.xls をアップロードする方法
Kie Workbench に 45000 のルールをアップロードしています。これらのルールは、1 つの Excel シートで宣言されています。5 つのファイルを 1 つの KIe_project にアップロードし、合計で最大 200,000 のルールを作成する予定です。
問題文
現在、20,000 ルールの場合、検証とビルドに多くの時間がかかります VM オプションを次のように上げる必要があります。そうしないと、応答時間が非常に長くなり、java.io.buffersize が例外 Xms=512m Xmx=7168 MaxPermGen を超えることがあります=4096 ルール ファイルに検証エラーが含まれている場合、検証だけで 15 分かかります
xls ファイルを GDST 形式に変換してから Build&Deploy プロジェクトに 1 時間以上かかります。検証エラー、ビルドの失敗、デプロイの成功が 1 時間後にわかるようになったことは満足のいくものではありません。
他の接続ユーザーは、そのような大きなファイルのアップロード/検証/デプロイ中に Kie-Workbench で操作を実行できません
xls ファイルを gdst 形式に正常に変換した後、ガイド付きデシジョン テーブルの編集で 10,000 レコードを読み込めません。
各検証またはアップロード中に、アーティファクトをhttp://repo1.maven.org/maven2にデプロイできないというエラーが発生します。Kie-WB にのみアップロードしています。なぜ、デプロイのために前述のリポジトリに行くのですか。次に、 http://repo1.maven.org/maven2ではなく、アセットをデプロイする必要がある組織に独自の nexus リポジトリをデプロイします。参考までに、kie-project の pom で maven を使用してリポジトリにデプロイしています。
drools - Drools 6.2.0 ワークベンチが drl ルールから jbpm 変数を編集
プロセス変数をビジネス ルール タスクに入れ、このタスクでこの変数を変更しようとしましたが、値は同じままです。私は何を間違っていますか?プロセスは、Eclipse を使用せずに kie ワークベンチで開発されます。
ルールが実行される前にスクリプト タスクで初期化された変数
ルールは次のようになります
トリガー変数が変更されるのを待っていますが、そのままです
データ割り当ては問題なく、Tomcat ログには「Phys!!!!」などのデバッグ メッセージが含まれています。私は何を間違っていますか?
助けてくれてありがとう!
drools - Drools Workbench と KIE Server を使用した HelloWorld
JBoss 7 Application Server ローカルインスタンス内に KIE Drools Workbench 6.2.0 Final をインストールし、ローカル Tomcat 7 インスタンス内に Kie Server 6.2.0 Final をインストールします。
Web ベースの KIE Workbench を厳密に評価目的で使用する (Java ベースの Maven プロジェクトをコード生成するために使用し、Eclipse や IntelliJ IDEA などの特定の IDE を使用していない):
testRepo という新しいリポジトリを作成しました
HelloWorld という新しいプロジェクトを作成しました
メッセージと呼ばれる文字列プロパティを持つ HelloWorld と呼ばれる新しいデータ オブジェクトを作成しました。
/li>次の内容を含む新しい DRL を作成しました。
/li>この URL で Kie サーバーにデプロイすると、次のようになります。
http://localhost:8080/kie-server-6.2.0.Final-webc/services/rest/server/containers/helloworld
上記の URL をコピーして Google Chrome に貼り付けると、次の応答が返されます。
次のペイロードを使用して POST を実行しようとすると (Postman または SoapUI を使用):
以下を受け取りました。
HTTP ステータス 415 - コンテンツ タイプ タイプを消費できません ステータス レポート メッセージ コンテンツ タイプを消費できません
説明 リクエスト エンティティが、リクエストされたメソッドのリクエストされたリソースでサポートされていない形式であるため、サーバーはこのリクエストを拒否しました。
私は間違っている可能性がありますか?Deploy -> Rule Deployments に移動し、kie-server を登録し、helloworld というコンテナーを作成しました。ステップ 5 からわかるように、うまくいきました。おそらく私はそれを正しく展開していませんか?
ところで、私は次のスタックオーバーフローの投稿を基礎として使用しました(この質問をする前に)...
Google からの検索結果のほとんどは、Maven ベースのプロジェクトをセットアップすることにより、プログラムで Drools プロジェクトを作成する方法を説明しているだけです。KIE Drools Workbench を評価して、非技術者が KIE Drools Workbench を使用して Drools ベースのルールを生成して実行する方法を簡単に確認しています。
手順がありませんか?Tomcat 7 では、apache-tomcat-7.0.64/webapps/kie-server-6.2.0.Final-webc の下に次のディレクトリのみが含まれます。
メタINF
WEB-INF
これを読んでくれてありがとう...
mysql - MySQL jBPM 6.2 デプロイメント エラー
jBPM 6.2 で H2 を MySQL に切り替えるためにいくつかの問題を解決した後。指示に従って 3.6.3 を変更しました。独自のデータベースを使用する。展開中にスローされるこのエラーで立ち往生しています。誰かがこれを解決しましたか、私は修正を見つけることができませんでした。私の環境: Wildfly 8.1 Jbpm 6.2 Final MySQL 5.7.9
.FAILED ファイルからのスタック トレースを次に示します。
eclipse - Kie Workbench を Eclipse に接続して、kie Workbench で作成したプロジェクトを Eclipse で使用できるようにするにはどうすればよいですか?
レスト コールを行いたいのですが、kie ワークベンチでレスト コールを行うオプションがありません。kie ワークベンチでプロジェクトを作成し、このプロジェクトを eclipse に接続してコーディングを行うことは可能ですか。
drools - DRL から jbpm プロセス変数を更新できません
現在、jbpm/drools の使用を開始しており、「ビジネス ルール タスク」を使用して DRL からいくつかのプロセス変数を変更しようとしました。タイプ「MyCustomObject」の変数「var」を宣言したプロセスで次のことを試しました。
この質問とこの推奨事項の結果に従って、ruleflow-group「testgroup」を実行し、次の onEntry スクリプトを持つタスクを作成しました。
私の DRL は次のようになります。
ビジネス ルール タスクの後に、単純なスクリプト タスクを配置しました。
私が得た出力は次のとおりです(注:MyCustomObjectはtoStringをオーバーライドしません):
メモリ内のオブジェクトの値: MyCustomObject@XYZ
変数内のオブジェクトの値: MyCustomObject@XYZ
var が null です。
この時点で、何が悪かったのかわかりません。出力からわかるように、ワーキング メモリ内の ProcessInstance は変数を正しく設定していますが、その値はプロセス自体には存在しません (したがって、他のノードがアクセスするため)。
追加情報:
現在、JBoss EAP 6.4 でワークベンチ バージョン 6.4.0.Final を使用しており、別の EAP 6.4 インスタンスで実行されている KieExecutionServer (6.4.0.Final) にコンテナーをデプロイしています。
任意の提案をいただければ幸いです。
java - JBPM 6.4.0 で再利用可能なサブプロセスと変数を交換するには?
jbpm プロセスの構造を改善したかったので、再利用可能なサブプロセスにいくつかのものをカプセル化しようとしました。ドキュメントの指示に従って、最初にその動作を検証するための簡単なテスト プロセスを作成しました。
これを実現するために、次のように定義しました。
String 型の 2 つの変数「sub_in」と「sub_out」を持つ (親) プロセス。タイプ String の 2 つの変数「in_sub」と「out_sub」を持つ 2 番目の (子) プロセス。
親プロセスには、"sub_in" を "input" に設定するスクリプト タスク、サブプロセス タスク (子プロセスを呼び出す)、および "sub_out" の値を出力する 2 番目のスクリプト タスクが含まれます。
子プロセスには、「in_sub」の値を出力し、「out_sub」を「output」に設定する単一のスクリプト タスクが含まれています。さらに、(Name: "in_sub", Data Type: "String", Source "sub_in") と (Name "out_sub", Data Type: "String", Target: "sub_out") の I/O マッピングを定義しました。
驚いたことに、どちらのスクリプトも、対応する変数の値としてnullを出力します。この機能はバージョン 6.4.0 で壊れていますか? 何か不足していますか?Google グループで同様の質問を見ましたが、何の反応もありませんでした。
参考: Kie-Workbench と KIE Execution サーバー (2 つの JBoss EAP 6.4 インスタンスで両方ともバージョン 6.4.0.Final) を使用してプロセスを設計および実行しています。
任意の提案をいただければ幸いです。
drools - jbpmでタイムアウトを使用して並列実行を正しくモデル化する方法は?
kie-workbench を使用した jbpm とモデリングの助けが必要です。私のシナリオ:
ユーザーには、潜在的なサービス プロバイダーのリストが表示されます。彼はこれらの複数を選択し、プロバイダーがその要求に応答する期限として機能する日付を指定できるようになりました (保留中の要求は、タイムアウトになると「プロバイダーが要求を拒否した」と解釈されます)。すべての応答が (応答またはタイムアウトによって) 利用可能になった後、プロセスは続行され、応答がユーザーに提示されます。
jbpm を使用してこの動作をモデル化する必要があり、そのための最良のアプローチを知りたいです。
私の最初のアイデアは、その目的のために単に「複数インスタンスのサブプロセス」を使用することでした
残念ながら、これらは順次実行されるため、別のプロバイダーがすでにタイムアウトしているため、サービスプロバイダーが応答できない可能性があるため、これは不可能です。また、実行されるインスタンスの数は実行時に決定されるため、単純な並列ゲートウェイではどちらも機能しません。
jbpm を使用してこのシナリオを適切にモデル化する方法について何か提案はありますか?
編集:
以下が「汚い」と見なされるかどうかはわかりませんが、これは私の現在の考えです(まだ完全には実装されていません):
「呼び出された要素」としてサブプロセスノードによって参照されるプロセス変数「subProcId」を追加します。このノードの直前に、次の処理を行うカスタム サービス タスクを呼び出します。
- RuleFlowProcessFactoryを使用して、現在のランタイム データに基づいてプロセス定義を作成します。
- プロセスを構築し、REST-API を使用して実行サーバーにアップロードします。
- 作成されたプロセスのIDを含むように「subProcId」を設定します
このアプローチを使用して、必要な発信接続の正確な量を持つ並列ゲートウェイを含むサブプロセスを定義できます。
これが良いアイデアであり、実際に機能するかどうかのアイデアはありますか?