Skip to Main Content

Java EE (Java Enterprise Edition) General Discussion

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Proble with RequestDispatcher and Filter

843841Nov 27 2007 — edited Nov 28 2007
Hi all!

i 've a strange problem with requestDispatcher and filter:

the filter is not invoked when in my servlet i make a call to forward method of requestDispatcher.

Can someone help me?

Thanks a lot


My Code:

// THE SERVLET

public class EmulePortalServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException {
doGetOrPost(request,response);
}

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException {
doGetOrPost(request,response);
}

public void doGetOrPost(HttpServletRequest request, HttpServletResponse response) throws ServletException
{


try {
response.setHeader("HTTP_SM_USER","user");
RequestDispatcher rd=request.getRequestDispatcher("/SLA_ADSL_PORTAL/index_portal.jsp);
rd.forward(request,response);

}
catch(Exception e) {

e.printStackTrace();
}

}

}

//THE FILTER

public final class PortalFilter implements Filter
{
private FilterConfig filterConfig = null;
public void service(ServletRequest req, ServletResponse res){}

public void init(FilterConfig filterConfig) throws ServletException
{
this.filterConfig = filterConfig;
}
public void destroy()
{
this.filterConfig = null;
}

public void doFilter(ServletRequest request,ServletResponse response, FilterChain chain) throws IOException, ServletException
{
System.out.println("PORTAL FILTER");
String user = request.getHeader("HTTP_SM_USER");
//some operation
chain.doFilter(request, response);

}



}


//WEB.XML

<filter>
<filter-name>PortalFilter</filter-name>
<filter-class>portal.filter.PortalFilter</filter-class>

</filter>



<filter-mapping>
<filter-name>PortalFilter</filter-name>
<url-pattern>/SLA_ADSL_PORTAL/*</url-pattern>
<dispatcher>forward</dispatcher>
</filter-mapping>

<servlet>
<servlet-name>emuleServlet</servlet-name>
<servlet-class>portal.servlet.EmulePortalServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>emulePortalServlet</servlet-name>
<url-pattern>/emule/</url-pattern>

</servlet-mapping>

All package and relative imports works.
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Dec 26 2007
Added on Nov 27 2007
4 comments
342 views