I am using OBJ 0.99 with Oracle 8.1.7.
 
I am using an RMI client that connect to an RMI server along with a
request in XML (carrying method name and the parameters). This RMI
server uses OJB for persistence.
 
The problem is like this:
1.      Say I added a record, it is saved. While the application (server
side) runs, I can update that record with no problem.
2.      With a fresh  run of the application (server-side), I can update
1 old record. Any subsequent attempt to update an existing record causes
the following exception. The only way I can run application (client) is
restarting the server application.
 
Can anyone shed any light?
 
[org.apache.ojb.broker.accesslayer.StatementsForClassImpl] ERROR: Io
exception:
Socket closed
java.sql.SQLException: Io exception: Socket closed
        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java)
        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java)
        at
oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java)
        at
oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java)
        at
oracle.jdbc.driver.OraclePreparedStatement.<init>(OraclePreparedState
ment.java)
        at
oracle.jdbc.driver.OracleConnection.privatePrepareStatement(OracleCon
nection.java)
        at
oracle.jdbc.driver.OracleConnection.prepareStatement(OracleConnection
.java)
        at
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.prepareState
ment(Unknown Source)
        at
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.getPreparedS
tmt(Unknown Source)
        at
org.apache.ojb.broker.accesslayer.StatementManager.getPreparedStateme
nt(Unknown Source)
        at
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeQuery(Unknown
 Source)
        at org.apache.ojb.broker.accesslayer.RsIterator.<init>(Unknown
Source)
        at
org.apache.ojb.broker.singlevm.RsIteratorFactoryImpl.createRsIterator
(Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getRsIteratorFro
mQuery(Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getIteratorFromQ
uery(Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQ
uery(Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQ
uery(Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQ
uery(Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQ
uery(Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getObjectByQuery
(Unknown Source)
        at
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.getObjectB
yQuery(Unknown Source)
        at
com.spectrum.spsoft.spintre.eel.inv.sb.EditMaterialBean.<init>(Unknow
n Source)
        at java.lang.reflect.Constructor.newInstance(Native Method)
        at
com.spectrum.spsoft.spintre.eel.common.xml.ActionBean.loadAction(Unkn
own Source)
        at
com.spectrum.spsoft.spintre.eel.common.xml.ActionBuilder.processXml(U
nknown Source)
        at
com.spectrum.spsoft.spintre.eel.common.rmi.server.XMLServiceImpl.disp
atchXML(Unknown Source)
        at java.lang.reflect.Method.invoke(Native Method)
        at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
        at sun.rmi.transport.Transport$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Unknown Source)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown
Source)
        at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Sour
ce)
        at java.lang.Thread.run(Unknown Source)
 
Regards, 
 
Wahid Sadik
PROGRAMMER,
Spectrum Engineering Consortium Ltd.
 

Reply via email to