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]