You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Richard Grantham <rg...@limehousesoftware.co.uk> on 2008/04/22 19:20:04 UTC

Massive config error stacktrace when porting from XFire to CXF

Hi list,

I've been attempting to port my application from XFire to CXF. I have
read the FAQs, the guides and googled about yet cannot seem to get on
top of this error relating to how my service factory is configured. As
per the docs it look like this:

	<bean id="dataBinding"
class="org.apache.cxf.aegis.databinding.AegisDatabinding"
scope="prototype" /> 
	<bean id="serviceFactory"
class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean"
scope="prototype">
		<property name="dataBinding" ref="dataBinding" />
		<property name="serviceConfigurations">
			<list>
				<bean
class="org.apache.cxf.jaxws.support.JaxWsServiceConfiguration" />
				<bean
class="org.apache.cxf.aegis.databinding.AegisServiceConfiguration" />
				<bean
class="org.apache.cxf.service.factory.DefaultServiceConfiguration" /> 
			</list>
		</property>
	</bean>

>From what I can assertain this is correct, yet the scope="prototype"
attribute on the serviceFactory configuration seems to cause so many
issues. Take it away and the error goes away yet all my services follow
the agentService configuration - which is clearly wrong. The service
referenced in the (compacted) stacktrace below is configured like this:

	<jaxws:endpoint id="agentService"
implementorClass="uk.co.company.app.ws.impl.AgentServiceImpl"
implementor="#agentServiceImpl" address="/agentService">
		<jaxws:serviceFactory>
			<ref bean="serviceFactory" />
		</jaxws:serviceFactory>
		<jaxws:inInterceptors>
			<ref bean="agentAuthenticationHandler" />
		</jaxws:inInterceptors>
	</jaxws:endpoint>

Now, this looks utterly correct to me, yet I still get the stacktrace.
The only fix I could come up with was to embed the service factory
definition within the endpoint configuration. Given that I have a great
many Web services this isn't really a viable option as it makes my
context file so much bigger than it needs to be.

I'm using CXF 2.0.5 with Spring 2.5.3 deployed under Resin. I had the
same problem with the Spring 2.0 branch. Can anyone offer some advice as
to how to continue?

rgds,

Richard

org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'serviceFactory' defined in file
[C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationContext
WebServices.xml]: Cannot create inner bean
'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2' of type
[org.apache.cxf.jaxws.support.JaxWsServiceConfiguration] while setting
bean property 'serviceConfigurations' with key [0];

nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name
'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2' defined
in file
[C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationContext
WebServices.xml]: Initialization of bean failed;

nested exception is
org.springframework.beans.factory.BeanCurrentlyInCreationException:
Error creating bean with name 'serviceFactory': Requested bean is
currently in creation: Is there an unresolvable circular reference?

Related cause:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error
creating bean with name 'agentService': Unsatisfied dependency expressed
through constructor argument with index 2 of type [java.lang.String]:
Ambiguous constructor argument types - did you specify the correct bean
references as constructor arguments?

Related cause:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error
creating bean with name 'agentService': Unsatisfied dependency expressed
through constructor argument with index 2 of type [java.lang.String]:
Ambiguous constructor argument types - did you specify the correct bean
references as constructor arguments?

Related cause:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error
creating bean with name 'agentService': Unsatisfied dependency expressed
through constructor argument with index 2 of type
[org.apache.cxf.jaxws.JaxWsServerFactoryBean]: Ambiguous constructor
argument types - did you specify the correct bean references as
constructor arguments?

Caused by: org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'serviceFactory' defined in file
[C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationContext
WebServices.xml]: Cannot create inner bean
'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2' of type
[org.apache.cxf.jaxws.support.JaxWsServiceConfiguration] while setting
bean property 'serviceConfigurations' with key [0];

nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name
'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2' defined
in file
[C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationContext
WebServices.xml]: Initialization of bean failed;

nested exception is
org.springframework.beans.factory.BeanCurrentlyInCreationException:
Error creating bean with name 'serviceFactory': Requested bean is
currently in creation: Is there an unresolvable circular reference?

Caused by: org.springframework.beans.factory.BeanCreationException:
Error creating bean with name
'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2' defined
in file
[C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationContext
WebServices.xml]: Initialization of bean failed;

nested exception is
org.springframework.beans.factory.BeanCurrentlyInCreationException:
Error creating bean with name 'serviceFactory': Requested bean is
currently in creation: Is there an unresolvable circular reference?

Caused by:
org.springframework.beans.factory.BeanCurrentlyInCreationException:
Error creating bean with name 'serviceFactory': Requested bean is
currently in creation: Is there an unresolvable circular reference?

Related cause:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error
creating bean with name 'agentService': Unsatisfied dependency expressed
through constructor argument with index 2 of type [java.lang.String]:
Ambiguous constructor argument types - did you specify the correct bean
references as constructor arguments?

