You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by Abid Hussain <ab...@abid76.de> on 2007/05/08 17:52:29 UTC

java.net.SocketException: Connection reset

Hello everybody,

I'm using OJB in my web applicatin now for more than one year, and it 
did really fine.

But since some time an exception occurs which I can't figure out. 
Obviously the connection to the backend was reset.
May it be the case that the db connection timed out? Anybody got an idea 
what I can do about this?

I found this issue in jira but I'm not sure if it's the same case as mine:
http://issues.apache.org/jira/browse/OJB-70?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Best regards,

Abid

Here's the stack trace:
ERROR: [org.apache.ojb.broker.accesslayer.JdbcAccessImpl]
* SQLException during execution of sql-statement:
* sql statement was 'SELECT 
A0.Id,A0.modul_Name,A0.LP,A0.Zuordnung,A0.Ziele,A0.Inhalte,A0.Literatur,A0.Voraussetzung,A0.Modulpruefung,A0.Selbststudium,A0.Form_Teilnahme,A0.Sprache,A0.Aufwand_Gesamt,A0.Dauer,A0.Haeufigkeit,A0.Sonst_Verantwortliche 
FROM Modul_2 A0 WHERE A0.Id = ?'
* Exception message is [An I/O error occured while sending to the backend.]
* Vendor error code [0]
* SQL state code [08006]
* Target class is 'modulverwaltung.beans.Module_2'
* PK of the target object is [id]
* The root stack trace is -->
* java.net.SocketException: Connection reset
	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:96)
	at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
	at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
	at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
	at org.postgresql.core.PGStream.flush(PGStream.java:494)
	at 
org.postgresql.core.v3.QueryExecutorImpl.sendSync(QueryExecutorImpl.java:631)
	at 
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:174)
	at 
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:389)
	at 
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:330)
	at 
org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:240)
	at 
com.p6spy.engine.logging.P6LogPreparedStatement.executeQuery(P6LogPreparedStatement.java:172)
	at 
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.materializeObject(Unknown 
Source)
	at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getPlainDBObject(Unknown 
Source)
	at org.apache.ojb.broker.core.PersistenceBrokerImpl.getDBObject(Unknown 
Source)
	at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.doGetObjectByIdentity(Unknown 
Source)
	at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getObjectByIdentity(Unknown 
Source)
	at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getObjectByQuery(Unknown 
Source)
	at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getObjectByQuery(Unknown 
Source)
	at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getObjectByQuery(Unknown 
Source)
	at 
modulverwaltung.persistence.Module_2DAO.findByPrimaryKey(Module_2DAO.java:73)
	at modulverwaltung.action.ShowModule.performAction(ShowModule.java:32)
	at modulverwaltung.controller.Controller.doGet(Controller.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
	at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
	at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Thread.java:595)

-- 

Abid Hussain
Mail: abid.hussain@abid76.de
Web: http://www.abid76.de

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


RE: java.net.SocketException: Connection reset

Posted by "McGough, Brian Joseph" <bm...@indiana.edu>.
You can make sure your datasources are configured with a validationQuery
turned on and filled in for your platform.

-----Original Message-----
From: Abid Hussain [mailto:abid.hussain@abid76.de] 
Sent: Tuesday, May 08, 2007 11:52 AM
To: OJB Users List
Subject: java.net.SocketException: Connection reset

Hello everybody,

I'm using OJB in my web applicatin now for more than one year, and it 
did really fine.

But since some time an exception occurs which I can't figure out. 
Obviously the connection to the backend was reset.
May it be the case that the db connection timed out? Anybody got an idea

what I can do about this?

I found this issue in jira but I'm not sure if it's the same case as
mine:
http://issues.apache.org/jira/browse/OJB-70?page=com.atlassian.jira.plug
in.system.issuetabpanels:all-tabpanel

Best regards,

Abid

Here's the stack trace:
ERROR: [org.apache.ojb.broker.accesslayer.JdbcAccessImpl]
* SQLException during execution of sql-statement:
* sql statement was 'SELECT 
A0.Id,A0.modul_Name,A0.LP,A0.Zuordnung,A0.Ziele,A0.Inhalte,A0.Literatur,
A0.Voraussetzung,A0.Modulpruefung,A0.Selbststudium,A0.Form_Teilnahme,A0.
Sprache,A0.Aufwand_Gesamt,A0.Dauer,A0.Haeufigkeit,A0.Sonst_Verantwortlic
he 
FROM Modul_2 A0 WHERE A0.Id = ?'
* Exception message is [An I/O error occured while sending to the
backend.]
* Vendor error code [0]
* SQL state code [08006]
* Target class is 'modulverwaltung.beans.Module_2'
* PK of the target object is [id]
* The root stack trace is -->
* java.net.SocketException: Connection reset
	at
java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:96)
	at
java.net.SocketOutputStream.write(SocketOutputStream.java:136)
	at
java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
	at
java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
	at org.postgresql.core.PGStream.flush(PGStream.java:494)
	at 
org.postgresql.core.v3.QueryExecutorImpl.sendSync(QueryExecutorImpl.java
:631)
	at 
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:
174)
	at 
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Stateme
nt.java:389)
	at 
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdb
c2Statement.java:330)
	at 
org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2St
atement.java:240)
	at 
com.p6spy.engine.logging.P6LogPreparedStatement.executeQuery(P6LogPrepar
edStatement.java:172)
	at 
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.materializeObject(Unkno
wn 
Source)
	at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getPlainDBObject(Unknow
n 
Source)
	at
org.apache.ojb.broker.core.PersistenceBrokerImpl.getDBObject(Unknown 
Source)
	at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.doGetObjectByIdentity(U
nknown 
Source)
	at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getObjectByIdentity(Unk
nown 
Source)
	at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getObjectByQuery(Unknow
n 
Source)
	at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getObjectByQuery(
Unknown 
Source)
	at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getObjectByQuery(
Unknown 
Source)
	at 
modulverwaltung.persistence.Module_2DAO.findByPrimaryKey(Module_2DAO.jav
a:73)
	at
modulverwaltung.action.ShowModule.performAction(ShowModule.java:32)
	at
modulverwaltung.controller.Controller.doGet(Controller.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:252)
	at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:173)
	at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:213)
	at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:178)
	at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:126)
	at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:105)
	at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:107)
	at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:1
48)
	at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:85
6)
	at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:744)
	at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint
.java:527)
	at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollow
erWorkerThread.java:80)
	at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:684)
	at java.lang.Thread.run(Thread.java:595)

-- 

Abid Hussain
Mail: abid.hussain@abid76.de
Web: http://www.abid76.de

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


Re: Problem with OJB 1.0.3 and ORACLE 10

