Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution: Incomplete
-
Affects Version/s: 2.2.1
-
Fix Version/s: Bug Backlog
-
Component/s: Modules: CXF
-
Labels:
-
Environment:
JDK 1.5
-
User impact:High
-
Log Output:
-
Similar Issues:None
Description
I've been using CXF for a webservice that is returning an ArrayList.
When I turned on component authorization to control access to some methods it all stopped working.
From what I can tell the aegis databinding gets the "proxy class" and that doesn´t contain any generics.
I guess one would need to be able to specify which class that the databinding should use.
My class do include generic information ArrayList<TreeMap<String,Object>> but that is gone when using BeanNameAutoProxyCreator.
I don't think I need to attach any config but adding below to my config makes it break:
<bean id="searchComponentSecurity" class="org.springframework.security.intercept.method.aopalliance.MethodSecurityInterceptor">
<property name="authenticationManager" ref="authenticationManager"/>
<property name="accessDecisionManager" ref="accessDecisionManager"/>
<property name="objectDefinitionSource">
<value>
com.pulsen.qid.services.SearchServiceImpl.searchPersonQIDDatabase=ROLE_READERS
com.pulsen.qid.services.SearchServiceImpl.searchPersonNavet=ROLE_WRITERS
</value>
</property>
</bean>
<bean id="accessDecisionManager" class='org.springframework.security.vote.AffirmativeBased'>
<property name="decisionVoters">
<list>
<ref bean="roleVoter"/>
</list>
</property>
</bean>
<bean id="autoProxyCreator" class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="interceptorNames">
<list>
<value>searchComponentSecurity</value>
</list>
</property>
<property name="beanNames">
<list>
<value>searchServiceComponent</value>
</list>
</property>
<property name='proxyTargetClass' value="true"/>
</bean>
<bean id="roleVoter" class="org.springframework.security.vote.RoleVoter"/>
Any ideas?
/Tomas Blohm
Is this still an issue in 3.0?