- This topic has 11 replies, 2 voices, and was last updated 18 years, 10 months 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 ?
September 5, 2006 at 9:22 pm #258155
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
pecoSeptember 5, 2006 at 10:23 pm #258156
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
September 5, 2006 at 10:25 pm #258157
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,
robSeptember 5, 2006 at 11:13 pm #258159
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
PecoSeptember 6, 2006 at 1:42 am #258161
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,
robSeptember 6, 2006 at 7:45 am #258172
Haris PecoMemberRob,
Can you send your context xml files ?
Thanks
September 6, 2006 at 5:46 pm #258191
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>
September 6, 2006 at 6:32 pm #258192
Haris PecoMemberRob,
I need bean modelFactory and class SimpleContributingFactorManager
Thanks
September 6, 2006 at 7:19 pm #258193
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(); } }
September 6, 2006 at 7:39 pm #258194
Haris PecoMemberRob,
This is bug and I will file PR
Thanks you for your feedback and sorry for inconvenience causedBest
PecoSeptember 7, 2006 at 1:11 am #258198
Dialog-2MemberNo problems. Thanks for your time Peco.
-rob
-
AuthorPosts