jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Adamo Bozzetti <adamo.bozze...@abfidee.it>
Subject Problem with jboss datasource
Date Fri, 21 Sep 2007 13:35:00 GMT
Hi all,
I'm using jackrabbit deployed on jboss 4.0.3 sp1 in a model 2 
configuration and i use Oracle 10g as db persistence layer. I'm using 
jackrabbit 1.2.3 and jdbc driver ojdbc14.jar.
When i configure the persistence manager accessing directly the db with 
a configuration like this:
 <PersistenceManager 
class="org.apache.jackrabbit.core.state.db.OraclePersistenceManager">
          <param name="driver" value="oracle.jdbc.OracleDriver"/>
          <param name="url" 
value="jdbc:oracle:thin:@192.168.1.3:1521:abftest"/>
          <param name="user" value="jackrabbit"/>
          <param name="password" value="password"/>
          <param name="schema" value="oracle"/>
          <param name="schemaObjectPrefix" value="dmarea_"/>
          <param name="externalBLOBs" value="true"/>
  </PersistenceManager>
there are no proglems in normal use, but when the db is stopped for the 
back up operation and then restarted, i noticed that the connection are 
non refreshed correctly, so i prefer to use the data source managed 
directly by the application server. But if i use a data source of jboss 
in a configuration like this:
     <PersistenceManager 
class="org.apache.jackrabbit.core.state.db.JNDIDatabasePersistenceManager">
          <param name="dataSourceLocation" value="java:/JackRabbitDS"/>
          <param name="schema" value="oracle"/>
          <param name="schemaObjectPrefix" value="dmarea_"/>
          <param name="externalBLOBs" value="true"/>
        </PersistenceManager>
I have problem writing node state because the dimension of the blob 
excedes the mazimum length, the stacktrace is below:
2007-09-21 14:33:36,687 ERROR 
[org.apache.jackrabbit.core.persistence.db.DatabasePersistenceManager] 
failed to write node state: 7b5eaf19-85eb-4392-8d4e-0d8b183b8138
java.sql.SQLException: La dimensione dei dati è superiore alla 
dimensione massima per questo tipo: 1024 (The dimension of data is above 
the maximun length for this type)
        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
        at oracle.jdbc.ttc7.TTCItem.setArrayData(TTCItem.java:95)
        at 
oracle.jdbc.dbaccess.DBDataSetImpl.setBytesBindItem(DBDataSetImpl.java:2445)
        at 
oracle.jdbc.driver.OraclePreparedStatement.setItem(OraclePreparedStatement.java:1170)
        at 
oracle.jdbc.driver.OraclePreparedStatement.setBytes(OraclePreparedStatement.java:2212)
        at 
oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3006)
        at 
oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3221)
        at 
org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.setObject(WrappedPreparedStatement.java:432)
        at 
org.apache.jackrabbit.core.persistence.db.DatabasePersistenceManager.executeStmt(DatabasePersistenceManager.java:831)
        at 
org.apache.jackrabbit.core.persistence.db.DatabasePersistenceManager.store(DatabasePersistenceManager.java:427)
        at 
org.apache.jackrabbit.core.persistence.AbstractPersistenceManager.store(AbstractPersistenceManager.java:82)
        at 
org.apache.jackrabbit.core.persistence.db.DatabasePersistenceManager.store(DatabasePersistenceManager.java:274)
        at 
org.apache.jackrabbit.core.state.SharedItemStateManager$Update.end(SharedItemStateManager.java:675)
        at 
org.apache.jackrabbit.core.state.XAItemStateManager.commit(XAItemStateManager.java:162)
        at 
org.apache.jackrabbit.core.TransactionContext.commit(TransactionContext.java:172)
        at 
org.apache.jackrabbit.core.XASessionImpl.commit(XASessionImpl.java:315)
        at 
org.apache.jackrabbit.jca.TransactionBoundXAResource.commit(TransactionBoundXAResource.java:39)
        at 
org.jboss.tm.TransactionImpl$Resource.commit(TransactionImpl.java:2233)
        at 
org.jboss.tm.TransactionImpl.commitResources(TransactionImpl.java:1764)
        at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:340)
        at 
org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCMT.java:486)
        at 
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:346)
        at 
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166)
        at 
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:153)
        at 
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
        at 
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
        at 
org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)
        at org.jboss.ejb.Container.invoke(Container.java:873)

I have already seen this problem using jboss datasource managing blob 
data, but it can be solved using the underlying connection instead of 
the wrapped connection of jboss.
I search in the list but i don't find anything for this.
Can anyone help me?
Thank you in advance.

-- 
Adamo Bozzetti
ABF Ideee snc
Corso Matteotti, 10
26100 CREMONA
tel. 0372/800746
fax  0372/800746
e-mail: adamo.bozzetti@abfidee.it
url: www.abfidee.it

Le informazioni contenute nella presente e-mail e nei documenti eventualmente allegati sono
confidenziali e sono comunque  riservate al destinatario delle stesse.
La loro diffusione, distribuzione e/o copia da parte di terzi è proibita e può costituire
violazione della normativa che tutela il diritto alla privacy.
Se avete ricevuto questa comunicazione per errore, Vi preghiamo di informare immediatamente
il mittente del messaggio e di distruggere questa e-mail.
________________________________________________________________________________________
This e-mail is confidential and it is legally privileged.
If you have received it in error, please notify us immediately by reply e-mail and then delete
this message from your system.
Please do not copy it or use it for any purposes, or disclose its contents to any other person.
Mind that to do so could be a breach of Italian privacy Law.
Thank you for your co-operation.


Mime
View raw message