[jboss-user] [JBoss Portal] - error when changing identity data source
JohnnyTheHun
do-not-reply at jboss.com
Sat Mar 1 13:37:58 EST 2008
System:
Windows (vista)
JBoss Portal + JBoss AS 4.2.2 bundle, freshly downloaded from jboss.
My goal: I want to store user(account) information in my database instead of bundled hsqldb. (In the long run I want to store all portal info in my db)
I looked at the reference, searched the forums to find a solution for changing the default hibernate user datasource to a postgresql datasource. I am quite new to jboss, so I probably don't understand the majority of the documents.
In the end what i did was:
1. created a new datasource called XyzDS, defined in portal-xyz-ds.xml
2. I modified
jboss-portal.sar\META-INF\jboss-service.xml
and put a
<depends>jboss.jca:service=DataSourceBinding,name=XyzDS</depends>
after each PortalDS ...PortalDS tag
3. I modified
jboss-portal.sar\conf\hibernate\user\hibernate.cfg.xml
i changed datasource to XyzDS and added auto update so that it creates the tables instead of me, and forced the dialect:
| <property name="connection.datasource">java:XyzDS</property>
| <property name="hbm2ddl.auto">update</property>
| <property name="dialect">org.hibernate.dialect.PostgreSQLDialect</property>
|
Every time I log in and try to do something it always throws the following exception:
| HTTP Status 500 -
|
| type Exception report
|
| message
|
| description The server encountered an internal error () that prevented it from fulfilling this request.
|
| exception
|
| javax.servlet.ServletException: javax.resource.ResourceException: Transaction is not active: tx=TransactionImple < ac, BasicAction: -3f5751ff:ee99:47c99ba6:26b status: ActionStatus.ABORT_ONLY >
| org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:406)
| javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
| org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
|
| root cause
|
| javax.resource.ResourceException: Transaction is not active: tx=TransactionImple < ac, BasicAction: -3f5751ff:ee99:47c99ba6:26b status: ActionStatus.ABORT_ONLY >
| org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:304)
| org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:396)
| org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:842)
| org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88)
| org.hibernate.connection.DatasourceConnectionProvider.getConnection(DatasourceConnectionProvider.java:69)
| org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:423)
| org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144)
| org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:139)
| org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1547)
| org.hibernate.loader.Loader.doQuery(Loader.java:673)
| org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
| org.hibernate.loader.Loader.loadEntity(Loader.java:1907)
| org.hibernate.loader.entity.CollectionElementLoader.loadElement(CollectionElementLoader.java:72)
| org.hibernate.persister.collection.OneToManyPersister.getElementByIndex(OneToManyPersister.java:360)
| org.hibernate.collection.AbstractPersistentCollection.readElementByIndex(AbstractPersistentCollection.java:158)
| org.hibernate.collection.PersistentMap.get(PersistentMap.java:146)
| org.jboss.portal.core.impl.model.portal.PortalObjectImpl.getChild(PortalObjectImpl.java:382)
| org.jboss.portal.core.impl.model.portal.ContextImpl.getPortal(ContextImpl.java:52)
| org.jboss.portal.core.impl.model.CustomizationManagerService.getDashboard(CustomizationManagerService.java:282)
| org.jboss.portal.core.aspects.controller.PageCustomizerInterceptor.injectDashboardNav(PageCustomizerInterceptor.java:244)
| org.jboss.portal.core.aspects.controller.PageCustomizerInterceptor.invoke(PageCustomizerInterceptor.java:164)
| org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.aspects.controller.PolicyEnforcementInterceptor.invoke(PolicyEnforcementInterceptor.java:77)
| org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.aspects.controller.node.PortalNodeInterceptor.invoke(PortalNodeInterceptor.java:81)
| org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.aspects.controller.NavigationalStateInterceptor.invoke(NavigationalStateInterceptor.java:42)
| org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.controller.ajax.AjaxInterceptor.invoke(AjaxInterceptor.java:51)
| org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.aspects.controller.ResourceAcquisitionInterceptor.invoke(ResourceAcquisitionInterceptor.java:50)
| org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
| org.jboss.portal.core.controller.ControllerContext.execute(ControllerContext.java:134)
| org.jboss.portal.core.model.portal.PortalObjectResponseHandler.processCommandResponse(PortalObjectResponseHandler.java:74)
| org.jboss.portal.core.controller.classic.ClassicResponseHandler.processHandlers(ClassicResponseHandler.java:79)
| org.jboss.portal.core.controller.classic.ClassicResponseHandler.processCommandResponse(ClassicResponseHandler.java:53)
| org.jboss.portal.core.controller.handler.ResponseHandlerSelector.processCommandResponse(ResponseHandlerSelector.java:72)
| org.jboss.portal.core.controller.Controller.processCommandResponse(Controller.java:271)
| org.jboss.portal.core.controller.Controller.processCommand(Controller.java:259)
| org.jboss.portal.core.controller.Controller.handle(Controller.java:218)
| org.jboss.portal.server.RequestControllerDispatcher.invoke(RequestControllerDispatcher.java:51)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
| org.jboss.portal.core.cms.aspect.IdentityBindingInterceptor.invoke(IdentityBindingInterceptor.java:47)
| org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.server.aspects.server.ContentTypeInterceptor.invoke(ContentTypeInterceptor.java:68)
| org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.aspects.server.LocaleInterceptor.invoke(LocaleInterceptor.java:96)
| org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.aspects.server.UserInterceptor.invoke(UserInterceptor.java:245)
| org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.server.aspects.server.SignOutInterceptor.invoke(SignOutInterceptor.java:98)
| org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.impl.api.user.UserEventBridgeTriggerInterceptor.invoke(UserEventBridgeTriggerInterceptor.java:65)
| org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.core.aspects.server.TransactionInterceptor.org$jboss$portal$core$aspects$server$TransactionInterceptor$invoke$aop(TransactionInterceptor.java:49)
| org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
| org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
| org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:253)
| org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
| org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
| org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:262)
| org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
| org.jboss.portal.core.aspects.server.TransactionInterceptor.invoke(TransactionInterceptor.java)
| org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.server.aspects.LockInterceptor$InternalLock.invoke(LockInterceptor.java:70)
| org.jboss.portal.server.aspects.LockInterceptor.invoke(LockInterceptor.java:131)
| org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
| org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
| org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:380)
| javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
| org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
|
|
Probably this can be fixed with a line or two, but being a newcomer, I have no idea where to look.
And above this, is there an easy way to change to whole portal data management datasource to my datasource, or do I have to find and fill the above mentioned lines into each hibernate config file?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4133455#4133455
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4133455
More information about the jboss-user
mailing list