[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

InstantiationException -- need guidance



Hello All:

In one of my database classes for a test application that
I am writing, I am getting the exception below on my server
process.

The problem is occurring when I try to create a new database
object from within a method on a current database
object.  In my example, I have a pre-existing PersonInfo
object which is trying to create a PersonName object.

In my PersonInfo object, I have this method:
  public void addToNames(String name) throws Exception {
    if( names == null )
      names = new OrderedSet();
    PersonName personName = (PersonName)
database().createObject(PersonName.class.getName());
    personName.setName(name);
    names.add(personName);
  }

The failure is occurring on the database().createObject() call.

I did a fresh checkout from the CVS sources and build just now,
so this is the current code.

I am still trying to trace it down, but I went thru the
class.newInstance() call in my debugger and it was fine and
went back into the Server code for the next Event from the
Client.  But, since there is a lot of code here and I am not
very familiar with it, I am hoping that someone can guide
me on what to look for. 

I am attaching my sources in case it helps.

Thanks,
	Neil.

---------- Exception Log ----------------------

[warn] (466) Transaction: createObject()
    java.lang.InstantiationException: persistent.PersonName
    	at java.lang.Class.newInstance0(Native Method)
    	at java.lang.Class.newInstance(Class.java:237)
    	at
org.ozoneDB.core.AbstractObjectContainer.createTarget(AbstractObje
            ctContainer.java:227)
    	at org.ozoneDB.core.Transaction.createObject(Transaction.java:394)
    	at org.ozoneDB.Database.createObject(Database.java:90)
    	at org.ozoneDB.Database.createObject(Database.java:73)
    	at persistent.PersonInfoImpl.addToNames(PersonInfoImpl.java:26)
    	at java.lang.reflect.Method.invoke(Native Method)
    	at
org.ozoneDB.core.AbstractObjectContainer.invokeTarget(AbstractObje
            ctContainer.java:212)
    	at org.ozoneDB.core.Transaction.invokeObject(Transaction.java:510)
    	at org.ozoneDB.core.DbRemote.DbInvoke.perform(DbInvoke.java:62)
    	at
org.ozoneDB.core.Transaction.performCommand(Transaction.java:273)
    	at
org.ozoneDB.core.TransactionManager.performCommand(TransactionMana
            ger.java:366)
    	at
org.ozoneDB.core.TransactionManager.completeTransaction(Transactio
            nManager.java:333)
    	at
org.ozoneDB.core.TransactionManager.handleCommand(TransactionManag
            er.java:249)
    	at
org.ozoneDB.core.InvokeServer.handleClientEvent(InvokeServer.java:
            76)
    	at
org.ozoneDB.DxLib.net.DxMultiServerClient.run(DxMultiServerClient.
            java:41)
    	at java.lang.Thread.run(Thread.java:484)
[warn] (466) Transaction: ta(111): uncaught exception:
(org.ozoneDB.OzoneInternalExc: java.lang.InstantiationException:
persistent.PersonName)
    org.ozoneDB.OzoneInternalExc: java.lang.InstantiationException:
persis
            tent.PersonName
    	at org.ozoneDB.core.Transaction.createObject(Transaction.java:409)
    	at org.ozoneDB.Database.createObject(Database.java:90)
    	at org.ozoneDB.Database.createObject(Database.java:73)
    	at persistent.PersonInfoImpl.addToNames(PersonInfoImpl.java:26)
    	at java.lang.reflect.Method.invoke(Native Method)
    	at
org.ozoneDB.core.AbstractObjectContainer.invokeTarget(AbstractObje
            ctContainer.java:212)
    	at org.ozoneDB.core.Transaction.invokeObject(Transaction.java:510)
    	at org.ozoneDB.core.DbRemote.DbInvoke.perform(DbInvoke.java:62)
    	at
org.ozoneDB.core.Transaction.performCommand(Transaction.java:273)
    	at
org.ozoneDB.core.TransactionManager.performCommand(TransactionMana
            ger.java:366)
    	at
org.ozoneDB.core.TransactionManager.completeTransaction(Transactio
            nManager.java:333)
    	at
org.ozoneDB.core.TransactionManager.handleCommand(TransactionManag
            er.java:249)
    	at
org.ozoneDB.core.InvokeServer.handleClientEvent(InvokeServer.java:
            76)
    	at
org.ozoneDB.DxLib.net.DxMultiServerClient.run(DxMultiServerClient.
            java:41)
    	at java.lang.Thread.run(Thread.java:484)
[warn] (466) TransactionManager: Aborting transaction failed: ta(111)
    java.io.IOException: Unable to rename shadow file.
    	at
org.ozoneDB.core.wizardStore.Cluster.restoreShadow(Cluster.java:28
            0)
    	at org.ozoneDB.core.wizardStore.Cluster.abort(Cluster.java:197)
    	at
org.ozoneDB.core.wizardStore.ClusterStore.abortCluster(ClusterStor
            e.java:593)
    	at
org.ozoneDB.core.wizardStore.WizardStore.abortTransaction(WizardSt
            ore.java:678)
    	at org.ozoneDB.core.Transaction.abort(Transaction.java:337)
    	at
org.ozoneDB.core.TransactionManager.abortTransaction(TransactionMa
            nager.java:516)
    	at
org.ozoneDB.core.TransactionManager.completeTransaction(Transactio
            nManager.java:338)
    	at
org.ozoneDB.core.TransactionManager.handleCommand(TransactionManag
            er.java:249)
    	at
org.ozoneDB.core.InvokeServer.handleClientEvent(InvokeServer.java:
            76)
    	at
org.ozoneDB.DxLib.net.DxMultiServerClient.run(DxMultiServerClient.
            java:41)
    	at java.lang.Thread.run(Thread.java:484)
[error](466) TransactionManager: handleCommand(): java.io.IOException:
Unable to rename shadow file.
    java.io.IOException: Unable to rename shadow file.
    	at
org.ozoneDB.core.wizardStore.Cluster.restoreShadow(Cluster.java:28
            0)
    	at org.ozoneDB.core.wizardStore.Cluster.abort(Cluster.java:197)
    	at
org.ozoneDB.core.wizardStore.ClusterStore.abortCluster(ClusterStor
            e.java:593)
    	at
org.ozoneDB.core.wizardStore.WizardStore.abortTransaction(WizardSt
            ore.java:678)
    	at org.ozoneDB.core.Transaction.abort(Transaction.java:337)
    	at
org.ozoneDB.core.TransactionManager.abortTransaction(TransactionMa
            nager.java:516)
    	at
org.ozoneDB.core.TransactionManager.completeTransaction(Transactio
            nManager.java:338)
    	at
org.ozoneDB.core.TransactionManager.handleCommand(TransactionManag
            er.java:249)
    	at
org.ozoneDB.core.InvokeServer.handleClientEvent(InvokeServer.java:
            76)
    	at
org.ozoneDB.DxLib.net.DxMultiServerClient.run(DxMultiServerClient.
            java:41)
    	at java.lang.Thread.run(Thread.java:484)
[warn] (466) InvokeServer: handleClientException():
java.net.SocketException: Connection reset by peer: JVM_recv in socket
input stream read
    java.net.SocketException: Connection reset by peer: JVM_recv in
socket
             input stream read
    	at java.net.SocketInputStream.socketRead(Native Method)
    	at java.net.SocketInputStream.read(SocketInputStream.java:86)
    	at java.io.BufferedInputStream.fill(BufferedInputStream.java:186)
    	at java.io.BufferedInputStream.read(BufferedInputStream.java:204)
    	at java.io.ObjectInputStream.peekCode(ObjectInputStream.java:1549)
    	at java.io.ObjectInputStream.refill(ObjectInputStream.java:1683)
    	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:283)
    	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
    	at org.ozoneDB.DxLib.net.DxClient.receive(DxClient.java:109)
    	at
org.ozoneDB.DxLib.net.DxMultiServerClient.run(DxMultiServerClient.
            java:41)
    	at java.lang.Thread.run(Thread.java:484)



--
Neil Aggarwal
JAMM Consulting, Inc. -- (972) 612-6056, http://www.JAMMConsulting.com
Custom Internet Development -- Java, JSP, servlets, databases

OzoneTest.java

PersonInfo.java

PersonInfoImpl.java

PersonName.java

PersonNameImpl.java