Class kodo.util.ObjectNotFoundException

Hi,
I'm getting this exception when running my application
class kodo.util.ObjectNotFoundException
The instance of type "com.jario.server.entitymodel.EntityLocation" with oid
"com.jario.server.entitymodel.EntityLocation-753" no longer exists in the
data store. This may mean that you deleted the instance in a separate
persistence manager, but this persistence manager still has a cached
version.
kodo.runtime.StateManagerImpl.loadFields(StateManagerImpl.java:2667)
kodo.runtime.StateManagerImpl.loadField(StateManagerImpl.java:2744)
kodo.runtime.StateManagerImpl.isLoaded(StateManagerImpl.java:1116)
com.jario.server.entitymodel.EntityLocation.jdoGetfileStorageType(EntityLoca
tion.java)
But the object is the in database with JDOID 753.
When I restart the instance It finds it no bother.
I'm running Kodo 3.0.1 Ent. (Licenced)
Why is this happening?
Kind Regards
Graham Cruickshanks

Kodo 3.0.2 seems to have fixed this issue.
Cheers
Graham Cruickshanks
"Graham Cruickshanks" <[email protected]> wrote in message
news:buqr0f$7qk$[email protected]..
>
"Abe White" <[email protected]> wrote in message
news:buq0t4$kg9$[email protected]..
Are you using the data cache?No, Kodo.properties are as follows
javax.jdo.PersistenceManagerFactoryClass:
kodo.jdbc.runtime.JDBCPersistenceManagerFactory
kodo.LicenseKey: <REMOVED>
kodo.PersistenceManagerImpl: CloseOnManagedCommit=true
kodo.jdbc.SequenceFactory: PrimaryKeyColumn=PKX, SequenceColumn=SEQUENCEX,
TableName=JDO_SEQUENCEX
kodo.FlushBeforeQueries: true
javax.jdo.option.IgnoreCache: false
javax.jdo.option.ConnectionDriverName: com.mysql.jdbc.Driver
javax.jdo.option.ConnectionPassword:
javax.jdo.option.ConnectionURL:
jdbc:mysql://localhost/JarioServer?autoReconnect=true
javax.jdo.option.ConnectionUserName: JarioServer
kodo.jdbc.DBDictionary: mysql(StoreCharsAsNumbers=false, TableType=InnoDB)
Have you possibly deleted the object and flushed within the same
transaction?I have no delete actions this part of my application, so this is an
impossablity
If you enable SQL logging, you can see the last SELECT statement that is
failing. What happens if you run this against your DB directly?I'm experiencing other problems than just the listed error. I'mexperiencing
sporadic null pointer exceptions on call's that should return values from
the database.
The SQL trace shows the 'Select' query has been done, and if I try running
this with direct SQL to database it returns results. The results in the
tables where this happens have not be written too since applicationstartup.
so i can't be a flushing/datacache error.
The database & driver has not changed from KODO 2.x which worked fine.
Details
Database: 4.10.13-nt
Driver: mysql-connector-java-3.0.9-stable-bin.jar (Tried 3.0.10 as well,
same issue)
Java version: 1.4.2_01-b06
Kodo: 3.0.1

