We are using Services Framework 2.2.2.2-fuse and have an endpoint setup
correctly through our beans.xml

Our endpoint uses a spring defined service bean as a dependency

See below :

<bean id="webServiceImpl" class="gov.faa.nasr.saa.api.WebServicesImpl"
scope="prototype">
<property name="saaService" ref="serviceImpl"></property>
</bean>

<jaxws:endpoint id="testSaa" implementor="#webServiceImpl" address="/Saa" >
<jaxws:dataBinding>
<bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding"/>
</jaxws:dataBinding>
</jaxws:endpoint>

The bean with id="serviceImpl"
is also dependent on another spring bean called "validator". Like so :

<bean id="serviceImpl" class="gov.faa.nasr.domain.SaaServiceImpl"
<aop:scoped-proxy/>
<property name="validator" ref="saaValidator"/>
</bean>

<bean id="saaValidator" class="gov.faa.nasr.saa.validator.SaaValidator"
scope="session">
<aop:scoped-proxy/>
</bean>

The problem we see is that the same saaValidator bean is being used between
multiple requests on the endpoint. We tried to set the scope="session" and
add an aop:scoped-proxy tag but this gives the following error :

"Error creating bean with name 'scopedTarget.saaValidator': Scope 'session'
is not active for the current thread; consider defining a scoped proxy for
this bean if you intend to refer to it from a singleton; nested exception is
java.lang.IllegalStateException: No thread-bound request found: Are you
referring to request attributes outside of an actual web request, or
processing a request outside of the originally receiving thread? If you are
actually operating within a web request and still receive this message, your
code is probably running outside of DispatcherServlet/DispatcherPortlet: In
this case, use RequestContextListener or RequestContextFilter to expose the
current request."

We have also configured our web.xml in the following manner :
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>

We are using the latest spring jars with cglib and asm. I saw on nabble
forums people had this problem but trying the solutions posted nothing seems
to work.

Can anyone provide guidance? We are running on Sun Glassfish version 9.

Thanks.
-- 
View this message in context: 
http://old.nabble.com/CXF-Services-Framework-endpoint-seems-to-use-the-same-session-tp26628334p26628334.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to