2

ルールの作成に Kie ワークベンチ 6.3.0 を使用しています。ストリーム モードでルールを実行しようとしています。kie-wb でプロジェクトを作成し、その中に kie-base を作成しました。これには kie サーバーランタイムを使用しています。これは、生成された kmodule コードです。

<kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <kbase name="myKieBase" default="false" eventProcessingMode="stream" equalsBehavior="identity" packages="*"/>
</kmodule>

以下は、persistence.xml ファイルです。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:orm="http://java.sun.com/xml/ns/persistence/orm" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd http://java.sun.com/xml/ns/persistence/orm http://java.sun.com/xml/ns/persistence/orm_2_0.xsd">
    <persistence-unit name="com.sample:EventBusinessRules:2.6" transaction-type="JTA">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <jta-data-source>java:jboss/datasources/ExampleDS</jta-data-source>
        <class>com.sample.EventData</class>
        <exclude-unlisted-classes>true</exclude-unlisted-classes>
        <properties>
            <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
            <property name="hibernate.max_fetch_depth" value="3"/>
            <property name="hibernate.hbm2ddl.auto" value="update"/>
            <property name="hibernate.show_sql" value="false"/>
            <property name="hibernate.id.new_generator_mappings" value="false"/>
            <property name="hibernate.transaction.jta.platform" value="org.hibernate.service.jta.platform.internal.JBossAppServerJtaPlatform"/>
        </properties>
    </persistence-unit>
</persistence>

Kie WB からプロジェクトをデプロイしているときに、次のエラーが発生します。

Deployment of unit com.sample:SampleBusinessRules:2.7 failed: [Error: could not create constructor: null] [Near : {... new org.drools.persistence.jpa.mar ....}] ^ [Line: 1, Column: 5]

このエラーを解決するのを手伝ってください。ありがとうございました

4

2 に答える 2

3

kie-deployment-descriptor.xml からマーシャリング タグを削除したところ、プロジェクトのデプロイ中にエラーは発生しませんでした。

<marshalling-strategy>
                <resolver>mvel</resolver>
                <identifier>new org.drools.persistence.jpa.marshaller.JPAPlaceholderResolverStrategy("com.sample.rules:EventBusinessRules:2.6", classLoader)</identifier>
                <parameters/>
            </marshalling-strategy>

このタグは の下にあり<marshalling-strategies>ます。kie-deployment-descriptor.xml のエディターから、追加された行を削除します。

于 2016-08-30T06:15:27.730 に答える
0

この persistence.xml ファイルは、ユニット com.sample:EventBusinessRules:2.6 用です。

<persistence-unit name="com.sample:EventBusinessRules:2.6" transaction-type="JTA">

デプロイしようとしているユニットは com.sample:SampleBusinessRules:2.7 です。最初のステップとして、xml で名前を変更してみてください。

于 2016-08-29T09:54:08.030 に答える