Similar Messages

  • Kodo.util.*Identity not working in 3.3.2?

    Hi, I have been trying to use one of the kodo identity classes for
    application identity:
    <class name="Person"
    identity-type="application"
    objectid-class="kodo.util.LongIdentity"
    unfortunately the enhancer fails on a missing constructor??
    [jdoc] kodo.util.FatalUserException: The objectid-class specified
    by type "class kodo.Person" does not have public a no-args constructor.
    2nd related question: I developed my own LongIdentity that has the missing
    constructor and was planning to use it for most of my object model. on
    some occasions, kodo seems to get confused about using the same
    object-id-class for more than 1 persistent class:
    <class name="Person"
    identity-type="application"
    objectid-class="kodo.AddressId" <!-- similar to
    kodo.util.LongIdentity, used as well by persistent class Address -->
    trying to load by id a Person:
    Person person = (Person) ((KodoPersistenceManager)
    pm).getObjectById(Person.class, ""+2000); // select
    6750 TRACE [main] kodo.jdbc.SQL - <t 31737213, conn 19287723> [0 ms]
    executing prepstmnt 26665270 SELECT t0.CITY, t0.STREET FROM ADDRESS t0
    WHERE t0.ID = ? [params=(long) 2000] [reused=0]
    kodo.util.ObjectNotFoundException: The instance "2000 [kodo.AddressId]"
    does not exist in the data store.[2000 [kodo.AddressId]]
         at
    kodo.runtime.PersistenceManagerImpl.getObjectById(PersistenceManagerImpl.java:2090)
         at
    kodo.runtime.PersistenceManagerImpl.getObjectById(PersistenceManagerImpl.java:2005)
         at
    kodo.runtime.PersistenceManagerImpl.getObjectById(PersistenceManagerImpl.java:2285)
    the problem is that a select on the address table gets executed??
    note: if I make a copy/paste of my AddressId and rename it PersonId, then
    this works fine.
    if all pk are of type long, are we expected to subclass
    kodo.util.LongIdentity and add the default constructor for each persistent
    class?
    thanks for the help,
    v.

    here you go:
    <?xml version="1.0" encoding="UTF-8"?>
    <jdo>
         <package name="kodo">
              <class name="Address" identity-type="application">
                   <extension vendor-name="kodo" key="jdbc-class-map"
    value="base"></extension>
                   <extension vendor-name="kodo" key="jdbc-class-map/table"
    value="ADDRESS"></extension>
                   <extension vendor-name="kodo" key="jdbc-version-ind"
    value="none"></extension>
                   <extension vendor-name="kodo" key="jdbc-class-ind-name"
    value="none"></extension>
                   <extension vendor-name="kodo" key="detachable"
    value="serialize"></extension>
                   <field name="id" primary-key="true">
                        <extension vendor-name="kodo" key="sequence-assigned"
    value="true"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map"
    value="value"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map/column"
    value="ID"></extension>
                   </field>
                   <field name="city">
                        <extension vendor-name="kodo" key="jdbc-field-map"
    value="value"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map/column"
    value="CITY"></extension>
                   </field>
                   <field name="street">
                        <extension vendor-name="kodo" key="jdbc-field-map"
    value="value"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map/column"
    value="STREET"></extension>
                   </field>
              </class>
              <class name="Person" identity-type="application">
                   <extension vendor-name="kodo" key="jdbc-class-map"
    value="base"></extension>
                   <extension vendor-name="kodo" key="jdbc-class-map/table"
    value="PERSON"></extension>
                   <extension vendor-name="kodo" key="jdbc-version-ind"
    value="none"></extension>
                   <extension vendor-name="kodo" key="jdbc-class-ind-name"
    value="none"></extension>
                   <extension vendor-name="kodo" key="detachable"
    value="serialize"></extension>
                   <field name="addresses" default-fetch-group="true">
                        <collection element-type="kodo.Address">
                        </collection>
                        <extension vendor-name="kodo" key="jdbc-field-map"
    value="one-many"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map/ref-column.ID"
    value="P_ID"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map/table"
    value="ADDRESS"></extension>
                   </field>
                   <field name="firstname">
                        <extension vendor-name="kodo" key="jdbc-field-map"
    value="value"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map/column"
    value="FIRSTNAME"></extension>
                   </field>
                   <field name="id" primary-key="true">
                        <extension vendor-name="kodo" key="sequence-assigned"
    value="true"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map"
    value="value"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map/column"
    value="ID"></extension>
                   </field>
                   <field name="lastname">
                        <extension vendor-name="kodo" key="jdbc-field-map"
    value="value"></extension>
                        <extension vendor-name="kodo" key="jdbc-field-map/column"
    value="LASTNAME"></extension>
                   </field>
              </class>
         </package>
         <!--
              To use additional vendor extensions, create a vendor-extensions.xml file
    that
              contains the additional extensions (in extension tags) and place it in
    your
              projects merge dir.
         -->
    </jdo>
    Patrick Linskey wrote:
    Hi Vincent,
    Can you post the .jdo file that XDoclet is creating please?
    -Patrick
    Vincent Sevel wrote:
    I tried that but run into another exception:
    * @jdo.persistence-capable identity-type="application"
    * @jdo.class-vendor-extension vendor-name="kodo" key="jdbc-class-map"
    value="base"
    * @jdo.class-vendor-extension vendor-name="kodo"
    key="jdbc-class-map/table" value="PERSON"
    * @jdo.class-vendor-extension vendor-name="kodo" key="jdbc-version-ind"
    value="none"
    * @jdo.class-vendor-extension vendor-name="kodo"
    key="jdbc-class-ind-name" value="none"
    * @jdo.class-vendor-extension vendor-name="kodo" key="detachable"
    value="serialize"
    public class Person implements Serializable {
    * @jdo.field primary-key="true"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="sequence-assigned" value="true"
    * @jdo.field-vendor-extension vendor-name="kodo" key="jdbc-field-map"
    value="value"
    * @jdo.field-vendor-extension vendor-name="kodo"
    key="jdbc-field-map/column" value="ID"
    private Long id;
    javax.jdo.JDOFatalInternalException
         at kodo.Person.jdoNewObjectIdInstance(Person.java)
         at kodo.util.ApplicationIds.create(ApplicationIds.java:280)
         at
    kodo.runtime.PersistenceManagerImpl.makePersistent(PersistenceManagerImpl.java:2424)
         at
    kodo.runtime.PersistenceManagerImpl.makePersistent(PersistenceManagerImpl.java:2371)
    >>
    Person p1 = new Person();
    p1.setFirstname("vince");
    p1.setLastname("sevel");
    Address adr1 = new Address();
    adr1.setStreet("1er mai");
    adr1.setCity("geneve");
    p1.getAddresses().add(adr1);
    pm.makePersistent(p1);
    I must be missing a flag or property somewhere??
    thanks,
    v.
    Abe White wrote:
    When using single field identity in JDO, you don't list an objectid-class
    at
    >>
    all
    in your metadata. Just set identity-type to "application".

  • Kodo.util.UnsupportedException: null

    Hello,
    Now I'm getting further. I was able to persist my objects!
    However, I have an error regarding NamedQuery.
    Here is the error:
    Exception in thread "main" <3|true|4.0.0EA3>
    kodo.util.UnsupportedException: null
         at
    kodo.query.ExpressionStoreQuery.executeUpdate(ExpressionStoreQuery.java:232)
         at
    kodo.query.ExpressionStoreQuery$DataStoreExecutor.executeUpdate(ExpressionStoreQuery.java:588)
         at
    kodo.query.ExpressionStoreQuery$DataStoreExecutor.executeUpdate(ExpressionStoreQuery.java:598)
         at kodo.query.QueryImpl.update(QueryImpl.java:1223)
         at kodo.query.QueryImpl.execute(QueryImpl.java:950)
         at kodo.query.QueryImpl.updateAll(QueryImpl.java:1005)
         at kodo.query.DelegatingQuery.updateAll(DelegatingQuery.java:812)
         at kodo.persistence.QueryImpl.executeUpdate(QueryImpl.java:300)
         at com.dalitest.ClientsDAO.updateClient(ClientsDAO.java:35)
    The error is cryptic as well.
    It happens for this code:
    public int updateClient(EntityManager em, Client c)
    Query q = em.createNamedQuery("UpdateClient");
    //q.setParameter("newName", c.getName());
    q.setParameter("cId", c.getId());
    return q.executeUpdate();
    And for my Client class I have (snipped):
    @NamedQueries( {
    @NamedQuery(name = "UpdateClient", queryString = "UPDATE Client c SET
    c.name=:newName WHERE c.id=:cId"),
    @NamedQuery(name = "DeleteClient", queryString = "DELETE from Client c
    WHERE c.id=:cId") })
    @Entity(access = AccessType.PROPERTY)
    @Table(name = "DALI_CLIENTS")
    public class Client {...}
    In case I do uncomment q.setParameter("newName", c.getName());
    The following exception is thrown:
    Exception in thread "main" <4|false|4.0.0EA3>
    kodo.persistence.ArgumentException: More parameters were passed to
    execute() than were declared: {1} parameters were specific for query
    execution, but only {0} parameters were declared in the query.
         at kodo.query.QueryImpl.assertParameters(QueryImpl.java:1871)
         at kodo.query.QueryImpl.execute(QueryImpl.java:941)
         at kodo.query.QueryImpl.updateAll(QueryImpl.java:1005)
         at kodo.query.DelegatingQuery.updateAll(DelegatingQuery.java:812)
         at kodo.persistence.QueryImpl.executeUpdate(QueryImpl.java:300)
         at com.dalitest.ClientsDAO.updateClient(ClientsDAO.java:35)
    Can anyone point me what is wrong with my update query?

    Abe White wrote:
    Thanks Abe for the information.
    How do I have to proceed then with my updates at the moment? Do you have
    any suggestions (besides waiting for the next release)?
    Update the objects individually, or use SQL. Kodo allows you to access
    the JDBC connection:>
    http://solarmetric.com/Software/Documentation/4.0.0EA/docs/full/html/ref_guide_dbsetup_sqlconn.html
    Thanks for the suggestions. SQL is not an option, since it will defeat the
    purpose of the EJB3-persistence.
    But can you elaborate more on the "Update the objects individually"
    approach.
    Let's say I have persistent Java bean Client and I changed some of its
    properties (e.g. myClient.setName("New Name");)
    How do I persiste it "individually"?
    This approach does not work:
    EntityTransaction t = em.getTransaction();
    t.begin();
    List<Client> pClients = new ClientsDAO().getAllClients(em);
    for (Client pClient : pClients)
    pClient.setName("New Name");
    em.persist(pClient);
    t.commit();
    It throws error on t.commit();
    <2|false|4.0.0EA3> kodo.util.OptimisticException: An optimistic lock violation
    was detected when flushing object instance
    "kodo.synthetic.com.dalitest.ClientKodoSyntheticSubclass-id-3" to the data
    store. This indicates that the object was concurrently modified in another
    transaction.
    FailedObject: kodo.synthetic.com.dalitest.ClientKodoSyntheticSubclass-id-3
         at
    kodo.jdbc.kernel.PreparedStatementManager.checkUpdate(PreparedStatementManager.java:358)
         at
    kodo.jdbc.kernel.PreparedStatementManager.executeBatch(PreparedStatementManager.java:291)
         at
    kodo.jdbc.kernel.PreparedStatementManager.flushInternal(PreparedStatementManager.java:243)
         at
    kodo.jdbc.kernel.PreparedStatementManager.flush(PreparedStatementManager.java:206)
         at kodo.jdbc.kernel.UpdateManagerImpl.flush(UpdateManagerImpl.java:217)
         at kodo.jdbc.kernel.UpdateManagerImpl.flush(UpdateManagerImpl.java:94)
         at kodo.jdbc.kernel.JDBCStoreManager.flush(JDBCStoreManager.java:557)
         at
    kodo.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:151)
         at kodo.kernel.BrokerImpl.flush(BrokerImpl.java:2034)
         at kodo.kernel.BrokerImpl.flushSafe(BrokerImpl.java:1893)
         at kodo.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:1819)
         at kodo.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:67)
         at kodo.kernel.BrokerImpl.commit(BrokerImpl.java:1426)
         at kodo.kernel.DelegatingBroker.commit(DelegatingBroker.java:1145)
         at kodo.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:420)
         at com.dalitest.Test.main(Test.java:55)

  • Kodo.util.FatalInternalException

    [junit] Caused by: kodo.util.FatalInternalException: 1046,1024 ::
    1046,1024:kodo.runtime.HollowState@cb2185 :: 1046,
    1024:kodo.runtime.HollowState@cb2185
    [junit] at
    kodo.runtime.PersistenceManagerImpl.setStateManager(PersistenceManagerImpl.j
    ava:3314)
    [junit] at
    kodo.runtime.StateManagerImpl.commit(StateManagerImpl.java:798)
    [junit] at
    kodo.runtime.PersistenceManagerImpl.endTransaction(PersistenceManagerImpl.ja
    va:1103)
    [junit] at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.j
    ava:842)
    [junit] at
    kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
    [junit] at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:542)

    Tom-
    This was reported at:
    http://bugzilla.solarmetric.com/show_bug.cgi?id=940
    The problem is that you have multiple instances with the same identity
    and you are using horizontal inheritance. The solution is to move from
    using a single application identity class for the entire hierarchy to
    using one application identity class per class in the hierarchy. See:
    http://docs.solarmetric.com/manual.html#horizontal_caveats
    In article <c9nt6d$v63$[email protected]>, Tom Landon wrote:
    When I changed retain values from false to true I got the error below
    (3.1.2). Here are the relevant settings:
    javax.jdo.option.Optimistic=true
    #javax.jdo.option.RetainValues=false
    javax.jdo.option.RetainValues=true
    javax.jdo.option.RestoreValues=false
    javax.jdo.option.NontransactionalRead=true
    javax.jdo.option.NontransactionalWrite=false
    [junit] Caused by: kodo.util.FatalInternalException: 1046,1024 ::
    1046,1024:kodo.runtime.PNonTransState@56c3cf :: 10
    46,1024:kodo.runtime.PNonTransState@56c3cf
    [junit] at
    kodo.runtime.PersistenceManagerImpl.setStateManager(PersistenceManagerImpl.j
    ava:3314)
    [junit] at
    kodo.runtime.StateManagerImpl.commit(StateManagerImpl.java:798)
    [junit] at
    kodo.runtime.PersistenceManagerImpl.endTransaction(PersistenceManagerImpl.ja
    va:1103)
    [junit] at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.j
    ava:842)
    [junit] at
    kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
    [junit] at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:542)
    Marc Prud'hommeaux
    SolarMetric Inc.

  • Kodo.util.InternalException: null

    Hello,
    I'm trying new persistence EJB3 implementation from SolarMetric:
    kodo-4.0.0EA3
    I have constructed a simple test app. And when I try to run it I get:
    Exception in thread "main" <1|true|4.0.0EA3> kodo.util.InternalException:
    null
         at
    kodo.synthetic.com.dalitest.ClientKodoSyntheticSubclassProxy.kodoNewObjectIdInstance(Unknown
    Source)
         at kodo.util.ApplicationIds.create(ApplicationIds.java:246)
         at kodo.kernel.BrokerImpl.persist(BrokerImpl.java:2433)
         at kodo.kernel.BrokerImpl.persistSafe(BrokerImpl.java:2379)
         at kodo.kernel.BrokerImpl.persist(BrokerImpl.java:2366)
         at kodo.kernel.DelegatingBroker.persist(DelegatingBroker.java:1275)
         at kodo.persistence.EntityManagerImpl.persist(EntityManagerImpl.java:519)
         at com.dalitest.Test.main(Test.java:21)
    Do you know what is going on?
    Here is my code:
    package com.dalitest;
    import javax.persistence.EntityManager;
    import javax.persistence.EntityManagerFactory;
    import javax.persistence.EntityTransaction;
    import javax.persistence.Persistence;
    public class Test
    public static void main(String[] args)
    EntityManagerFactory factory =
    Persistence.createEntityManagerFactory("kodo");
    EntityManager em = factory.createEntityManager();
    Client c1 = new Client();
    c1.setName("John Doe");
    EntityTransaction t = em.getTransaction();
    t.begin();
    em.persist(c1);
    t.commit();
    and Client.java:
    package com.dalitest;
    import javax.persistence.AccessType;
    import javax.persistence.Entity;
    import javax.persistence.Table;
    import javax.persistence.Id;
    import javax.persistence.Column;
    @Entity(access = AccessType.PROPERTY)
    @Table(name="DALI_CLIENTS")
    public class Client
    private String id;
    private String name;
    public void setName(String name)
    this.name = name;
    @Column(name="NAME")
    public String getName()
    return name;
    public void setId(String id)
    this.id = id;
    @Id
    @Column(name="ID")
    public String getId()
    return id;
    and my persistence.xml:
    <?xml version="1.0"?>
    <entity-manager>
         <name>kodo</name>
         <provider>kodo.persistence.PersistenceProviderImpl</provider>
         <class>com.dalitest.Client</class>
         <properties>
              <property name="kodo.LicenseKey"
                   value="XXX" />
              <property name="kodo.ConnectionURL"
                   value="XXX" />
              <property name="kodo.ConnectionDriverName"
                   value="oracle.jdbc.driver.OracleDriver" />
              <property name="kodo.ConnectionUserName" value="XXX" />
              <property name="kodo.ConnectionPassword" value="XXX" />
              <property name="kodo.Log" value="DefaultLevel=WARN, Tool=INFO" />
         </properties>
    </entity-manager>
    Where I have masked some values with XXX for this post.
    Thanks in advance,
    Ruslan

    Also I tried to enable DEBUG mode
    <property name="kodo.Log" value="DefaultLevel=WARN, Tool=INFO" />
    And got the following output before this exception:
    15 INFO [main] kodo.Runtime - Starting Kodo 4.0.0EA3
    62 DEBUG [main] kodo.Runtime - License capabilities: "Kodo Standard
    Edition,Kodo Community Edition,Kodo Evaluation Edition,Datacache
    Plug-in,Custom Result Object Providers,Custom Mappings,Enterprise
    Databases,Query Extensions,Performance Pack,Statement Batching,Kodo
    Enterprise Edition,Managed Environment,Developer Tools,Custom
    DBDictionaries" Expiration: "2/25/06 7:00 PM" Maintenance expiration:
    "2/25/06 7:00 PM"
    187 INFO [main] kodo.jdbc.JDBC - Using dictionary class
    "kodo.jdbc.sql.OracleDictionary".
    343 INFO [main] kodo.MetaData - Found 1 classes with metadata in 0
    milliseconds.
    422 INFO [main] kodo.MetaData - parse-class
    422 INFO [main] kodo.MetaData - parse-package
    Exception in thread "main" <1|true|4.0.0EA3> kodo.util.InternalException:
    null
         at
    kodo.synthetic.com.dalitest.ClientKodoSyntheticSubclassProxy.kodoNewObjectIdInstance(Unknown
    Source)
         at kodo.util.ApplicationIds.create(ApplicationIds.java:246)
         at kodo.kernel.BrokerImpl.persist(BrokerImpl.java:2433)
         at kodo.kernel.BrokerImpl.persistSafe(BrokerImpl.java:2379)
         at kodo.kernel.BrokerImpl.persist(BrokerImpl.java:2366)
         at kodo.kernel.DelegatingBroker.persist(DelegatingBroker.java:1275)
         at kodo.persistence.EntityManagerImpl.persist(EntityManagerImpl.java:519)
         at com.dalitest.Test.main(Test.java:21)

  • Kodo.util.FatalDataStoreException: Wrong database file version

    Hi,
    I am using Kodo JDO 3.0.2 together with HSQLDB (non-cached, same process).
    It
    runs fine. However, after having used a SQL tool such as Aqua Data Studio
    to
    inspect the database my Java code complains with the message
    "kodo.util.FatalDataStoreException: Wrong database file version". I have
    to
    rebuild the database and extend my classes again to get rid of this error.
    Is there some information in the database script that does not survive the
    inspection with the SQL tool? How can I work around this?
    Thanks for your help
    --Bruno

    Marc,
    It was indeed a version mismatch with my hsqldb libs. My SQL Tool used
    version 1.7.2 whereas Kdo used 1.7.0. A quick update of the property file
    of
    Aqua Data Studio fixed the problem. Thanks for the hint.
    --Bruno
    Marc Prud'hommeaux wrote:
    Bruno-
    Without being at all familiar with "Aqua Data Studio", I'll make a
    completely shot in the dark guess about what might be happening: you are
    using version x of Hypersonic to access the database, and then "Aqua
    Data Studio" is using version x+1. When the database is opened with HSQL
    version x+1, some internal version identifier in the database file is
    incremented, which disallows the previous version of HSQL (which is
    being used by Kodo) from opening the file.
    Again, this is a blind guess, but if it is the case, then the solution
    would be to ensure that you are using the same version of HSQL in both
    Kodo and "Aqua Data Studio".
    Otherwise, can you post the stack trace of the exception? That might
    give some more insight as to why this might be happening.
    As an aside, note that Kodo doesn't store or verify any internal
    "version" or anything like that, so I very much doubt that it is a
    problem with Kodo itself.
    In article <c1fihi$igu$[email protected]>, Bruno Schaeffer wrote:
    Hi,
    I am using Kodo JDO 3.0.2 together with HSQLDB (non-cached, same
    process).
    It
    runs fine. However, after having used a SQL tool such as Aqua Data Studio
    to
    inspect the database my Java code complains with the message
    "kodo.util.FatalDataStoreException: Wrong database file version". I have
    to
    rebuild the database and extend my classes again to get rid of thiserror.
    Is there some information in the database script that does not survivethe
    inspection with the SQL tool? How can I work around this?
    Thanks for your help
    --Bruno
    Marc Prud'hommeaux [email protected]
    SolarMetric Inc. http://www.solarmetric.com

  • Exception in thread "main" kodo.util.FatalInternalException:

    I have a method that is trying to save multiple objects:
    public void go()
    tx.begin();
    for (int i = 0; i < 10; i++) {
    Person p = new Person();
    p.setForename("doug");
    p.setSurname("emerald");
    p.setGender("m");
    p.setBirthdate(new Date());
    pm.makePersistent(p);
    ((KodoPersistenceManager) pm).flush();
    tx.commit();
    After calling close() on the PersistenceManager and Factory I get this
    error:
    Exception in thread "main" kodo.util.FatalInternalException: 0 ::
    0:kodo.runtime.PNonTransState@15f7107 ::
    0:kodo.runtime.PNonTransState@15f7107
    at
    kodo.runtime.PersistenceManagerImpl.setStateManager(PersistenceManagerImpl.java:2923)
    at kodo.runtime.StateManagerImpl.commit(StateManagerImpl.java:680)
    at
    kodo.runtime.PersistenceManagerImpl.endTransaction(PersistenceManagerImpl.java:907)
    at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:679)
    at
    kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
    at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:422)
    at JDOPerf.go(JDOPerf.java:67)
    at JDOPerf.<init>(JDOPerf.java:33)
    at JDOPerf.main(JDOPerf.java:16)
    What could be causing this error?
    Doug

    This error was a side effect of the problem I had in my previous post
    regarding sequences and application identity. It is now resolved.
    Thanks
    Stephen Kim wrote:
    Does Person use application identity? Can you post the Persion's id class?
    Doug Emerald wrote:
    I should amend this, the error is on the tx.commit() call.
    Doug Emerald wrote:
    I have a method that is trying to save multiple objects:
    public void go()
    tx.begin();
    for (int i = 0; i < 10; i++) {
    Person p = new Person();
    p.setForename("doug");
    p.setSurname("emerald");
    p.setGender("m");
    p.setBirthdate(new Date());
    pm.makePersistent(p);
    ((KodoPersistenceManager) pm).flush();
    tx.commit();
    After calling close() on the PersistenceManager and Factory I get this
    error:
    Exception in thread "main" kodo.util.FatalInternalException: 0 ::
    0:kodo.runtime.PNonTransState@15f7107 ::
    0:kodo.runtime.PNonTransState@15f7107
    at
    kodo.runtime.PersistenceManagerImpl.setStateManager(PersistenceManagerImpl.java:2923)
    >>
    at kodo.runtime.StateManagerImpl.commit(StateManagerImpl.java:680)
    at
    kodo.runtime.PersistenceManagerImpl.endTransaction(PersistenceManagerImpl.java:907)
    >>
    at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:679)
    >>
    at
    kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
    at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:422)
    at JDOPerf.go(JDOPerf.java:67)
    at JDOPerf.<init>(JDOPerf.java:33)
    at JDOPerf.main(JDOPerf.java:16)
    What could be causing this error?
    Doug
    Steve Kim
    [email protected]
    SolarMetric Inc.
    http://www.solarmetric.com

  • Kodo.util.UserException with deletepersistent method

    Hi,
    When I want to delete an object, i have the following error :
    kodo.util.UserException: The given instance
    "operations.offres.produits.magazines.groupesetediteurs.GroupeDePresse@6dd60e"
    is not managed by this
    PersistenceManager.[operations.offres.produits.magazines.groupesetediteurs.GroupeDePresse@6dd60e]
    There are the persistence methods i've wrote :
    * Methode de classe pour r__cuperer un groupe de presse ou un Editeur
    * @param nom String
    * @return GroupesEtEditeurs
    public static GroupesEtEditeurs getGroupesEtEditeurs(String nom) {
    Persistance p = Persistance.getPersistance();
    KodoPersistenceManager pm = p.getKodoPersistenceManager();
    Query requete = pm.newQuery(GroupesEtEditeurs.class);
    requete.setFilter("nom == '" + nom + "'");
    requete.setUnique(true);
    pm.currentTransaction().begin();
    Object resultat = (Object) requete.execute();
    resultat = pm.detach(resultat);
    pm.currentTransaction().commit();
    requete.closeAll();
    pm.close();
    return (GroupesEtEditeurs) resultat;
    * Methode de classe pour sauvegarder et mettre __ jour un Groupe de
    presse ou un Editeur
    * @param groupesetediteurs GroupesEtEditeurs
    public static void savGroupesEtEditeurs(GroupesEtEditeurs
    groupesetediteurs) {
    Persistance p = Persistance.getPersistance();
    KodoPersistenceManager pm = p.getKodoPersistenceManager();
    pm.currentTransaction().begin();
    pm.attach(groupesetediteurs);
    pm.currentTransaction().commit();
    pm.close();
    * Methode de classe pour supprimer un Groupe de presse ou un Editeur
    * @param groupesetediteurs GroupesEtEditeurs
    public static void delGroupesEtEditeurs(GroupesEtEditeurs
    groupesetediteurs) {
    Persistance p = Persistance.getPersistance();
    KodoPersistenceManager pm = p.getKodoPersistenceManager();
    pm.currentTransaction().begin();
    pm.deletePersistent(groupesetediteurs);
    pm.currentTransaction().commit();
    pm.close();
    ... and in the main class :
    GroupeDePresse gp0 = GroupeDePresse.getGroupeDePresse("mongroupe gp3");
    GroupeDePresse.savGroupeDePresse(gp0);
    GroupeDePresse.delGroupeDePresse(gp0); <---- the error source !
    I've no problems for query, attach / detach or update ...
    Please help !
    thank you,
    Pascal

    Hi,
    When I want to delete an object, i have the following error :
    kodo.util.UserException: The given instance
    "operations.offres.produits.magazines.groupesetediteurs.GroupeDePresse@6dd60e"
    is not managed by this
    PersistenceManager.[operations.offres.produits.magazines.groupesetediteurs.GroupeDePresse@6dd60e]
    There are the persistence methods i've wrote :
    * Methode de classe pour r__cuperer un groupe de presse ou un Editeur
    * @param nom String
    * @return GroupesEtEditeurs
    public static GroupesEtEditeurs getGroupesEtEditeurs(String nom) {
    Persistance p = Persistance.getPersistance();
    KodoPersistenceManager pm = p.getKodoPersistenceManager();
    Query requete = pm.newQuery(GroupesEtEditeurs.class);
    requete.setFilter("nom == '" + nom + "'");
    requete.setUnique(true);
    pm.currentTransaction().begin();
    Object resultat = (Object) requete.execute();
    resultat = pm.detach(resultat);
    pm.currentTransaction().commit();
    requete.closeAll();
    pm.close();
    return (GroupesEtEditeurs) resultat;
    * Methode de classe pour sauvegarder et mettre __ jour un Groupe de
    presse ou un Editeur
    * @param groupesetediteurs GroupesEtEditeurs
    public static void savGroupesEtEditeurs(GroupesEtEditeurs
    groupesetediteurs) {
    Persistance p = Persistance.getPersistance();
    KodoPersistenceManager pm = p.getKodoPersistenceManager();
    pm.currentTransaction().begin();
    pm.attach(groupesetediteurs);
    pm.currentTransaction().commit();
    pm.close();
    * Methode de classe pour supprimer un Groupe de presse ou un Editeur
    * @param groupesetediteurs GroupesEtEditeurs
    public static void delGroupesEtEditeurs(GroupesEtEditeurs
    groupesetediteurs) {
    Persistance p = Persistance.getPersistance();
    KodoPersistenceManager pm = p.getKodoPersistenceManager();
    pm.currentTransaction().begin();
    pm.deletePersistent(groupesetediteurs);
    pm.currentTransaction().commit();
    pm.close();
    ... and in the main class :
    GroupeDePresse gp0 = GroupeDePresse.getGroupeDePresse("mongroupe gp3");
    GroupeDePresse.savGroupeDePresse(gp0);
    GroupeDePresse.delGroupeDePresse(gp0); <---- the error source !
    I've no problems for query, attach / detach or update ...
    Please help !
    thank you,
    Pascal

  • Kodo.jdo.ObjectNotFoundException: The instance "netscape.ldap.LDAPException

    Hi..
    I am getting this error .. when i am deploying an application.
    weblogic.application.ModuleException:
    at weblogic.servlet.internal.WebAppModule.prepare(WebAppModule.java:387)
    at weblogic.application.internal.flow.ScopedModuleDriver.prepare(ScopedModuleDriver.java:176)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
    at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:387)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:58)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:42)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:16)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:155)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.createAndPrepareContainer(ActivateOperation.java:197)
    at weblogic.deploy.internal.targetserver.operations.StartOperation.createAndPrepareContainer(StartOperation.java:88)
    at weblogic.deploy.internal.targetserver.operations.StartOperation.doPrepare(StartOperation.java:101)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:217)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:723)
    at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1190)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:248)
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:159)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:157)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:12)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:45)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    <openjpa-1.1.0-r422266:657916 nonfatal store error> kodo.jdo.ObjectNotFoundException: The instance "netscape.ldap.LDAPException: error result (32)" does not exist in
    the data store.
    FailedObject: netscape.ldap.LDAPException: error result (32) [java.lang.String]
    at kodo.jdo.ObjectNotFoundException.newSerializableInstance(ObjectNotFoundException.java:90)
    at kodo.jdo.ObjectNotFoundException.writeReplace(ObjectNotFoundException.java:80)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:1032)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1107)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
    at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:416)
    at java.lang.Throwable.writeObject(Throwable.java:648)
    at sun.reflect.GeneratedMethodAccessor132.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
    at java.util.ArrayList.writeObject(ArrayList.java:579)
    at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
    at weblogic.common.internal.WLObjectOutputStream.writeArrayList(WLObjectOutputStream.java:117)
    at weblogic.deploy.service.internal.transport.DeploymentServiceMessage.writeMessage(DeploymentServiceMessage.java:272)
    at weblogic.deploy.service.internal.transport.DeploymentServiceMessage.writeExternal(DeploymentServiceMessage.java:239)
    at java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1421)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1390)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
    at weblogic.deploy.service.internal.transport.http.HTTPMessageSender.sendMessageToServerURL(HTTPMessageSender.java:276)
    at weblogic.deploy.service.internal.transport.http.HTTPMessageSender.sendMessageToAdminServer(HTTPMessageSender.java:134)
    at weblogic.deploy.service.internal.transport.CommonMessageSender.sendPrepareNakMsg(CommonMessageSender.java:578)
    at weblogic.deploy.service.internal.statemachines.targetserver.TargetServerState.sendPrepareNak(TargetServerState.java:392)
    at weblogic.deploy.service.internal.statemachines.targetserver.AwaitingPrepareCompletion.prepareFailed(AwaitingPrepareCompletion.java:124)
    at weblogic.deploy.service.internal.targetserver.TargetDeploymentService.notifyPrepareFailure(TargetDeploymentService.java:324)
    at weblogic.deploy.service.internal.DeploymentService$4.run(DeploymentService.java:223)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Any ideas.. i dont know this is right place post to this issue..
    Thanks
    Raj

    I was receiving a very similar error stack trace. I stopped the managed server, then deleted it's ldap folder. When I restarted the managed server, it came it w/o any errors.
    Cheers,
    Rob

  • Error:Class java.util.date not found

    i have installed 9iAS on my computer.And i want to develop program on JSP.i tried the url below
    http://eyuksel/servlet/IsItWorking
    and i got "it is working" message.when i try to execute my first jsp file i get the error:
    Errors compiling:d:\ias\apache\apache\htdocs\_pages\\_first.java
    d:\ias\apache\apache\htdocs\_pages\_first.java:55: Class java.util.date not found.
    out.print( new java.util.date() );
    ^
    1 error
    what must i do or how can i install the java classes.
    kind regards...
    null

    Thank you very much.It worked:)
    Java is case-sensitive.
    try
    java.util.Date
    instead of
    java.util.date
    null

  • Kodo.util.FatalDataStoreException: java.util.NoSuchElementException

    I am receiving the following exception in our app at what appears to be
    random intervals.
    There were multiple users logged into the system, each getting their own
    persistence manager (by way of pmFactory.getPersistenceManager(), which
    are then stored in the http session and re-used as long as that user is
    logged in) and when they started accessing the system simultaneously
    everything was fine for a while (ranged from 30min to 3 hours) then one
    person would see the exception, then others would see the exception right
    after. Then a few minutes later the problem would be gone again for a
    while
    I have the multithread option set to true in kodo.properties and am using
    pessimistic transactions
    Using kodo 3.3.3
    I am just curious what might cause something like this, it seems as though
    2 threads are trying to commit the same data with the same persistence
    manager to me.
    My next step in debugging this process is extending the persistence
    manager object to add some logging and see if my theory is correct.
    Any pointers to tracking this down would be greatly appreciated
    kodo.util.FatalDataStoreException: java.util.NoSuchElementException
         at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:1020)
         at kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
         at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:629)
         at
    com.stchome.cdr.actions.SearchCriteriaWizardAction.searchQbe(SearchCriteriaWizardAction.java:345)
         at sun.reflect.GeneratedMethodAccessor355.invoke(Unknown Source)
         at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at
    org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)
         at
    org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216)
         at
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
         at
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
         at
    com.stchome.cdr.servlet.CdrActionServlet.process(CdrActionServlet.java:31)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at
    com.stchome.cdr.servlet.filters.SessionManagerFilter.doFilter(SessionManagerFilter.java:41)
         at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
         at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
         at
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
         at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
         at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
         at
    org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
         at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
         at
    org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:534)
    NestedThrowablesStackTrace:
    java.util.NoSuchElementException
         at serp.util.LookaheadIterator.next(LookaheadIterator.java:57)
         at
    com.solarmetric.apache.commons.collections.iterators.IteratorChain.next(IteratorChain.java:264)
         at kodo.util.CacheMap$EntryIterator.next(CacheMap.java:654)
         at java.util.AbstractCollection.toArray(AbstractCollection.java:174)
         at java.util.ArrayList.<init>(ArrayList.java:136)
         at kodo.datacache.QueryCacheImpl.keySet(QueryCacheImpl.java:165)
         at
    kodo.datacache.AbstractQueryCache.classesChanged(AbstractQueryCache.java:60)
         at
    kodo.datacache.DataCacheStoreManager.updateCaches(DataCacheStoreManager.java:217)
         at
    kodo.datacache.DataCacheStoreManager.commit(DataCacheStoreManager.java:73)
         at
    kodo.runtime.PersistenceManagerImpl.endTransaction(PersistenceManagerImpl.java:1317)
         at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:998)
         at kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
         at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:629)
         at
    com.stchome.cdr.actions.SearchCriteriaWizardAction.searchQbe(SearchCriteriaWizardAction.java:345)
         at sun.reflect.GeneratedMethodAccessor355.invoke(Unknown Source)
         at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at
    org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)
         at
    org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216)
         at
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
         at
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
         at
    com.stchome.cdr.servlet.CdrActionServlet.process(CdrActionServlet.java:31)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at
    com.stchome.cdr.servlet.filters.SessionManagerFilter.doFilter(SessionManagerFilter.java:41)
         at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
         at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
         at
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
         at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
         at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
         at
    org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
         at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
         at
    org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:534)

    Thank you stephen, that reply is like music to my ears :)
    Stephen Kim wrote:
    I would upgrade to 3.3.4 or 3.4 as they have resolved that bug.
    Damian Bradicich wrote:
    I am receiving the following exception in our app at what appears to be
    random intervals.
    There were multiple users logged into the system, each getting their own
    persistence manager (by way of pmFactory.getPersistenceManager(), which
    are then stored in the http session and re-used as long as that user is
    logged in) and when they started accessing the system simultaneously
    everything was fine for a while (ranged from 30min to 3 hours) then one
    person would see the exception, then others would see the exception right
    after. Then a few minutes later the problem would be gone again for a
    while
    I have the multithread option set to true in kodo.properties and am using
    pessimistic transactions
    Using kodo 3.3.3
    I am just curious what might cause something like this, it seems as though
    2 threads are trying to commit the same data with the same persistence
    manager to me.
    My next step in debugging this process is extending the persistence
    manager object to add some logging and see if my theory is correct.
    Any pointers to tracking this down would be greatly appreciated
    kodo.util.FatalDataStoreException: java.util.NoSuchElementException
         at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:1020)
         at kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
         at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:629)
         at
    com.stchome.cdr.actions.SearchCriteriaWizardAction.searchQbe(SearchCriteriaWizardAction.java:345)
         at sun.reflect.GeneratedMethodAccessor355.invoke(Unknown Source)
         at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at
    org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)
         at
    org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216)
         at
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
         at
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
         at
    com.stchome.cdr.servlet.CdrActionServlet.process(CdrActionServlet.java:31)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at
    com.stchome.cdr.servlet.filters.SessionManagerFilter.doFilter(SessionManagerFilter.java:41)
         at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
         at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
         at
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
         at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
         at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
         at
    org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
         at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
         at
    org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:534)
    NestedThrowablesStackTrace:
    java.util.NoSuchElementException
         at serp.util.LookaheadIterator.next(LookaheadIterator.java:57)
         at
    com.solarmetric.apache.commons.collections.iterators.IteratorChain.next(IteratorChain.java:264)
         at kodo.util.CacheMap$EntryIterator.next(CacheMap.java:654)
         at java.util.AbstractCollection.toArray(AbstractCollection.java:174)
         at java.util.ArrayList.<init>(ArrayList.java:136)
         at kodo.datacache.QueryCacheImpl.keySet(QueryCacheImpl.java:165)
         at
    kodo.datacache.AbstractQueryCache.classesChanged(AbstractQueryCache.java:60)
         at
    kodo.datacache.DataCacheStoreManager.updateCaches(DataCacheStoreManager.java:217)
         at
    kodo.datacache.DataCacheStoreManager.commit(DataCacheStoreManager.java:73)
         at
    kodo.runtime.PersistenceManagerImpl.endTransaction(PersistenceManagerImpl.java:1317)
         at
    kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:998)
         at kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
         at
    kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:629)
         at
    com.stchome.cdr.actions.SearchCriteriaWizardAction.searchQbe(SearchCriteriaWizardAction.java:345)
         at sun.reflect.GeneratedMethodAccessor355.invoke(Unknown Source)
         at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at
    org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)
         at
    org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216)
         at
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
         at
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
         at
    com.stchome.cdr.servlet.CdrActionServlet.process(CdrActionServlet.java:31)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at
    com.stchome.cdr.servlet.filters.SessionManagerFilter.doFilter(SessionManagerFilter.java:41)
         at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
         at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
         at
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at
    org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
         at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
         at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
         at
    org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
         at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
         at
    org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:534)
    Steve Kim
    [email protected]
    SolarMetric Inc.
    http://www.solarmetric.com

  • Cannot access class jclass.util.JCVector

    I need the libraries .
    Where can I get the libraries for my java application?.
    When I compile , I get this error:cannot access class jclass.util.JCVector.
    I have been looking for them in the sitraka home, but I haven�t
    found any.
    I have installed libraries for jclass.bwt. package but I imagine
    that it isn�t enough.
    Thanks alot-
    ras

    I dont know the class JCVector, but if you received the error message
    "cannot access class jclass.util.JCVector"
    It means that the class is there, but you cannot access.
    Why I cannot access if the class is there? - you should ask
    Problably the access permission of this class is not Public, it must be private or protected.
    The most common is the class is protected and it is in another package.
    So the JVM locate the class, but cannot access it from your current class, because the class you are trying to access is protected or private.
    Hope that i Helped
    JoseAugusto

  • Weird exception: Cannot instantiate non-persistent class: java.util.Map

    java.lang.UnsupportedOperationException: Cannot instantiate non-persistent class: java.util.Map
         at com.sleepycat.persist.impl.NonPersistentFormat.newInstance(NonPersistentFormat.java:45)
         at com.sleepycat.persist.impl.PersistEntityBinding.readEntity(PersistEntityBinding.java:89)
         at com.sleepycat.persist.impl.PersistEntityBinding.entryToObject(PersistEntityBinding.java:61)
         at com.sleepycat.persist.PrimaryIndex.put(PrimaryIndex.java:338)
         at com.sleepycat.persist.PrimaryIndex.put(PrimaryIndex.java:299)
         at com.xx.support.dbd.IdentityDataAccessor.insert(IdentityDataAccessor.java:33)
         at com.xx.support.dbd.BerkeleyDBAccountStorage.saveUser(BerkeleyDBAccountStorage.java:95)
         at com.xx.support.bdb.BerkeleyDBAccountStorageTests.initBerkeleyDBData(BerkeleyDBAccountStorageTests.java:38)
         at com.xx.support.bdb.BerkeleyDBAccountStorageTests.setUp(BerkeleyDBAccountStorageTests.java:28)
         at junit.framework.TestCase.runBare(TestCase.java:125)
         at junit.framework.TestResult$1.protect(TestResult.java:106)
         at junit.framework.TestResult.runProtected(TestResult.java:124)
         at junit.framework.TestResult.run(TestResult.java:109)
         at junit.framework.TestCase.run(TestCase.java:118)
         at junit.framework.TestSuite.runTest(TestSuite.java:208)
         at junit.framework.TestSuite.run(TestSuite.java:203)
    What's the root cause of this exception?

    I wrote a small test using the classes you included
    in your message and I am able to retrieve the user by
    key, as in the code above. So I'm not sure what
    you're doing that is causing the problem. Please
    send a small test that reproduces the problem.Oops, I forgot to include the source for the test I wrote. Here it is.
    import java.io.File;
    import java.util.HashMap;
    import java.util.Map;
    import com.sleepycat.je.DatabaseException;
    import com.sleepycat.je.Environment;
    import com.sleepycat.je.EnvironmentConfig;
    import com.sleepycat.persist.EntityStore;
    import com.sleepycat.persist.PrimaryIndex;
    import com.sleepycat.persist.StoreConfig;
    import com.sleepycat.persist.model.Entity;
    import com.sleepycat.persist.model.Persistent;
    import com.sleepycat.persist.model.PrimaryKey;
    public class Test {
        @Persistent
        public static class SimplePrincipal {
            protected String name;
            public SimplePrincipal(String username) {
                this.name = name;
            public SimplePrincipal() {}
        @Entity
        public static class SimpleUser extends SimplePrincipal {
            @PrimaryKey
            private String key;
            private Map properties;
            public SimpleUser() {
                super();
                this.properties = new HashMap();
            public SimpleUser(String username) {
                super(username);
                this.properties = new HashMap();
            public void setKey(String key){
                this.key = key;
            public void addPropertity(String name, String value) {
                this.properties.put(name, value);
            @Override
            public String toString() {
                return "[SimpleUser key: " + key + " name: " + name + ']';
        private Environment env;
        private EntityStore store;
        private PrimaryIndex<String, SimpleUser> primaryIndex;
        private void open()
            throws DatabaseException {
            EnvironmentConfig envConfig = new EnvironmentConfig();
            envConfig.setAllowCreate(true);
            envConfig.setTransactional(true);
            env = new Environment(new File("./data"), envConfig);
            StoreConfig storeConfig = new StoreConfig();
            storeConfig.setAllowCreate(true);
            storeConfig.setTransactional(true);
            store = new EntityStore(env, "test", storeConfig);
            primaryIndex = store.getPrimaryIndex(String.class, SimpleUser.class);
        private void close()
            throws DatabaseException {
            store.close();
            env.close();
        private void execute()
            throws DatabaseException {
            SimpleUser user = new SimpleUser("test");
            user.setKey("testkey");
            primaryIndex.put(user);
            user = primaryIndex.get("testkey");
            System.out.println(user);
        public static void main(String[] args)
            throws DatabaseException {
            Test test = new Test();
            test.open();
            test.execute();
            test.close();
    }Mark

  • Com.solarmetric.kodo.util.ImplHelper.getPersistentClasses(ImplHelper.java:46)

    This trace uses almost 10% of my CPU time. It looks like static data
    collection. Is it being called much more often than it should, or am I
    calling something more often than I should? (After this, I am down to the
    DBMS being the bottleneck and a factor of 7 as the slow down from Poet to
    Kodo/MySQL.)
    TRACE 1622:
         java.util.HashMap.addEntry(HashMap.java:719)
         java.util.HashMap.put(HashMap.java:388)
         java.util.HashSet.add(HashSet.java:188)
         java.util.AbstractCollection.addAll(AbstractCollection.java:315)
         java.util.HashSet.<init>(HashSet.java:94)
         com.solarmetric.kodo.util.ImplHelper.getPersistentClasses(ImplHelper.java:46)
         com.solarmetric.kodo.runtime.datacache.query.QueryKey.initializeQuery(QueryKey.java:137)
         com.solarmetric.kodo.runtime.datacache.query.QueryKey.<init>(QueryKey.java:56)
         com.solarmetric.kodo.runtime.datacache.query.CacheAwareQuery.execute(CacheAwareQuery.java:257)
         itec.pos.Pos.findKey(Pos.java:121)

    Things have evolved, Secant -> Poet ODMG -> Poet/JDO. FindKey finds an
    object by attribute, not the ID, like where 'name = "Bob"'. For Kodo, we
    are using a JDOQL query; for Poet we use an Index (our tests are 4X faster
    than when we use a Poet Query).
    Joe
    Patrick Linskey wrote:
    BTW, what does findKey() do?
    -Patrick
    On Fri, 11 Jul 2003 00:40:46 +0000, Joe Batt wrote:
    This trace uses almost 10% of my CPU time. It looks like static data
    collection. Is it being called much more often than it should, or am I
    calling something more often than I should? (After this, I am down to the
    DBMS being the bottleneck and a factor of 7 as the slow down from Poet to
    Kodo/MySQL.)
    TRACE 1622:
         java.util.HashMap.addEntry(HashMap.java:719)
         java.util.HashMap.put(HashMap.java:388)
         java.util.HashSet.add(HashSet.java:188)
         java.util.AbstractCollection.addAll(AbstractCollection.java:315)
         java.util.HashSet.<init>(HashSet.java:94)
         com.solarmetric.kodo.util.ImplHelper.getPersistentClasses(ImplHelper.java:46)
    >>
    >
         com.solarmetric.kodo.runtime.datacache.query.QueryKey.initializeQuery(QueryKey.java:137)
    >>
         com.solarmetric.kodo.runtime.datacache.query.QueryKey.<init>(QueryKey.java:56)
    >>
    >
         com.solarmetric.kodo.runtime.datacache.query.CacheAwareQuery.execute(CacheAwareQuery.java:257)
         itec.pos.Pos.findKey(Pos.java:121)
    Patrick Linskey
    SolarMetric Inc.

  • KODO JDO Exception - kodo.util.FatalDataStoreException

    Using <b>Kodo Version - 3.3.4</b>, getting following exception when we try to <b>COMMIT</b>. Please let us know the reason for this kind of exception.
    java.lang.NullPointerException>
    kodo.util.FatalDataStoreException: java.lang.NullPointerException
    at kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:1020)
    at kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
    at kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:629)
    at com.capgroup.isa.dal.LibrarySession.commit(LibrarySession.java:135)
    NestedThrowablesStackTrace:
    java.lang.NullPointerException
    at kodo.jdbc.runtime.JDBCStoreManager.commit(JDBCStoreManager.java:140)
    at kodo.runtime.DelegatingStoreManager.commit(DelegatingStoreManager.java:101)
    at kodo.runtime.PersistenceManagerImpl.endTransaction(PersistenceManagerImpl.java:1317)
    at kodo.runtime.PersistenceManagerImpl.afterCompletion(PersistenceManagerImpl.java:998)
    at kodo.runtime.LocalManagedRuntime.commit(LocalManagedRuntime.java:86)
    at kodo.runtime.PersistenceManagerImpl.commit(PersistenceManagerImpl.java:629)
    at com.capgroup.isa.dal.LibrarySession.commit(LibrarySession.java:135)
    Thanks,

    A NPE coming from Kodo's code is a defect. I suggest you try with 3.4.1 or a more recent version. Similar bugs have been fixed in them.
    Laurent

Maybe you are looking for