Posted by Armin Waibel <ar...@apache.org>.
Hi Michele,

Fabbri Michele wrote:
> Hello everybody,
> 
> I have a problem with an application using OJB and Oracle 10, the same
> application work fine with Oracle 9.
> OJB doesn't connect to the DBMS, I activate the log and I obtain the log
> under, have you any suggestion?
> 

I think it's a typo:

 > org.apache.ojb.broker.metadata.JdbcConnectionDescriptor@13ec758[
 >   jcd-alias=PEOPLE_DB

and

 > Obtain broker from pool, used PBKey is org.apache.ojb.broker.PBKey:
 > jcdAlias=PEOPLEDB, user=null, password=null

could this be the case?

regards,
Armin

> Thank a lot
> 
> Michele Fabbri
> 
> 2007-05-10 18:05:35,020 [http-8080-Processor24] DEBUG
> org.apache.ojb.broker.metadata.ConnectionRepository.addDescriptor(Connec
> tionRepository.java:129)
> New descriptor was added:
> org.apache.ojb.broker.metadata.JdbcConnectionDescriptor@13ec758[
>   jcd-alias=PEOPLE_DB
>   default-connection=true
>   dbms=Oracle9i
>   jdbc-level=2.0
>   driver=oracle.jdbc.driver.OracleDriver
>   protocol=jdbc
>   sub-protocol=oracle
>   db-alias=thin:@10.101.101.209:1521:reference
>   user=fedb
>   password=*****
>   eager-release=false
>   ConnectionPoolDescriptor={whenExhaustedAction=2, maxIdle=10,
> maxActive=1000, maxWait=5000, removeAbandoned=false,
> numTestsPerEvictionRun=10, testWhileIdle=false,
> minEvictableIdleTimeMillis=600000, testOnReturn=false,
> logAbandoned=false, removeAbandonedTimeout=300,
> timeBetweenEvictionRunsMillis=5000, testOnBorrow=true}
>   batchMode=false
>   useAutoCommit=AUTO_COMMIT_SET_TRUE_AND_TEMPORARY_FALSE
>   ignoreAutoCommitExceptions=false
>  
> sequenceDescriptor=org.apache.ojb.broker.metadata.SequenceDescriptor@917
> cb0[
>      sequenceManagerClass=class
> org.apache.ojb.broker.util.sequence.SequenceManagerNextValImpl
>      Properties={autoNaming=true}
> ]
> ]
> 
> 2007-05-10 18:05:35,021 [http-8080-Processor24] INFO
> org.apache.ojb.broker.metadata.RepositoryPersistor.readConnectionReposit
> ory(RepositoryPersistor.java:203)
> Read connection repository took 91 ms
> 
> 2007-05-10 18:05:35,050 [http-8080-Processor24] INFO
> org.apache.ojb.broker.metadata.ConnectionRepository.getDescriptor(Connec
> tionRepository.java:73)
> Could not find org.apache.ojb.broker.metadata.JdbcConnectionDescriptor
> for PBKey org.apache.ojb.broker.PBKey: jcdAlias=PEOPLEDB, user=null,
> password=null
> 
> 2007-05-10 18:05:35,055 [http-8080-Processor24] DEBUG
> org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl.createPer
> sistenceBroker(PersistenceBrokerFactoryDefaultImpl.java:86)
> Obtain broker from pool, used PBKey is org.apache.ojb.broker.PBKey:
> jcdAlias=PEOPLEDB, user=null, password=null
> 
> 
> 
> 
> The repository xml file is:
> 
> <?xml version="1.0" encoding="UTF-8"?>
> 
> <!DOCTYPE descriptor-repository PUBLIC
>        "-//Apache Software Foundation//DTD OJB Repository//EN"
>        "repository.dtd"
> [
> 
> <!ENTITY internal SYSTEM "repository_internal.xml">
> ]>
> 
> 
> <descriptor-repository version="1.0" isolation-level="read-uncommitted">
> 	<!-- PEOPLE_DB Oracle -->
> 
> 	<jdbc-connection-descriptor 
> 		jcd-alias="PEOPLE_DB" 
> 		default-connection="true" 
> 		platform="Oracle9i" 
> 		jdbc-level="2.0" 
> 		driver="oracle.jdbc.driver.OracleDriver" 
> 		protocol="jdbc" 
> 		subprotocol="oracle" 
> 		dbalias="thin:@10.101.101.209:1521:reference" 
> 		username="fedb" 
> 		password="reference" 
> 		useAutoCommit="1"
> 		maxWait="20000">
> 		<connection-pool maxActive="1000" maxIdle="10"
> whenExhaustedAction="2" 
> 			testOnBorrow="true"
> timeBetweenEvictionRunsMillis="5000"/>
> 		<sequence-manager
> className="org.apache.ojb.broker.util.sequence.SequenceManagerNextValImp
> l">
> 			<attribute attribute-name="autoNaming"
> attribute-value="true"/>
> 		</sequence-manager>
> 	</jdbc-connection-descriptor>
> 	
> 	<!--
> ************************************************************************
> ************************************************************************
> ***************************-->
> 	<!--
> *************************************************************
> Process*****************************************************************
> ***************************-->
> 	<!--
> ************************************************************************
> ************************************************************************
> ***************************-->
> 	<class-descriptor
> class="it.people.process.data.PplPersistentData"
> table="PENDING_PROCESS">
> 		<field-descriptor id="1" name="oid" column="OID"
> jdbc-type="BIGINT" 
> 			primarykey="true" 
> 	
> conversion="it.people.core.persistence.converters.sql.LongConverter"
> autoincrement="true"/>
> 		<field-descriptor id="2" name="userID" column="USER_ID"
> jdbc-type="VARCHAR"/>
> 		<field-descriptor id="3" name="commune"
> column="COMMUNE_ID" jdbc-type="VARCHAR"
> conversion="it.people.core.persistence.converters.sql.CommuneConverter"/
> 		<field-descriptor id="4" name="processData"
> column="PROCESS_VALUE" jdbc-type="CLOB"
> conversion="it.people.core.persistence.converters.sql.ClobConverter"/>
> 		<field-descriptor id="5" name="processClass"
> column="PROCESS_CLASSNAME" jdbc-type="VARCHAR"
> conversion="it.people.core.persistence.converters.sql.ClassNameConverter
> "/>
> 		<field-descriptor id="6" name="lastModifiedTime"
> column="LAST_MODIFIED_TIME" jdbc-type="TIMESTAMP"
> conversion="it.people.core.persistence.converters.sql.DateConverter"/>
> 		<field-descriptor id="7" name="creationTime"
> column="CREATION_TIME" jdbc-type="TIMESTAMP"
> conversion="it.people.core.persistence.converters.sql.DateConverter"/>
> 		<field-descriptor id="8" name="sent" column="SENT"
> jdbc-type="BIGINT"
> conversion="it.people.core.persistence.converters.sql.BooleanConverter"/
> 		<field-descriptor id="9" name="status" column="STATUS"
> jdbc-type="BIGINT"
> conversion="it.people.core.persistence.converters.sql.StatusConverter"/>
>         <field-descriptor id="10" name="contentName"
> column="CONTENT_NAME" jdbc-type="VARCHAR"/>
>         <field-descriptor id="11" name="contentID" column="CONTENT_ID"
> jdbc-type="VARCHAR"/>
> 		<field-descriptor id="12" name="processName"
> column="PROCESS_NAME" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="13" name="processDataID"
> column="PROCESS_DATA_ID" jdbc-type="VARCHAR"/>
> 
> 		<collection-descriptor name="principal"
> element-class-ref="it.people.core.PplPrincipal" auto-update="true"
> auto-delete="true">
> 			<inverse-foreignkey field-id-ref="1"/>
> 		</collection-descriptor>
> 
> 		<collection-descriptor name="delegate"
> element-class-ref="it.people.core.PplDelegate" auto-update="true"
> auto-delete="true">
> 			<inverse-foreignkey field-id-ref="1"/>
> 		</collection-descriptor>
> 	</class-descriptor>
> 
>     <!-- PENDING_PROCESS_ACL -> PplPrincipal  -->
> 	<class-descriptor class="it.people.core.PplPrincipal"
> table="PENDING_PROCESS_ACL">
> 		<field-descriptor id="1" name="oid" column="PROCESS_ID"
> jdbc-type="BIGINT" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 		<field-descriptor id="2" name="userID" column="USER_ID"
> jdbc-type="VARCHAR" primarykey="true"/>
> 		<field-descriptor id="3" name="role" column="ROLE"
> jdbc-type="VARCHAR" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.PplRoleConverter"/
> 	</class-descriptor>
> 
>     <!-- PENDING_PROCESS_DELEGATE -> PplDelegate  -->
> 	<class-descriptor class="it.people.core.PplDelegate"
> table="PENDING_PROCESS_DELEGATE">
> 		<field-descriptor id="1" name="oid"
> column="PROCESS_ID"  jdbc-type="BIGINT" primarykey="true"/>
> 		<field-descriptor id="2" name="ownerID"
> column="USER_ID"     jdbc-type="VARCHAR" primarykey="true"/>
> 		<field-descriptor id="3" name="delegateID"
> column="DELEGATE_ID" jdbc-type="VARCHAR" primarykey="false"/>
>    </class-descriptor>
> 
>     <!-- PROCESS_DELEGATE -> PplProcessDelegate -->
> 	<class-descriptor class="it.people.core.PplProcessDelegate"
> table="PROCESS_DELEGATE">
> 		<field-descriptor id="1" name="oid"
> column="OID"               jdbc-type="BIGINT" primarykey="true"
> autoincrement="true"/>
> 		<field-descriptor id="2" name="processName"
> column="PROCESS_CLASSNAME" jdbc-type="VARCHAR" primarykey="false"/>
> 		<field-descriptor id="3" name="communeId"
> column="COMMUNE_ID"        jdbc-type="VARCHAR" primarykey="false"/>
> 		<field-descriptor id="4" name="userId"
> column="USER_ID"           jdbc-type="VARCHAR" primarykey="false"/>
> 		<field-descriptor id="5" name="delegateId"
> column="DELEGATE_ID"       jdbc-type="VARCHAR" primarykey="false"/>
> 		<field-descriptor id="6" name="validFrom"
> column="VALID_FROM"        jdbc-type="TIMESTAMP" primarykey="false"
> conversion="it.people.core.persistence.converters.sql.DateConverter"/>
> 		<field-descriptor id="7" name="validTo"
> column="VALID_TO"          jdbc-type="TIMESTAMP" primarykey="false"
> conversion="it.people.core.persistence.converters.sql.DateConverter"/>
>    </class-descriptor>
> 
> 	<class-descriptor class="it.people.City" table="COMMUNE">
> 		<field-descriptor id="1" name="oid" column="OID"
> jdbc-type="VARCHAR" primarykey="true"/>
> 		<field-descriptor id="2" name="name" column="NAME"
> jdbc-type="VARCHAR"/>
> 		<field-descriptor id="3" name="label" column="LABEL"
> jdbc-type="VARCHAR"/>
> 		<field-descriptor id="4" name="aooPrefix"
> column="AOOPREFIX" jdbc-type="VARCHAR"/>		
> 	</class-descriptor>
> 
> 	<class-descriptor class="it.people.process.SubmittedProcess"
> table="SUBMITTED_PROCESS">
> 		<field-descriptor id="1" name="oid" column="OID"
> jdbc-type="BIGINT" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.LongConverter"
> autoincrement="true"/>
> 		<field-descriptor id="2" name="editableProcessId"
> column="EDITABLE_PROCESS_ID" jdbc-type="BIGINT"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 		<field-descriptor id="3" name="user" column="USER_ID"
> jdbc-type="VARCHAR"
> conversion="it.people.core.persistence.converters.sql.UserConverter"/>
> 		<field-descriptor id="4" name="peopleProtocollId"
> column="PEOPLE_PROTOCOL_ID" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="5" name="communeProtocollId"
> column="COMMUNE_PROTOCOL_ID" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="6" name="transportTrackingNumber"
> column="TRANSPORT_TRACKINGNUMBER" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="7" name="commune"
> column="COMMUNE_ID" jdbc-type="VARCHAR"
> conversion="it.people.core.persistence.converters.sql.CommuneConverter"/
> 		<field-descriptor id="8" name="submittedTime"
> column="SUBMITTED_TIME" jdbc-type="TIMESTAMP"
> conversion="it.people.core.persistence.converters.sql.DateConverter"/>
> 		<field-descriptor id="9" name="completed"
> column="COMPLETED" jdbc-type="BIGINT"
> conversion="it.people.core.persistence.converters.sql.BooleanConverter"/
> 
> 		<collection-descriptor name="historyState"
> element-class-ref="it.people.process.SubmittedProcessHistory"
> auto-update="true" auto-delete="true">
> 			<inverse-foreignkey field-id-ref="1"/>
> 		</collection-descriptor>
> 
> 		<collection-descriptor name="processInformation"
> element-class-ref="it.people.process.SubmittedProcessInformation"
> auto-update="true" auto-delete="true">
> 			<inverse-foreignkey field-id-ref="1"/>
> 		</collection-descriptor>
> 
> 		<reference-descriptor 
> 			name="persistentData"
> 	
> class-ref="it.people.process.data.PplPersistentData"
> 			auto-retrieve="true" auto-delete="false"
> auto-update="false" >
> 			<foreignkey field-id-ref="2" />
> 	    </reference-descriptor>
> 	</class-descriptor>
> 
> 	<class-descriptor
> class="it.people.process.SubmittedProcessHistory"
> table="SUBMITTED_PROCESS_HISTORY">
> 		<field-descriptor id="1" name="oid"
> column="SBMT_PROCESS_ID" jdbc-type="BIGINT" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 		<field-descriptor id="2" name="transactionTime"
> column="TRANSACTION_TIME" jdbc-type="TIMESTAMP" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.DateConverter"/>
> 		<field-descriptor id="3" name="state" column="STATUS_ID"
> jdbc-type="BIGINT"
> conversion="it.people.core.persistence.converters.sql.SubmittedProcessSt
> ateConverter"/>
> 	</class-descriptor>
> 
> 	<class-descriptor
> class="it.people.process.SubmittedProcessInformation"
> table="SUBMITTED_PROCESS_INFO">
> 		<field-descriptor id="1" name="oid"
> column="SBMT_PROCESS_ID" jdbc-type="BIGINT" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 		<field-descriptor id="2" name="key"
> column="INFORMATION_KEY" jdbc-type="VARCHAR" primarykey="true"/>
> 		<field-descriptor id="3" name="path"
> column="INFORMATION_PATH" jdbc-type="VARCHAR" />
> 		<field-descriptor id="4" name="marshalledData"
> column="INFORMATION_VALUE" jdbc-type="CLOB"
> conversion="it.people.core.persistence.converters.sql.ClobConverter"/>
> 	</class-descriptor>
> 
>   <!-- ConfigSenderProcess -->
> 	<class-descriptor class="it.people.process.config.ConfigSender"
> table="CONFIGSENDERPROCESS">
> 		<field-descriptor id="1" name="commune"
> column="COMMUNE_ID"     jdbc-type="VARCHAR" primarykey="true"/>
> 		<field-descriptor id="2" name="process"
> column="PROCESS_NAME"   jdbc-type="VARCHAR" primarykey="true"/>
> 		<field-descriptor id="3" name="className"
> column="CLASSNAME"      jdbc-type="VARCHAR" primarykey="false"
> conversion="it.people.core.persistence.converters.sql.ClassNameConverter
> "/>
> 		<field-descriptor id="4" name="mailAddress"
> column="MAILADDRESS"    jdbc-type="VARCHAR" primarykey="false"/>
>  		<field-descriptor id="5" name="pickupPassword"
> column="PICKUPPASSWORD" jdbc-type="VARCHAR" primarykey="false"/>
>  		<field-descriptor id="6" name="dummyPassword"
> column="DUMMY_PASSWORD" jdbc-type="VARCHAR" primarykey="false"/>
>   </class-descriptor>
> 
> 	<!--
> ************************************************************************
> ************** -->
> 	<!-- Gestione categorie
> **************************************************************
> 	
> ************************************************************************
> ************** -->
> 	<class-descriptor class="it.people.content.CategoryImpl"
> table="CATEGORY">
> 		<field-descriptor id="1" name="oid" column="OID"
> jdbc-type="BIGINT" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.LongConverter"
> autoincrement="true"/>
> 		<field-descriptor id="2" name="name" column="NAME"
> jdbc-type="VARCHAR" />
>         <field-descriptor id="3" name="label" column="LABEL"
> jdbc-type="VARCHAR" />
> 
>         <collection-descriptor name="child"
> element-class-ref="it.people.content.CategoryAbstractImpl"
> auto-update="true" auto-delete="true" auto-retrieve="true"
> refresh="true" indirection-table="CHILDCATEGORY">
>             <inverse-foreignkey field-id-ref="1"/>
>             <fk-pointing-to-this-class column="PARENT_ID"/>
>             <fk-pointing-to-element-class column="CAT_ID"/>
>         </collection-descriptor>
> 
> 		<collection-descriptor name="process"
> element-class-ref="it.people.content.ContentImpl" auto-update="true"
> auto-delete="true" auto-retrieve="true">
> 			<inverse-foreignkey field-id-ref="1"/>
> 		</collection-descriptor>
> 	</class-descriptor>
> 
> 	<class-descriptor class="it.people.content.CategoryAbstractImpl"
> table="CATEGORY">
> 		<field-descriptor id="1" name="oid" column="OID"
> jdbc-type="BIGINT" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 	</class-descriptor>
> 
> 	<class-descriptor class="it.people.content.ContentImpl"
> table="CONTENTCATEGORY">
> 		<field-descriptor id="1" name="oid" column="CAT_ID"
> jdbc-type="BIGINT" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 		<field-descriptor id="2" name="key" column="CONTENT_KEY"
> jdbc-type="VARCHAR" primarykey="true"/>
> 		<field-descriptor id="3" name="name"
> column="CONTENT_NAME" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="4" name="processClass"
> column="PROCESS_CLASS" jdbc-type="VARCHAR"
> conversion="it.people.core.persistence.converters.sql.ClassNameConverter
> "/>
> 		<field-descriptor id="5" name="processName"
> column="PROCESS_NAME" jdbc-type="VARCHAR" />
> 	</class-descriptor>
> 
> 
> 	<class-descriptor
> class="it.people.process.sign.SignedDataHolder" table="SIGNSTEPS">
> 		<field-descriptor id="1" name="stepOid"
> column="STEP_OID" primarykey="true" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="2" name="parentOid"
> column="PROCESS_OID" jdbc-type="BIGINT" primarykey="true"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 		<field-descriptor id="3" name="fileName"
> column="FILE_NAME" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="4" name="filePath"
> column="FILE_PATH" jdbc-type="VARCHAR"/>
> 	</class-descriptor>
> 
> 	<!-- puo essere cancellata -->
> 	<class-descriptor class="it.people.process.sign.StepSign"
> table="PROCESS_STEPS">
> 		<field-descriptor id="1" name="oid" column="OID"
> primarykey="true" jdbc-type="BIGINT"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 		<field-descriptor id="2" name="processName"
> column="PROCESS_NAME" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="3" name="orderNumber"
> column="ORDER_NUMBER" jdbc-type="BIGINT"
> conversion="it.people.core.persistence.converters.sql.LongConverter"/>
> 		<field-descriptor id="4" name="jsp" column="JSP_PATH"
> jdbc-type="VARCHAR"/>
> 		<field-descriptor id="5" name="help" column="HELP_PATH"
> jdbc-type="VARCHAR"/>
> 		<field-descriptor id="3" name="active" column="ACTIVE"
> jdbc-type="BIGINT"
> conversion="it.people.core.persistence.converters.sql.BooleanConverter"/
> 	</class-descriptor>
> 
> 
>     <!-- USER_PROFILE -->
> 	<class-descriptor class="it.people.core.PplUser"
> table="USER_PROFILE">
> 		<field-descriptor id="1" name="userID" column="USER_ID"
> primarykey="true" jdbc-type="VARCHAR"/>
> 		<field-descriptor id="2" name="EMail"  column="E_MAIL"
> jdbc-type="VARCHAR"/>
> 		<field-descriptor id="3" name="userName"
> column="USER_NAME"  jdbc-type="VARCHAR"/>
> 
>         <collection-descriptor name="adminCommuni"
> element-class-ref="it.people.core.PplAdminCommune" auto-update="true"
> auto-delete="true" auto-retrieve="true">
> 			<inverse-foreignkey field-id-ref="1"/>
> 		</collection-descriptor>
> 	</class-descriptor>
> 
>     <!-- AMMINISTRATORE_COMMUNE -->
>     <class-descriptor class="it.people.core.PplAdminCommune"
> table="AMMINISTRATORE_COMMUNE">
>             <field-descriptor id="1" name="userID"    column="USER_ID"
> primarykey="true" jdbc-type="VARCHAR"/>
>             <field-descriptor id="2" name="communeID"
> column="COMMUNE_ID" primarykey="true" jdbc-type="VARCHAR"/>
>     </class-descriptor>
> 
> 	<!-- SERVICE_PROFILE -->
>     <class-descriptor class="it.people.core.ServiceProfileStore"
> table="SERVICE_PROFILE">
>             <field-descriptor id="1" name="processName"
> column="PROCESS_NAME" primarykey="true" jdbc-type="VARCHAR"
> autoincrement="false"/>
>             <field-descriptor id="2" name="profile" column="PROFILE"
> jdbc-type="CLOB"/>
>     </class-descriptor>
> 
> 	<!-- include mappings for JUnit tests here -->
> 	<!-- include ojb internal mappings here -->
>     &internal;
> 
> 	<!-- user data of farAway db -->
> </descriptor-repository>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


Problem with OJB 1.0.3 and ORACLE 10

Posted by Fabbri Michele <M....@cedaf.it>.
Hello everybody,

I have a problem with an application using OJB and Oracle 10, the same
application work fine with Oracle 9.
OJB doesn't connect to the DBMS, I activate the log and I obtain the log
under, have you any suggestion?

Thank a lot

Michele Fabbri

2007-05-10 18:05:35,020 [http-8080-Processor24] DEBUG
org.apache.ojb.broker.metadata.ConnectionRepository.addDescriptor(Connec
tionRepository.java:129)
New descriptor was added:
org.apache.ojb.broker.metadata.JdbcConnectionDescriptor@13ec758[
  jcd-alias=PEOPLE_DB
  default-connection=true
  dbms=Oracle9i
  jdbc-level=2.0
  driver=oracle.jdbc.driver.OracleDriver
  protocol=jdbc
  sub-protocol=oracle
  db-alias=thin:@10.101.101.209:1521:reference
  user=fedb
  password=*****
  eager-release=false
  ConnectionPoolDescriptor={whenExhaustedAction=2, maxIdle=10,
maxActive=1000, maxWait=5000, removeAbandoned=false,
numTestsPerEvictionRun=10, testWhileIdle=false,
minEvictableIdleTimeMillis=600000, testOnReturn=false,
logAbandoned=false, removeAbandonedTimeout=300,
timeBetweenEvictionRunsMillis=5000, testOnBorrow=true}
  batchMode=false
  useAutoCommit=AUTO_COMMIT_SET_TRUE_AND_TEMPORARY_FALSE
  ignoreAutoCommitExceptions=false
 
sequenceDescriptor=org.apache.ojb.broker.metadata.SequenceDescriptor@917
cb0[
     sequenceManagerClass=class
org.apache.ojb.broker.util.sequence.SequenceManagerNextValImpl
     Properties={autoNaming=true}
]
]

2007-05-10 18:05:35,021 [http-8080-Processor24] INFO
org.apache.ojb.broker.metadata.RepositoryPersistor.readConnectionReposit
ory(RepositoryPersistor.java:203)
Read connection repository took 91 ms

2007-05-10 18:05:35,050 [http-8080-Processor24] INFO
org.apache.ojb.broker.metadata.ConnectionRepository.getDescriptor(Connec
tionRepository.java:73)
Could not find org.apache.ojb.broker.metadata.JdbcConnectionDescriptor
for PBKey org.apache.ojb.broker.PBKey: jcdAlias=PEOPLEDB, user=null,
password=null

2007-05-10 18:05:35,055 [http-8080-Processor24] DEBUG
org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl.createPer
sistenceBroker(PersistenceBrokerFactoryDefaultImpl.java:86)
Obtain broker from pool, used PBKey is org.apache.ojb.broker.PBKey:
jcdAlias=PEOPLEDB, user=null, password=null




The repository xml file is:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE descriptor-repository PUBLIC
       "-//Apache Software Foundation//DTD OJB Repository//EN"
       "repository.dtd"
[

<!ENTITY internal SYSTEM "repository_internal.xml">
]>


<descriptor-repository version="1.0" isolation-level="read-uncommitted">
	<!-- PEOPLE_DB Oracle -->

	<jdbc-connection-descriptor 
		jcd-alias="PEOPLE_DB" 
		default-connection="true" 
		platform="Oracle9i" 
		jdbc-level="2.0" 
		driver="oracle.jdbc.driver.OracleDriver" 
		protocol="jdbc" 
		subprotocol="oracle" 
		dbalias="thin:@10.101.101.209:1521:reference" 
		username="fedb" 
		password="reference" 
		useAutoCommit="1"
		maxWait="20000">
		<connection-pool maxActive="1000" maxIdle="10"
whenExhaustedAction="2" 
			testOnBorrow="true"
timeBetweenEvictionRunsMillis="5000"/>
		<sequence-manager
className="org.apache.ojb.broker.util.sequence.SequenceManagerNextValImp
l">
			<attribute attribute-name="autoNaming"
attribute-value="true"/>
		</sequence-manager>
	</jdbc-connection-descriptor>
	
	<!--
************************************************************************
************************************************************************
***************************-->
	<!--
*************************************************************
Process*****************************************************************
***************************-->
	<!--
************************************************************************
************************************************************************
***************************-->
	<class-descriptor
class="it.people.process.data.PplPersistentData"
table="PENDING_PROCESS">
		<field-descriptor id="1" name="oid" column="OID"
jdbc-type="BIGINT" 
			primarykey="true" 
	
conversion="it.people.core.persistence.converters.sql.LongConverter"
autoincrement="true"/>
		<field-descriptor id="2" name="userID" column="USER_ID"
jdbc-type="VARCHAR"/>
		<field-descriptor id="3" name="commune"
column="COMMUNE_ID" jdbc-type="VARCHAR"
conversion="it.people.core.persistence.converters.sql.CommuneConverter"/
>
		<field-descriptor id="4" name="processData"
column="PROCESS_VALUE" jdbc-type="CLOB"
conversion="it.people.core.persistence.converters.sql.ClobConverter"/>
		<field-descriptor id="5" name="processClass"
column="PROCESS_CLASSNAME" jdbc-type="VARCHAR"
conversion="it.people.core.persistence.converters.sql.ClassNameConverter
"/>
		<field-descriptor id="6" name="lastModifiedTime"
column="LAST_MODIFIED_TIME" jdbc-type="TIMESTAMP"
conversion="it.people.core.persistence.converters.sql.DateConverter"/>
		<field-descriptor id="7" name="creationTime"
column="CREATION_TIME" jdbc-type="TIMESTAMP"
conversion="it.people.core.persistence.converters.sql.DateConverter"/>
		<field-descriptor id="8" name="sent" column="SENT"
jdbc-type="BIGINT"
conversion="it.people.core.persistence.converters.sql.BooleanConverter"/
>
		<field-descriptor id="9" name="status" column="STATUS"
jdbc-type="BIGINT"
conversion="it.people.core.persistence.converters.sql.StatusConverter"/>
        <field-descriptor id="10" name="contentName"
column="CONTENT_NAME" jdbc-type="VARCHAR"/>
        <field-descriptor id="11" name="contentID" column="CONTENT_ID"
jdbc-type="VARCHAR"/>
		<field-descriptor id="12" name="processName"
column="PROCESS_NAME" jdbc-type="VARCHAR"/>
		<field-descriptor id="13" name="processDataID"
column="PROCESS_DATA_ID" jdbc-type="VARCHAR"/>

		<collection-descriptor name="principal"
element-class-ref="it.people.core.PplPrincipal" auto-update="true"
auto-delete="true">
			<inverse-foreignkey field-id-ref="1"/>
		</collection-descriptor>

		<collection-descriptor name="delegate"
element-class-ref="it.people.core.PplDelegate" auto-update="true"
auto-delete="true">
			<inverse-foreignkey field-id-ref="1"/>
		</collection-descriptor>
	</class-descriptor>

    <!-- PENDING_PROCESS_ACL -> PplPrincipal  -->
	<class-descriptor class="it.people.core.PplPrincipal"
table="PENDING_PROCESS_ACL">
		<field-descriptor id="1" name="oid" column="PROCESS_ID"
jdbc-type="BIGINT" primarykey="true"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
		<field-descriptor id="2" name="userID" column="USER_ID"
jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor id="3" name="role" column="ROLE"
jdbc-type="VARCHAR" primarykey="true"
conversion="it.people.core.persistence.converters.sql.PplRoleConverter"/
>
	</class-descriptor>

    <!-- PENDING_PROCESS_DELEGATE -> PplDelegate  -->
	<class-descriptor class="it.people.core.PplDelegate"
table="PENDING_PROCESS_DELEGATE">
		<field-descriptor id="1" name="oid"
column="PROCESS_ID"  jdbc-type="BIGINT" primarykey="true"/>
		<field-descriptor id="2" name="ownerID"
column="USER_ID"     jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor id="3" name="delegateID"
column="DELEGATE_ID" jdbc-type="VARCHAR" primarykey="false"/>
   </class-descriptor>

    <!-- PROCESS_DELEGATE -> PplProcessDelegate -->
	<class-descriptor class="it.people.core.PplProcessDelegate"
table="PROCESS_DELEGATE">
		<field-descriptor id="1" name="oid"
column="OID"               jdbc-type="BIGINT" primarykey="true"
autoincrement="true"/>
		<field-descriptor id="2" name="processName"
column="PROCESS_CLASSNAME" jdbc-type="VARCHAR" primarykey="false"/>
		<field-descriptor id="3" name="communeId"
column="COMMUNE_ID"        jdbc-type="VARCHAR" primarykey="false"/>
		<field-descriptor id="4" name="userId"
column="USER_ID"           jdbc-type="VARCHAR" primarykey="false"/>
		<field-descriptor id="5" name="delegateId"
column="DELEGATE_ID"       jdbc-type="VARCHAR" primarykey="false"/>
		<field-descriptor id="6" name="validFrom"
column="VALID_FROM"        jdbc-type="TIMESTAMP" primarykey="false"
conversion="it.people.core.persistence.converters.sql.DateConverter"/>
		<field-descriptor id="7" name="validTo"
column="VALID_TO"          jdbc-type="TIMESTAMP" primarykey="false"
conversion="it.people.core.persistence.converters.sql.DateConverter"/>
   </class-descriptor>

	<class-descriptor class="it.people.City" table="COMMUNE">
		<field-descriptor id="1" name="oid" column="OID"
jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor id="2" name="name" column="NAME"
jdbc-type="VARCHAR"/>
		<field-descriptor id="3" name="label" column="LABEL"
jdbc-type="VARCHAR"/>
		<field-descriptor id="4" name="aooPrefix"
column="AOOPREFIX" jdbc-type="VARCHAR"/>		
	</class-descriptor>

	<class-descriptor class="it.people.process.SubmittedProcess"
table="SUBMITTED_PROCESS">
		<field-descriptor id="1" name="oid" column="OID"
jdbc-type="BIGINT" primarykey="true"
conversion="it.people.core.persistence.converters.sql.LongConverter"
autoincrement="true"/>
		<field-descriptor id="2" name="editableProcessId"
column="EDITABLE_PROCESS_ID" jdbc-type="BIGINT"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
		<field-descriptor id="3" name="user" column="USER_ID"
jdbc-type="VARCHAR"
conversion="it.people.core.persistence.converters.sql.UserConverter"/>
		<field-descriptor id="4" name="peopleProtocollId"
column="PEOPLE_PROTOCOL_ID" jdbc-type="VARCHAR"/>
		<field-descriptor id="5" name="communeProtocollId"
column="COMMUNE_PROTOCOL_ID" jdbc-type="VARCHAR"/>
		<field-descriptor id="6" name="transportTrackingNumber"
column="TRANSPORT_TRACKINGNUMBER" jdbc-type="VARCHAR"/>
		<field-descriptor id="7" name="commune"
column="COMMUNE_ID" jdbc-type="VARCHAR"
conversion="it.people.core.persistence.converters.sql.CommuneConverter"/
>
		<field-descriptor id="8" name="submittedTime"
column="SUBMITTED_TIME" jdbc-type="TIMESTAMP"
conversion="it.people.core.persistence.converters.sql.DateConverter"/>
		<field-descriptor id="9" name="completed"
column="COMPLETED" jdbc-type="BIGINT"
conversion="it.people.core.persistence.converters.sql.BooleanConverter"/
>

		<collection-descriptor name="historyState"
element-class-ref="it.people.process.SubmittedProcessHistory"
auto-update="true" auto-delete="true">
			<inverse-foreignkey field-id-ref="1"/>
		</collection-descriptor>

		<collection-descriptor name="processInformation"
element-class-ref="it.people.process.SubmittedProcessInformation"
auto-update="true" auto-delete="true">
			<inverse-foreignkey field-id-ref="1"/>
		</collection-descriptor>

		<reference-descriptor 
			name="persistentData"
	
class-ref="it.people.process.data.PplPersistentData"
			auto-retrieve="true" auto-delete="false"
auto-update="false" >
			<foreignkey field-id-ref="2" />
	    </reference-descriptor>
	</class-descriptor>

	<class-descriptor
class="it.people.process.SubmittedProcessHistory"
table="SUBMITTED_PROCESS_HISTORY">
		<field-descriptor id="1" name="oid"
column="SBMT_PROCESS_ID" jdbc-type="BIGINT" primarykey="true"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
		<field-descriptor id="2" name="transactionTime"
column="TRANSACTION_TIME" jdbc-type="TIMESTAMP" primarykey="true"
conversion="it.people.core.persistence.converters.sql.DateConverter"/>
		<field-descriptor id="3" name="state" column="STATUS_ID"
jdbc-type="BIGINT"
conversion="it.people.core.persistence.converters.sql.SubmittedProcessSt
ateConverter"/>
	</class-descriptor>

	<class-descriptor
class="it.people.process.SubmittedProcessInformation"
table="SUBMITTED_PROCESS_INFO">
		<field-descriptor id="1" name="oid"
column="SBMT_PROCESS_ID" jdbc-type="BIGINT" primarykey="true"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
		<field-descriptor id="2" name="key"
column="INFORMATION_KEY" jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor id="3" name="path"
column="INFORMATION_PATH" jdbc-type="VARCHAR" />
		<field-descriptor id="4" name="marshalledData"
column="INFORMATION_VALUE" jdbc-type="CLOB"
conversion="it.people.core.persistence.converters.sql.ClobConverter"/>
	</class-descriptor>

  <!-- ConfigSenderProcess -->
	<class-descriptor class="it.people.process.config.ConfigSender"
table="CONFIGSENDERPROCESS">
		<field-descriptor id="1" name="commune"
column="COMMUNE_ID"     jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor id="2" name="process"
column="PROCESS_NAME"   jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor id="3" name="className"
column="CLASSNAME"      jdbc-type="VARCHAR" primarykey="false"
conversion="it.people.core.persistence.converters.sql.ClassNameConverter
"/>
		<field-descriptor id="4" name="mailAddress"
column="MAILADDRESS"    jdbc-type="VARCHAR" primarykey="false"/>
 		<field-descriptor id="5" name="pickupPassword"
column="PICKUPPASSWORD" jdbc-type="VARCHAR" primarykey="false"/>
 		<field-descriptor id="6" name="dummyPassword"
column="DUMMY_PASSWORD" jdbc-type="VARCHAR" primarykey="false"/>
  </class-descriptor>

	<!--
************************************************************************
************** -->
	<!-- Gestione categorie
**************************************************************
	
************************************************************************
************** -->
	<class-descriptor class="it.people.content.CategoryImpl"
table="CATEGORY">
		<field-descriptor id="1" name="oid" column="OID"
jdbc-type="BIGINT" primarykey="true"
conversion="it.people.core.persistence.converters.sql.LongConverter"
autoincrement="true"/>
		<field-descriptor id="2" name="name" column="NAME"
jdbc-type="VARCHAR" />
        <field-descriptor id="3" name="label" column="LABEL"
jdbc-type="VARCHAR" />

        <collection-descriptor name="child"
element-class-ref="it.people.content.CategoryAbstractImpl"
auto-update="true" auto-delete="true" auto-retrieve="true"
refresh="true" indirection-table="CHILDCATEGORY">
            <inverse-foreignkey field-id-ref="1"/>
            <fk-pointing-to-this-class column="PARENT_ID"/>
            <fk-pointing-to-element-class column="CAT_ID"/>
        </collection-descriptor>

		<collection-descriptor name="process"
element-class-ref="it.people.content.ContentImpl" auto-update="true"
auto-delete="true" auto-retrieve="true">
			<inverse-foreignkey field-id-ref="1"/>
		</collection-descriptor>
	</class-descriptor>

	<class-descriptor class="it.people.content.CategoryAbstractImpl"
table="CATEGORY">
		<field-descriptor id="1" name="oid" column="OID"
jdbc-type="BIGINT" primarykey="true"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
	</class-descriptor>

	<class-descriptor class="it.people.content.ContentImpl"
table="CONTENTCATEGORY">
		<field-descriptor id="1" name="oid" column="CAT_ID"
jdbc-type="BIGINT" primarykey="true"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
		<field-descriptor id="2" name="key" column="CONTENT_KEY"
jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor id="3" name="name"
column="CONTENT_NAME" jdbc-type="VARCHAR"/>
		<field-descriptor id="4" name="processClass"
column="PROCESS_CLASS" jdbc-type="VARCHAR"
conversion="it.people.core.persistence.converters.sql.ClassNameConverter
"/>
		<field-descriptor id="5" name="processName"
column="PROCESS_NAME" jdbc-type="VARCHAR" />
	</class-descriptor>


	<class-descriptor
class="it.people.process.sign.SignedDataHolder" table="SIGNSTEPS">
		<field-descriptor id="1" name="stepOid"
column="STEP_OID" primarykey="true" jdbc-type="VARCHAR"/>
		<field-descriptor id="2" name="parentOid"
column="PROCESS_OID" jdbc-type="BIGINT" primarykey="true"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
		<field-descriptor id="3" name="fileName"
column="FILE_NAME" jdbc-type="VARCHAR"/>
		<field-descriptor id="4" name="filePath"
column="FILE_PATH" jdbc-type="VARCHAR"/>
	</class-descriptor>

	<!-- puo essere cancellata -->
	<class-descriptor class="it.people.process.sign.StepSign"
table="PROCESS_STEPS">
		<field-descriptor id="1" name="oid" column="OID"
primarykey="true" jdbc-type="BIGINT"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
		<field-descriptor id="2" name="processName"
column="PROCESS_NAME" jdbc-type="VARCHAR"/>
		<field-descriptor id="3" name="orderNumber"
column="ORDER_NUMBER" jdbc-type="BIGINT"
conversion="it.people.core.persistence.converters.sql.LongConverter"/>
		<field-descriptor id="4" name="jsp" column="JSP_PATH"
jdbc-type="VARCHAR"/>
		<field-descriptor id="5" name="help" column="HELP_PATH"
jdbc-type="VARCHAR"/>
		<field-descriptor id="3" name="active" column="ACTIVE"
jdbc-type="BIGINT"
conversion="it.people.core.persistence.converters.sql.BooleanConverter"/
>
	</class-descriptor>


    <!-- USER_PROFILE -->
	<class-descriptor class="it.people.core.PplUser"
table="USER_PROFILE">
		<field-descriptor id="1" name="userID" column="USER_ID"
primarykey="true" jdbc-type="VARCHAR"/>
		<field-descriptor id="2" name="EMail"  column="E_MAIL"
jdbc-type="VARCHAR"/>
		<field-descriptor id="3" name="userName"
column="USER_NAME"  jdbc-type="VARCHAR"/>

        <collection-descriptor name="adminCommuni"
element-class-ref="it.people.core.PplAdminCommune" auto-update="true"
auto-delete="true" auto-retrieve="true">
			<inverse-foreignkey field-id-ref="1"/>
		</collection-descriptor>
	</class-descriptor>

    <!-- AMMINISTRATORE_COMMUNE -->
    <class-descriptor class="it.people.core.PplAdminCommune"
table="AMMINISTRATORE_COMMUNE">
            <field-descriptor id="1" name="userID"    column="USER_ID"
primarykey="true" jdbc-type="VARCHAR"/>
            <field-descriptor id="2" name="communeID"
column="COMMUNE_ID" primarykey="true" jdbc-type="VARCHAR"/>
    </class-descriptor>

	<!-- SERVICE_PROFILE -->
    <class-descriptor class="it.people.core.ServiceProfileStore"
table="SERVICE_PROFILE">
            <field-descriptor id="1" name="processName"
column="PROCESS_NAME" primarykey="true" jdbc-type="VARCHAR"
autoincrement="false"/>
            <field-descriptor id="2" name="profile" column="PROFILE"
jdbc-type="CLOB"/>
    </class-descriptor>

	<!-- include mappings for JUnit tests here -->
	<!-- include ojb internal mappings here -->
    &internal;

	<!-- user data of farAway db -->
</descriptor-repository>

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org


Re: java.net.SocketException: Connection reset

Posted by Armin Waibel <ar...@apache.org>.
Hi Abid,

Abid Hussain wrote:
> Hello everybody,
> 
> I'm using OJB in my web applicatin now for more than one year, and it
>  did really fine.
> 
> But since some time an exception occurs which I can't figure out. 
> Obviously the connection to the backend was reset. May it be the case
> that the db connection timed out? Anybody got an idea what I can do
> about this?
> 
> I found this issue in jira but I'm not sure if it's the same case as
> mine: 
> http://issues.apache.org/jira/browse/OJB-70?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
> 
> 

It could be a similar connection time out issue. In this case try to
- enable automatic reconnect of timed out connections in the jdbc-driver
- or use a validation query
- or enable automatic cleanup of idle connections in the connection pool
to prevent timed out connections.

If the exception only occur under heavy load it could be a concurrency 
issue:
http://archives.postgresql.org/pgsql-jdbc/2006-09/msg00001.php
This could happen when different threads at the same time operate on the 
same PersistenceBroker instance.

regards,
Armin

> 
> Best regards,
> 
> Abid
> 
> Here's the stack trace: ERROR:
> [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] * SQLException
> during execution of sql-statement: * sql statement was 'SELECT 
> A0.Id,A0.modul_Name,A0.LP,A0.Zuordnung,A0.Ziele,A0.Inhalte,A0.Literatur,A0.Voraussetzung,A0.Modulpruefung,A0.Selbststudium,A0.Form_Teilnahme,A0.Sprache,A0.Aufwand_Gesamt,A0.Dauer,A0.Haeufigkeit,A0.Sonst_Verantwortliche
>  FROM Modul_2 A0 WHERE A0.Id = ?' * Exception message is [An I/O
> error occured while sending to the backend.] * Vendor error code [0] 
> * SQL state code [08006] * Target class is
> 'modulverwaltung.beans.Module_2' * PK of the target object is [id] *
> The root stack trace is --> * java.net.SocketException: Connection
> reset at
> java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:96) 
> at java.net.SocketOutputStream.write(SocketOutputStream.java:136) at
>  
> java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
>  at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
>  at org.postgresql.core.PGStream.flush(PGStream.java:494) at 
> org.postgresql.core.v3.QueryExecutorImpl.sendSync(QueryExecutorImpl.java:631)
> 
> 
> at 
> org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:174)
> 
> 
> at 
> org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:389)
> 
> 
> at 
> org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:330)
> 
> 
> at 
> org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:240)
> 
> 
> at 
> com.p6spy.engine.logging.P6LogPreparedStatement.executeQuery(P6LogPreparedStatement.java:172)
> 
> 
> at 
> org.apache.ojb.broker.accesslayer.JdbcAccessImpl.materializeObject(Unknown
>  Source) at 
> org.apache.ojb.broker.core.PersistenceBrokerImpl.getPlainDBObject(Unknown
>  Source) at 
> org.apache.ojb.broker.core.PersistenceBrokerImpl.getDBObject(Unknown
>  Source) at 
> org.apache.ojb.broker.core.PersistenceBrokerImpl.doGetObjectByIdentity(Unknown
>  Source) at 
> org.apache.ojb.broker.core.PersistenceBrokerImpl.getObjectByIdentity(Unknown
>  Source) at 
> org.apache.ojb.broker.core.PersistenceBrokerImpl.getObjectByQuery(Unknown
>  Source) at 
> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getObjectByQuery(Unknown
>  Source) at 
> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getObjectByQuery(Unknown
>  Source) at 
> modulverwaltung.persistence.Module_2DAO.findByPrimaryKey(Module_2DAO.java:73)
> 
> 
> at
> modulverwaltung.action.ShowModule.performAction(ShowModule.java:32) 
> at modulverwaltung.controller.Controller.doGet(Controller.java:70) at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> 
> 
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> 
> 
> at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> 
> 
> at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> 
> 
> at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> 
> 
> at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> 
> 
> at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> 
> 
> at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>  at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
>  at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
> 
> 
> at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> 
> 
> at 
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> 
> 
> at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> 
> 
> at java.lang.Thread.run(Thread.java:595)
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org