- This topic has 11 replies, 2 voices, and was last updated 18 years, 1 month ago by Dialog-2.
-
AuthorPosts
-
Dialog-2MemberHi All,
I’ve tried to get the HQL query tool up and running but when I open the hql editor i’m told that “configuration object could not be built”… unable to query etc etc.
This is being reported as being due to an error registering one of my spring beans as it cannot resolve a parent bean (“txproxyTemplate”). My Spring config is all setup correctly and working. The Spring Bean view is healthy with no errors but for some reason the hibernate features fail to pick this up.
Any ideas ?
Haris PecoMemberGroupware ,
Please, send log file (Windows-Show View-Other-PDE Runtime-Error log)
have you project dependencies ? (ME doesn’t support hql when project depend from other projects, for now)
Best
peco
Dialog-2MemberHi Peco,
There are no inter-project dependencies. Below is the log output relating to the error.
thanks rob
!ENTRY com.genuitec.org.hibernate.eclipse.console 4 4 2006-09-06 13:21:41.006 !MESSAGE Error registering bean with name 'contributingFactorManager' defined in URL [file:C:/data/workspace/MSS-MIMSv3/WebRoot/WEB-INF/applicationContextManager.xml]: Could not resolve parent bean definition 'txProxyTemplate'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'txProxyTemplate' is defined !STACK 0 org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name 'contributingFactorManager' defined in URL [file:C:/data/workspace/MSS-MIMSv3/WebRoot/WEB-INF/applicationContextManager.xml]: Could not resolve parent bean definition 'txProxyTemplate'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'txProxyTemplate' is defined org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'txProxyTemplate' is defined at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:360) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:686) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:711) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:686) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:146) at org.springframework.context.support.AbstractApplicationContext.getBeanNamesForType(AbstractApplicationContext.java:586) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:354) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:295) at com.genuitec.eclipse.hibernate.tool.MEFileSystemXmlApplicationContext.<init>(MEFileSystemXmlApplicationContext.java:33) at com.genuitec.eclipse.hibernate.wizards.MEConsoleConfiguration$1.execute(MEConsoleConfiguration.java:149) at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:35) at com.genuitec.eclipse.hibernate.wizards.MEConsoleConfiguration.buildWith(MEConsoleConfiguration.java:145) at org.hibernate.console.ConsoleConfiguration.build(ConsoleConfiguration.java:100) at com.genuitec.eclipse.hibernate.action.MERefreshCCAction$1.run(MERefreshCCAction.java:90) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113) !SUBENTRY 1 com.genuitec.org.hibernate.eclipse.console 4 150 2006-09-06 13:21:41.006 !MESSAGE org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'txProxyTemplate' is defined !STACK 0 org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'txProxyTemplate' is defined at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:360) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:686) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:711) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:686) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:146) at org.springframework.context.support.AbstractApplicationContext.getBeanNamesForType(AbstractApplicationContext.java:586) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:354) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:295) at com.genuitec.eclipse.hibernate.tool.MEFileSystemXmlApplicationContext.<init>(MEFileSystemXmlApplicationContext.java:33) at com.genuitec.eclipse.hibernate.wizards.MEConsoleConfiguration$1.execute(MEConsoleConfiguration.java:149) at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:35) at com.genuitec.eclipse.hibernate.wizards.MEConsoleConfiguration.buildWith(MEConsoleConfiguration.java:145) at org.hibernate.console.ConsoleConfiguration.build(ConsoleConfiguration.java:100) at com.genuitec.eclipse.hibernate.action.MERefreshCCAction$1.run(MERefreshCCAction.java:90) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113) !SUBENTRY 2 com.genuitec.org.hibernate.eclipse.console 4 150 2006-09-06 13:21:41.006 !MESSAGE org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'txProxyTemplate' is defined !STACK 0 org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'txProxyTemplate' is defined at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:360) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:686) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:711) at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:686) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:146) at org.springframework.context.support.AbstractApplicationContext.getBeanNamesForType(AbstractApplicationContext.java:586) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:354) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:295) at com.genuitec.eclipse.hibernate.tool.MEFileSystemXmlApplicationContext.<init>(MEFileSystemXmlApplicationContext.java:33) at com.genuitec.eclipse.hibernate.wizards.MEConsoleConfiguration$1.execute(MEConsoleConfiguration.java:149) at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:35) at com.genuitec.eclipse.hibernate.wizards.MEConsoleConfiguration.buildWith(MEConsoleConfiguration.java:145) at org.hibernate.console.ConsoleConfiguration.build(ConsoleConfiguration.java:100) at com.genuitec.eclipse.hibernate.action.MERefreshCCAction$1.run(MERefreshCCAction.java:90) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113) !ENTRY com.genuitec.org.hibernate.eclipse.console 1 0 2006-09-06 13:21:41.006 !MESSAGE Could not refresh Hibernate project context com.genuitec.eclipse.hibernate.action.MERefreshCCAction$InProgressException
Dialog-2MemberI should add that the bean that cannot be loaded is in a different application context file. This leads me to believe that ME is not loading all the app context files.
cheers,
rob
Haris PecoMemberHi Rob,
Please, can you move ‘txProxyTemplate’ in same application context.This is for test only – I suppose that you are correct and ME have problem with making hibernate session when exists more spring context files
Thanks
Peco
Dialog-2MemberUnfortunately this didn’t help. The error is the same as before. Is it possibly that ME can’t handle parent / child Spring Bean relationships… in this case the parent being the transaction management interceptor “org.springframework.transaction.interceptor.TransactionProxyFactoryBean”
cheers,
rob
Haris PecoMemberRob,
Can you send your context xml files ?
Thanks
Dialog-2MemberWe have many app context files (approx 30) and some are quite large so i’ve just posted the relevent parts of the two files in question for the moment.
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- Transaction template for Managers, from: http://blog.exis.com/colin/archives/2004/07/31/concise-transaction-definitions-spring-11/ --> <bean id="txProxyTemplate" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager"> <ref bean="transactionManager" /> </property> <property name="transactionAttributes"> <props> <prop key="save*">PROPAGATION_REQUIRED</prop> <prop key="remove*">PROPAGATION_REQUIRED</prop> <prop key="notify*">PROPAGATION_REQUIRED</prop> <prop key="create*">PROPAGATION_REQUIRED</prop> <prop key="*">PROPAGATION_REQUIRED,readOnly</prop> </props> </property> </bean> <!-- Transaction manager for a single Hibernate SessionFactory (alternative to JTA) --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <!-- many more beans under here --> </beans>
applicationContextManager.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean id="contributingFactorManager" parent="txProxyTemplate"> <property name="target"> <bean class="au.gov.vic.mss.service.SimpleContributingFactorManager"> <property name="modelFactory"> <ref bean="modelFactory" /> </property> </bean> </property> </bean> <!-- many more beans under here --> </beans>
Haris PecoMemberRob,
I need bean modelFactory and class SimpleContributingFactorManager
Thanks
Dialog-2MemberI’ve added a couple of other beans as well that are referenced just in case.
cheers,
rob<bean id="modelFactory" class="au.gov.vic.mss.model.MssModelFactory"> <property name="idGenerator"> <ref bean="idGenerator" /> </property> </bean> <!-- OracleSequenceIdGenerator --> <bean id="idGenerator" class="au.gov.vic.mss.model.id.OracleSequenceIdGenerator" singleton="true"> <constructor-arg> <ref bean="dataSource" /> </constructor-arg> </bean> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName"> <value>${persistence.db.driver}</value> </property> <property name="url"> <value>${persistence.db.url}</value> </property> <property name="username"> <value>${persistence.db.username}</value> </property> <property name="password"> <value>${persistence.db.password}</value> </property> </bean>
package au.gov.vic.mss.service; import au.gov.vic.mss.model.ContributingFactor; import au.gov.vic.mss.model.MssModelFactory; /** * Default implementation of * {@link au.gov.vic.mss.service.ContributingFactorManager}. */ public class SimpleContributingFactorManager implements ContributingFactorManager { MssModelFactory modelFactory; /** * Sets the modelFactory for creating new objects. * * @param modelFactory allows for creation of new objects */ public void setModelFactory(MssModelFactory modelFactory) { this.modelFactory = modelFactory; } /* * (non-Javadoc) * @see au.gov.vic.mss.service.ContributingFactorManager#createContributingFactor() */ public ContributingFactor createContributingFactor() { return this.modelFactory.createContributingFactor(); } }
Haris PecoMemberRob,
This is bug and I will file PR
Thanks you for your feedback and sorry for inconvenience causedBest
Peco
Dialog-2MemberNo problems. Thanks for your time Peco.
-rob
-
AuthorPosts