See http://www.oracle.com/technetwork/java/filters-137243.html
You should do a chain.doFilter instead of a forward at the end of your method. Your filter isn't letting the other filters process the request. Richard Sent from my iPhone On Feb 12, 2011, at 11:34 PM, omid p <[email protected]> wrote: > Hi, > Can you not use > <url-pattern>/faces/*</url-pattern> > instead of > <url-pattern>*.faces</url-pattern> > maybe you corrupt tomahawk filter servlet by changing URL, just a guess > do you use any other javascript library like jQuery or sth else ? > > On Thu, Feb 10, 2011 at 7:02 PM, AMIR-TAHMASSEB Marc Kamran < > [email protected]> wrote: > >> Dear all, >> >> I have some of my Tomahawk component encounter problems to be displayed. >> >> More specificaly, components such as >> - t:inputFileUpload, >> - t:swapImage >> - t:popup >> - t:inputDate >> generate the following javascript error : >> Error: xxx_3AtoolsPopupPopup is undefined >> Error: SI_MM_swapImage is not defined >> Error: SI_MM_swapImgRestore is not defined >> Error: orgApacheMyfacesPopup is not defined >> and so on.... >> >> Everything worked well until I added a new filter to my application : >> >> My web.xml : >> <filter> >> <filter-name>localLanguageFilter</filter-name> >> <filter-class>ec.ep.eo.eoweb.filter.LocalLanguageFilter</filter-class> >> </filter> >> >> <filter-mapping> >> <filter-name>localLanguageFilter</filter-name> >> <url-pattern>*.faces</url-pattern> >> </filter-mapping> >> >> >> This filter, parse the url and try to localize the language code at the >> begining of it. Then it set the application local languge to this lanaguage >> and finaly redirect to the appropriate âge. >> Here is the code : >> public void doFilter(ServletRequest servletRequest, ServletResponse >> servletResponse, FilterChain filterChain) throws IOException, >> ServletException { >> HttpServletRequest request = (HttpServletRequest) servletRequest; >> HttpServletResponse response = (HttpServletResponse) servletResponse; >> boolean redirect = false; >> String currentURL = formatURL(request.getServletPath()); >> String originalUri = request.getRequestURI(); >> String uri = originalUri; >> String contextPath = request.getContextPath(); >> if (uri.startsWith(contextPath)) { >> uri = uri.substring(contextPath.length()); >> } >> String[] parts = uri.split(Constants.PATTERN_SLASH); >> >> if (parts.length>0 && parts[1].length()==2) { >> String languageCode=parts[1]; >> uri = uri.substring(3); >> >> ILanguage language = >> getServices().findLanguageByBusinessKey(languageCode); >> >> if (language==null) { >> language=Constants.ENGLISH; >> } >> >> request.getSession().setAttribute(Constants.SYSTEM_LANGUAGE, language); >> >> } >> RequestDispatcher requestDispatcher = request.getRequestDispatcher(uri); >> requestDispatcher.forward(request, response); >> } >> As i specified, if I remove the filter, everything goes well. But as soon >> as the filter is active, the tomahawk components are altered :-( >> >> Do someone have an idea ? >> >> Thank in advance, >> >> Marc >> >> >> >> >> *Médiateur européen* >> >> *Marc Kamran Amir-Tahmasseb* >> >> Unité Communication - Développeur web >> >> T. +33 (0)3 88 17 44 10 >> >> [email protected] >> >> 1 avenue du Président Robert Schuman >> >> CS 30403 >> >> F - 67001 Strasbourg Cedex >> >> T. + 33 (0)3 88 17 23 13 >> >> F. + 33 (0)3 88 17 90 62 >> >> www.ombudsman.europa.eu >> >> >> >> >> >>