Related cause:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error
creating bean with name 'agentService': Unsatisfied dependency expressed
through constructor argument with index 2 of type [java.lang.String]:
Ambiguous constructor argument types - did you specify the correct bean
references as constructor arguments?

Related cause:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error
creating bean with name 'agentService': Unsatisfied dependency expressed
through constructor argument with index 2 of type
[org.apache.cxf.jaxws.JaxWsServerFactoryBean]: Ambiguous constructor
argument types - did you specify the correct bean references as
constructor arguments?



Richard Grantham
Development

-------------------------------
rgrantham@limehousesoftware.co.uk
Limehouse Software Ltd
DDI: (020) 7566 3336
Main: (020) 7566 3320
Fax: (020) 7566 3321
Limehouse Software Ltd
4th Floor
1 London Bridge
London
SE1 9BG
Manchester Office:
3rd Floor, The Triangle, Exchange Square, Manchester M4 3TR
Tel: (0161) 240 2440, Fax: (0161) 240 2441, ISDN: 08700 119 400
Check out Limehouse Software's innovative solutions
www.limehousesoftware.co.uk - Transforming the way you publish and consult on information
The information contained in this e-mail or in any attachments is confidential and is intended solely for the named addressee only. Access to this e-mail by anyone else is unauthorised. If you are not the intended recipient, please notify Limehouse Software Ltd immediately by returning this e-mail to sender or calling 020 7566 3320 and do not read, use or disseminate the information. Opinions expressed in this e-mail are those of the sender and not necessarily the company. Although an active anti-virus policy is operated, the company accepts no liability for any damage caused by any virus transmitted by this e-mail, including any attachments.

Re: Massive config error stacktrace when porting from XFire to CXF

Posted by Benson Margulies <bi...@gmail.com>.
I use them all the time, myself.

Re: Massive config error stacktrace when porting from XFire to CXF

Posted by Daniel Kulp <dk...@apache.org>.
Richard,

Is there anyway you can package up a war or small project or something 
that shows this?   I just tried to update one of our test cases:
http://svn.apache.org/repos/asf/incubator/cxf/trunk/systests/src/test/resources/webapp/WEB-INF/beans.xml
to use prototype scoped factories and databindings and it all worked OK.


Dan


