jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anand Bhagwat" <abbhagwa...@gmail.com>
Subject Re: Need configuration details for running jackrabbit in managed mode (XA transactions)
Date Mon, 14 Jul 2008 08:51:51 GMT
Do I need to do anything specific for that?
Currently I am using Mysql Bundle persistant manager and DBFileManager on
mysql database. The user with which jackrabbit connects to database has full
access to the corresponding schema.

Regards,
Anand.

2008/7/14 Marcel Reutegger <marcel.reutegger@gmx.net>:

> Hi,
>
> please note that jackrabbit needs full control over the database
> connections it operates on. that also includes committing a transaction.
>
> in a XA environment jackrabbit itself will act as a XA resource and control
> when changes to the underlying database are committed.
>
> regards
>  marcel
>
> Anand Bhagwat wrote:
>
>> I want to use jackrabbit in a managed environment. Operations on
>>  jackrabbit
>> content repository should participate in  XA  transactions.
>>
>> 1) Please let me know appropriate repository configuration.
>>
>> Here are the details of my env:
>> Server : JBoss 4.2.2 GA
>> Spring : 2.5.4
>> Hibernate: 3.x
>> Jackrabbit 1.4
>> springmodules 0.8
>> jackrabbit-jca 1.4
>>
>> I am using *org.apache.jackrabbit.core.fs.db.DbFileSystem* and *
>> org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager.
>>
>> *2) I get an error when I create a new transaction from an existing
>> transaction using PROPOGATION_REQUIRES_NEW especially when I do some
>> operation on jackrabbit like addNode, addProperty etc. Am I missing
>> something?
>>
>> java.lang.IllegalStateException: Can't enlist - already a tx!
>>    at
>>
>> org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener.enlist(TxConnectionManager.java:516)
>>    at
>>
>> org.jboss.resource.connectionmanager.TxConnectionManager.transactionStarted(TxConnectionManager.java:328)
>>    at
>>
>> org.jboss.resource.connectionmanager.CachedConnectionManager.userTransactionStarted(CachedConnectionManager.java:360)
>>    at
>>
>> org.jboss.tm.usertx.client.ServerVMClientUserTransaction.begin(ServerVMClientUserTransaction.java:127)
>>    at
>>
>> org.springframework.transaction.jta.JtaTransactionManager.doJtaBegin(JtaTransactionManager.java:886)
>>    at
>>
>> org.springframework.transaction.jta.JtaTransactionManager.doBegin(JtaTransactionManager.java:843)
>>    at
>>
>> org.springframework.transaction.support.AbstractPlatformTransactionManager.handleExistingTransaction(AbstractPlatformTransactionManager.java:423)
>>    at
>>
>> org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:356)
>>    at
>>
>> org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:125)
>>    at
>>
>> com.sungard.cs.docrepos.util.InfinityIdentityGenerator.generate(InfinityIdentityGenerator.java:44)
>>    at
>>
>> org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:91)
>>    at
>>
>> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)
>>    at
>>
>> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:175)
>>    at
>>
>> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:98)
>>    at
>>
>> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
>>    at
>> org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:502)
>>    at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:494)
>>    at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:490)
>>    at
>>
>> org.springframework.orm.hibernate3.HibernateTemplate$16.doInHibernate(HibernateTemplate.java:747)
>>    at
>>
>> org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:419)
>>    at
>>
>> org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
>>    at
>>
>> org.springframework.orm.hibernate3.HibernateTemplate.saveOrUpdate(HibernateTemplate.java:744)
>>    at
>>
>> com.sungard.framework.base.dao.hibernate.BaseDaoHibernate.add(BaseDaoHibernate.java:68)
>>    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:585)
>>    at
>>
>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
>>    at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>>    at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>>    at
>>
>> org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:50)
>>    at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>>    at
>>
>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>>    at $Proxy58.add(Unknown Source)
>>    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:585)
>>    at
>>
>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
>>    at
>>
>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
>>    at $Proxy99.add(Unknown Source)
>>    at
>>
>> com.sungard.framework.base.service.impl.ServiceImpl.add(ServiceImpl.java:87)
>>    at
>>
>> com.sungard.cs.admin.firmprofile.service.impl.FirmProfileServiceImpl.saveFirmProfile(FirmProfileServiceImpl.java:240)
>>    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:585)
>>    at
>>
>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
>>    at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>>    at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>>    at
>>
>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>>    at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>>    at
>>
>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>>    at $Proxy101.saveFirmProfile(Unknown Source)
>>    at
>>
>> com.sungard.cs.admin.firmprofile.action.FirmProfileAction.saveProfile(FirmProfileAction.java:1043)
>>    at
>>
>> com.sungard.cs.admin.firmprofile.action.FirmProfileAction.doUpdate(FirmProfileAction.java:605)
>>    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:585)
>>    at
>>
>> com.sungard.framework.base.action.BaseAction.dispatchMethod(BaseAction.java:402)
>>    at
>> com.sungard.framework.base.action.BaseAction.execute(BaseAction.java:176)
>>    at
>>
>> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
>>    at
>>
>> com.sungard.framework.controller.CSARequestProcessor.processActionPerform(CSARequestProcessor.java:252)
>>    at
>>
>> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
>>    at
>> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
>>    at
>> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
>>    at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
>>    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>>    at
>>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>    at
>>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>    at
>>
>> com.sungard.cs.admin.sessionmanager.SessionManagerFilter.doFilter(SessionManagerFilter.java:65)
>>    at
>>
>> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
>>    at
>>
>> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
>>    at
>>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>    at
>>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>    at
>>
>> org.springframework.web.multipart.support.MultipartFilter.doFilterInternal(MultipartFilter.java:112)
>>    at
>>
>> com.sungard.framework.web.multipart.support.CSAMultipartFilter.doFilterInternal(CSAMultipartFilter.java:55)
>>    at
>>
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>>    at
>>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>    at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
>>
>> Thanks,
>> Anand.*
>>
>> *
>>
>>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message