Yea, that definitely won't work.  The service factories record way to 
much state specific to that endpoint.

That said, you MAY be able to get it to work by doing:

<bean  singleton="false"
id='jaxws-and-aegis-service-factory' 
class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
....
</bean>

That should cause Spring to create a new instance for each ref.  (I 
think. I'm not exactly a spring expert)

Dan




On Thursday 24 January 2008, Ron Piterman wrote:
> hi,
> in http://cwiki.apache.org/CXF20DOC/aegis-databinding.html it is
> suggested to use
> org.apache.cxf.aegis.databinding.AegisDatabinding as factory bean for
> endpoints.
>
> The described syntax implies the use of a single factory bean for
> multiple endpoints, whereas this does not work.
>
> Is this a known issue ?
>
> When using the same factory for more than one endpoint:
>
> <jaxws:endpoint id="my_service_endpoint" implementor="#my-service"
> address="/MyIndex"> <jaxws:serviceFactory>
>    <ref bean='jaxws-and-aegis-service-factory' />
>   </jaxws:serviceFactory>
>  </jaxws:endpoint>
>
> cfx delegates methods of one endpoint to another, trying to invoke a
> Method on an target bean which doesn't own it.
>
> the workaround is :
>
> <jaxws:endpoint id="my_service_endpoint" implementor="#my-service"
> address="/MyIndex"> <jaxws:serviceFactory>
>     <bean
> class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
> <property name="dataBinding" ref="aegisBean"/>
>         <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>
>   </jaxws:serviceFactory>
> </jaxws:endpoint>
>
>
> Chears,
>
> Ron



-- 
J. Daniel Kulp
Principal Engineer, IONA
[EMAIL PROTECTED]
http://www.dankulp.com/blog

Reply via email to