Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

[Kundera]NoSQL/OGM Error

More than 1 year has passed since last update.

Entity object is invalidについて

cassandra/NoSQLに限らず、persistence.xmlに対してアプリケーション管理環境で transaction-type="JTA"を指定していると、以下のエラーが出る。

java.lang.IllegalArgumentException: Entity object is invalid, operation failed. Please check previous log message for details at com.impetus.kundera.persistence.EntityManagerImpl.persist(EntityManagerImpl.java:174)

https://github.com/impetus-opensource/Kundera/wiki/Getting-Started-in-5-minutes
このサンプルでは問題ないが、EJB(コンテナ管理)とEntityManagerFactory(アプリケーション管理)を相互使用する、persistenceを定義はできないってことでいいのかな?

もし、同時に入れたり場合は、以下のように分けるのが良いかも?
とりあえず、エラーは無くなったことは確か。

  <persistence-unit name="kundera_pu" transaction-type="JTA">
    <provider>com.impetus.kundera.KunderaPersistence</provider>
    <properties>
      <property name="kundera.nodes" value="XX.XX.XX.XX"/>
      <property name="kundera.port" value="9160"/>

      <snip...>

    </properties>
  </persistence-unit>
  <persistence-unit name="kundera_pu_t" transaction-type="RESOURCE_LOCAL">
    <provider> com.impetus.kundera.KunderaPersistence </provider>
    <properties>
      <property name="kundera.nodes" value="XX.XX.XX.XX"/>
      <property name="kundera.port" value="9160"/>

      <snip...>

    </properties>
  </persistence-unit>

** 追記


```

に関しては、
```


```

の方が望ましいのかもしれない。default JTAなので同じだと思っていたんだがなー

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away