How to access static resources when using default servlet?

Hi i have a problem i want to send all my request to one spring servlet

home
org.springframework.web.servlet.DispatcherServlet

home
/*

but this mapping stops the access to static files like images etc i have put them all in /res/… folder

please help me how can i make this work i am using this on google app engine.

Map the controller servlet on a more specific url-pattern like /pages/*, put the static content in a specific folder like /static and create a Filter listening on /* which transparently continues the chain for any static content and dispatches requests to the controller servlet for other content.

 

In a nutshell:

 



    filter

    com.example.Filter





    filter

    /*



 



    controller

    com.example.Controller





    controller

    /pages/*



with the following in filter's doFilter():

 

HttpServletRequest req = (HttpServletRequest) request;

String path = req.getRequestURI().substring(req.getContextPath().length());

 

if (path.startsWith("/static")) {

    chain.doFilter(request, response); // Goes to default servlet.

} else {

    request.getRequestDispatcher("/pages" + uri).forward(request, response);

}

No, this does not end up with /pages in browser address bar. It's fully transparent. You can if necessary make "/static" and/or "/pages" an init-param of the filter.