On Tuesday 22 April 2008, Richard Grantham wrote:
> Hi list,
>
> I've been attempting to port my application from XFire to CXF. I have
> read the FAQs, the guides and googled about yet cannot seem to get on
> top of this error relating to how my service factory is configured. As
> per the docs it look like this:
>
> 	<bean id="dataBinding"
> class="org.apache.cxf.aegis.databinding.AegisDatabinding"
> scope="prototype" />
> 	<bean id="serviceFactory"
> class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean"
> scope="prototype">
> 		<property name="dataBinding" ref="dataBinding" />
> 		<property name="serviceConfigurations">
> 			<list>
> 				<bean
> class="org.apache.cxf.jaxws.support.JaxWsServiceConfiguration" />
> 				<bean
> class="org.apache.cxf.aegis.databinding.AegisServiceConfiguration" />
> 				<bean
> class="org.apache.cxf.service.factory.DefaultServiceConfiguration" />
> 			</list>
> 		</property>
> 	</bean>
>
> From what I can assertain this is correct, yet the scope="prototype"
> attribute on the serviceFactory configuration seems to cause so many
> issues. Take it away and the error goes away yet all my services
> follow the agentService configuration - which is clearly wrong. The
> service referenced in the (compacted) stacktrace below is configured
> like this:
>
> 	<jaxws:endpoint id="agentService"
> implementorClass="uk.co.company.app.ws.impl.AgentServiceImpl"
> implementor="#agentServiceImpl" address="/agentService">
> 		<jaxws:serviceFactory>
> 			<ref bean="serviceFactory" />
> 		</jaxws:serviceFactory>
> 		<jaxws:inInterceptors>
> 			<ref bean="agentAuthenticationHandler" />
> 		</jaxws:inInterceptors>
> 	</jaxws:endpoint>
>
> Now, this looks utterly correct to me, yet I still get the stacktrace.
> The only fix I could come up with was to embed the service factory
> definition within the endpoint configuration. Given that I have a
> great many Web services this isn't really a viable option as it makes
> my context file so much bigger than it needs to be.
>
> I'm using CXF 2.0.5 with Spring 2.5.3 deployed under Resin. I had the
> same problem with the Spring 2.0 branch. Can anyone offer some advice
> as to how to continue?
>
> rgds,
>
> Richard
>
> org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name 'serviceFactory' defined in file
> [C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationConte
>xt WebServices.xml]: Cannot create inner bean
> 'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2' of
> type [org.apache.cxf.jaxws.support.JaxWsServiceConfiguration] while
> setting bean property 'serviceConfigurations' with key [0];
>
> nested exception is
> org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name
> 'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2'
> defined in file
> [C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationConte
>xt WebServices.xml]: Initialization of bean failed;
>
> nested exception is
> org.springframework.beans.factory.BeanCurrentlyInCreationException:
> Error creating bean with name 'serviceFactory': Requested bean is
> currently in creation: Is there an unresolvable circular reference?
>
> Related cause:
> org.springframework.beans.factory.UnsatisfiedDependencyException:
> Error creating bean with name 'agentService': Unsatisfied dependency
> expressed through constructor argument with index 2 of type
> [java.lang.String]: Ambiguous constructor argument types - did you
> specify the correct bean references as constructor arguments?
>
> Related cause:
> org.springframework.beans.factory.UnsatisfiedDependencyException:
> Error creating bean with name 'agentService': Unsatisfied dependency
> expressed through constructor argument with index 2 of type
> [java.lang.String]: Ambiguous constructor argument types - did you
> specify the correct bean references as constructor arguments?
>
> Related cause:
> org.springframework.beans.factory.UnsatisfiedDependencyException:
> Error creating bean with name 'agentService': Unsatisfied dependency
> expressed through constructor argument with index 2 of type
> [org.apache.cxf.jaxws.JaxWsServerFactoryBean]: Ambiguous constructor
> argument types - did you specify the correct bean references as
> constructor arguments?
>
> Caused by: org.springframework.beans.factory.BeanCreationException:
> Error creating bean with name 'serviceFactory' defined in file
> [C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationConte
>xt WebServices.xml]: Cannot create inner bean
> 'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2' of
> type [org.apache.cxf.jaxws.support.JaxWsServiceConfiguration] while
> setting bean property 'serviceConfigurations' with key [0];
>
> nested exception is
> org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name
> 'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2'
> defined in file
> [C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationConte
>xt WebServices.xml]: Initialization of bean failed;
>
> nested exception is
> org.springframework.beans.factory.BeanCurrentlyInCreationException:
> Error creating bean with name 'serviceFactory': Requested bean is
> currently in creation: Is there an unresolvable circular reference?
>
> Caused by: org.springframework.beans.factory.BeanCreationException:
> Error creating bean with name
> 'org.apache.cxf.jaxws.support.JaxWsServiceConfiguration#11671b2'
> defined in file
> [C:\dev\eclipse\workspace\application\WebRoot\WEB-INF\applicationConte
>xt WebServices.xml]: Initialization of bean failed;
>
> nested exception is
> org.springframework.beans.factory.BeanCurrentlyInCreationException:
> Error creating bean with name 'serviceFactory': Requested bean is
> currently in creation: Is there an unresolvable circular reference?
>
> Caused by:
> org.springframework.beans.factory.BeanCurrentlyInCreationException:
> Error creating bean with name 'serviceFactory': Requested bean is
> currently in creation: Is there an unresolvable circular reference?
>
> Related cause:
> org.springframework.beans.factory.UnsatisfiedDependencyException:
> Error creating bean with name 'agentService': Unsatisfied dependency
> expressed through constructor argument with index 2 of type
> [java.lang.String]: Ambiguous constructor argument types - did you
> specify the correct bean references as constructor arguments?
>
> Related cause:
> org.springframework.beans.factory.UnsatisfiedDependencyException:
> Error creating bean with name 'agentService': Unsatisfied dependency
> expressed through constructor argument with index 2 of type
> [java.lang.String]: Ambiguous constructor argument types - did you
> specify the correct bean references as constructor arguments?
>
> Related cause:
> org.springframework.beans.factory.UnsatisfiedDependencyException:
> Error creating bean with name 'agentService': Unsatisfied dependency
> expressed through constructor argument with index 2 of type
> [org.apache.cxf.jaxws.JaxWsServerFactoryBean]: Ambiguous constructor
> argument types - did you specify the correct bean references as
> constructor arguments?
>
>
>
> Richard Grantham
> Development
>
> -------------------------------
> rgrantham@limehousesoftware.co.uk
> Limehouse Software Ltd
> DDI: (020) 7566 3336
> Main: (020) 7566 3320
> Fax: (020) 7566 3321
> Limehouse Software Ltd
> 4th Floor
> 1 London Bridge
> London
> SE1 9BG
> Manchester Office:
> 3rd Floor, The Triangle, Exchange Square, Manchester M4 3TR
> Tel: (0161) 240 2440, Fax: (0161) 240 2441, ISDN: 08700 119 400
> Check out Limehouse Software's innovative solutions
> www.limehousesoftware.co.uk - Transforming the way you publish and
> consult on information The information contained in this e-mail or in
> any attachments is confidential and is intended solely for the named
> addressee only. Access to this e-mail by anyone else is unauthorised.
> If you are not the intended recipient, please notify Limehouse
> Software Ltd immediately by returning this e-mail to sender or calling
> 020 7566 3320 and do not read, use or disseminate the information.
> Opinions expressed in this e-mail are those of the sender and not
> necessarily the company. Although an active anti-virus policy is
> operated, the company accepts no liability for any damage caused by
> any virus transmitted by this e-mail, including any attachments.



-- 
J. Daniel Kulp
Principal Engineer, IONA
dkulp@apache.org
http://www.dankulp.com/blog