0

jBPM 5.4 サポートをサーブレットに追加しようとしています。JBoss 7.1 で実行するように Tomcat サーブレットを移植し、jBPM サポートを追加しようとしています。jbpm-5.4.0.Final-installer-full.zip を実行して JBoss/jBPM を Kepler と共にインストールしました (Kepler をインストールするには、インストーラーにパッチを適用する必要がありました)。次に、インストーラーの「評価」サンプルから次の 2 行のコードをコピーし、サーブレットに配置しました。

KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add(ResourceFactory.newClassPathResource("Evaluation.bpmn"), ResourceType.BPMN2);

必要なインポートを追加した後、クリーン ビルドを取得しました。drools-distribution-5.5.0.Final.zip ( http://www.jboss.org/drools/downloadsから) の JARS を .\WEB-INF\lib に配置し、最初のjBPM コードの行 (KnowledgeBuilder 行。ただし、2 行目 (ResourceFactory.newClassPathResource() を使用) にまたがると、次のようになります。

12:29:02,243 エラー [stderr] (http-localhost-127.0.0.1-8080-1) java.lang.IllegalArgumentException: クラス 'org.drools.compiler.BPMN2ProcessProvider' のサービスをインスタンス化できません 12:29:02,243 エラー [ stderr] (http-localhost-127.0.0.1-8080-1) at org.drools.util.ServiceRegistryImpl.get(ServiceRegistryImpl.java:166) 12:29:02,243 エラー [stderr] (http-localhost-127.0.0.1- 8080-1) org.drools.compiler.BPMN2ProcessFactory.loadProvider(BPMN2ProcessFactory.java:28) で ...

12:29:02,259 エラー [stderr] (http-localhost-127.0.0.1-8080-1) 原因: java.lang.ClassNotFoundException: org.jbpm.bpmn2.BPMN2ProcessProviderImpl from [Module "deployment.MyServer.war:main"サービス モジュール ローダーから] 12:29:02,259 ERROR [stderr] (http-localhost-127.0.0.1-8080-1) org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190) で

私の質問は次のとおりです。1) このエラーは JAR が見つからないためですか? もしそうなら、不足しているJARを教えてもらえますか? 2) サンプルの BPMN ファイル (Evaluation.bpmn) をクラスパスに配置するだけで、コードはそれを見つけることができますか?

ありがとうございました。アル

4

1 に答える 1

0

私は同様の問題に直面しました。このエラーは、jar ファイルが見つからないことが原因です。jbpm-bpmn2-5.4.0.Final.jar を web-inf/lib フォルダーに追加して、このエラーを解決しました。この jar ファイルは、jbpm-installer/runtime フォルダーにあります。

于 2013-10-05T16:09:01.783 に答える