Saturday, August 25, 2012

Re: Spring and gwt (request factory)

This might not directly answer your question but it'll hopefully help.
You will find all the moving pieces you need there. In my DAO, I am
injecting via @Autowired some beans (not shown in the example).

Proxy:
===============================================
@ProxyFor(value = Card.class, locator = CardLocator.class)
public interface CardProxy extends EntityProxy {
.....
===============================================

Entity:
===============================================
@Table(name = "cards")
@Entity
public class Card {

public class CardLocator extends Locator<Card, Integer>{

@Override
public Card create(Class<? extends Card> clazz) {
return new Card();
}

@Override
public Card find(Class<? extends Card> clazz, Integer id) {
return ((CardDAO) BeanContextUtil.getBean(CardDAO.class)).find(id);
}
.....
===============================================

RequestContext:
===============================================
@Service(value = CardDAO.class, locator = CardServiceLocator.class)
public interface CardRequestContext extends RequestContext {
....
===============================================

DAO:
===============================================
@Component
public class CardDAO {
....
===============================================

Service Locator:
===============================================
public class CardServiceLocator implements ServiceLocator {

@Override
public Object getInstance(Class<?> clazz) {
return BeanContextUtil.getBean(CardDAO.class);
}

}
===============================================

Bean Util:
===============================================
public class BeanContextUtil {

public BeanContextUtil() {

}

public static Object getBean(Class<?> clazz) {
HttpServletRequest request =
RequestFactoryServlet.getThreadLocalRequest();
ServletContext servletCtx = request.getSession().getServletContext();
ApplicationContext springCtx =
WebApplicationContextUtils.getWebApplicationContext(servletCtx);
return springCtx.getBean(clazz);
}

}
===============================================

Best regards,

Alfredo

On Sat, Aug 25, 2012 at 10:35 AM, pierre leagault
<pierrelegaultpro@gmail.com> wrote:
> my service class is annoted with service and my dao with repository
>
> Le jeudi 23 août 2012 23:02:38 UTC+2, pierre leagault a écrit :
>>
>> hi
>>
>> i use spring and gwt (request factory).
>>
>> in my applicationContext, i use context component-scan but my bean is not
>> retrieved.
>>
>> i need to declare it manually.
>>
>> why component scan don't work?
>>
>>
>> my web.xml
>>
>> <context-param>
>> <param-name>contextConfigLocation</param-name>
>> <param-value>/WEB-INF/applicationContext.xml</param-value>
>> </context-param>
>>
>> <listener>
>>
>> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
>> </listener>
>>
>> <servlet>
>> <servlet-name>requestFactoryServlet</servlet-name>
>>
>> <servlet-class>com.google.web.bindery.requestfactory.server.RequestFactoryServlet</servlet-class>
>> </servlet>
>>
>> <servlet-mapping>
>> <servlet-name>requestFactoryServlet</servlet-name>
>> <url-pattern>/gwtRequest</url-pattern>
>> </servlet-mapping>
>>
>>
>> <welcome-file-list>
>> <welcome-file>welcomeGWT.html</welcome-file>
>> </welcome-file-list>
>>
>>
>> thanks
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-web-toolkit/-/xLI56yX5k3MJ.
> To post to this group, send email to google-web-toolkit@googlegroups.com.
> To unsubscribe from this group, send email to
> google-web-toolkit+unsubscribe@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/google-web-toolkit?hl=en.



--
Alfredo Quiroga-Villamil

AOL/Yahoo/Gmail/MSN IM: lawwton

--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.

No comments:

Post a Comment