if you could provide a quickstart maybe someone can look into it

-igor


On Jan 13, 2008 1:34 PM, Sergey Podatelev <[EMAIL PROTECTED]> wrote:
> Hello,
>
> My WebApplication extends SpringWebApplication and I use proxy-based
> approach for bean instantiation.
> I'm using JDK1.4, so I'm unable to just annotate the beans, but have to do
> it in the following way:
>
> MyWebApplication {
>   private UserDao userDao;
>   ...
>   public UserDao getUserDao() {
>     if (userDao == null) {
>       userDao = (JdbcUserDao) createSpringBeanProxy(
>           JdbcUserDao.class, "userDao");
>     }
>     return userDao;
>   }
> }
>
> However, I get the following exception:
>
> org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean
> named 'userDao' must be of type [com.myapp.user.JdbcUserDao], but was
> actually of type [$Proxy9]
>      at 
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:309)
>
> ...
>
> My configurations are pretty much taken from wicket-phonebook example, the
> only major difference is that phonebook uses Wicket 1.2 with Wicket is
> configured as servlet, while I use it as filter to enable Acegi support.
>
> If you're still with me, here're related entries from web.xml...:
>
>     <filter>
>         <filter-name>Spring Application Factory Filter</filter-name>
>         <filter-class>org.apache.wicket.protocol.http.WicketFilter
> </filter-class>
>         <init-param>
>             <param-name>applicationFactoryClassName</param-name>
>             <param-value>
> org.apache.wicket.spring.SpringWebApplicationFactory</param-value>
>         </init-param>
>     </filter>
>
>     <filter-mapping>
>         <filter-name>Spring Application Factory Filter</filter-name>
>         <url-pattern>/myapp/*</url-pattern>
>     </filter-mapping>
>
>     <listener>
>         <listener-class>
> org.springframework.web.context.ContextLoaderListener</listener-class>
>     </listener>
>
> ...and from applicationContext.xml:
>
>     <bean id="userDaoTarget" class="com.myapp.user.JdbcUserDao">
>             <property name="dataSource" ref="dataSource"/>
>     </bean>
>
>     <bean id="transactionManager" class="
> org.springframework.jdbc.datasource.DataSourceTransactionManager">
>             <property name="dataSource" ref="dataSource"/>
>     </bean>
>
>     <!-- this is a transactional proxy for userdetails dao which ensures
> proper transaction handling -->
>     <bean id="userDao" class="
> org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
>             <property name="transactionManager" ref="transactionManager" />
>             <property name="target" ref="userDaoTarget"/>
>             <property name="transactionAttributes">
>                     <props>
>                             <prop key="save">PROPAGATION_REQUIRED</prop>
>                             <prop
> key="*">PROPAGATION_REQUIRED,readOnly</prop>
>                     </props>
>             </property>
>     </bean>
>
> I'd be happy if someone could point me on where to look at since I'm a
> little afraid to dig into the whole Spring's proxy instantiation thing.
>
> I use Wicket 1.3, Wicket-Spring 1.3 and Spring 2.5.
>
> --
> sp
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to