Filtre et servlet

nasix
Filtre et servlet

Bonjour tout le monde,

Dans un projet WEB (JSP et Servlet), Je veux appliquer un filtre sur les requêtes clientes, un filtre qui ne fait qu'afficher un message "Bonjour tout le monde, je suis un filtre !!".

Voici le classe Filtre que j'ai créée :

public class myFilter implements Filter {
 
    public void init(FilterConfig arg0) throws ServletException {
        throw new UnsupportedOperationException("Not supported yet.");
    }
 
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain arg2) throws IOException, ServletException {
        response.getWriter().println("Bonjout tout le monde !! je suis un filtre !!");
    }
 
    public void destroy() {
        throw new UnsupportedOperationException("Not supported yet.");
    }
 
}

Et voici la configuration XML de mon application :
<web-app ...>
    <filter>
        <filter-name>myFilter</filter-name>
        <filter-class>myFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>myFilter</filter-name>
        <servlet-name>myServlet</servlet-name>
    </filter-mapping>
    <listener>
        <listener-class>RequestListener</listener-class>
    </listener>
    <servlet>
        <servlet-name>myServlet</servlet-name>
        <servlet-class>myServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>myServlet</servlet-name>
        <url-pattern>/myServlet</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>   
    </web-app>

Mon application ne veux pas compiler et ça me donne une exception :
ECHEC - L'application pour le chemin de contexte /test n'a pas puêtredémarrée
Deployment error:
The module has not been deployed.
See the server log for details.
        at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.java:163)
...
...

Ce problème est du à mes balise et , parce qu'une fois je les enlève, l'application marche très très bien.

Merci pour toutes vos aides.

fredericmazue

Bonjour :)

Et qu'y-a-t-il dans le log du serveur. Tu peux nous faire un petit coup de bcopier/coller pour qu'on voit ça ?

nasix

Et où est ce que je pourrais trouver ce fichier de log? parce que là je n'ai rien trouvé dans Apache Tomcat 6.0.14/logs

fredericmazue

Franchement je n'en sais rien. Ca fait bien longtemps que je n'ai pas mis mon groin dans Tomcat, et en tout cas pas dans le 6.x
mais il te dis

Quote:
See the server log for details.

Alors il doit bien exister ce log.
Un serveur sans log ça c'est jamais vu.

Et ton problème, ça sera pas des fois un bon vieux problème de classpath ? Elle est dans un package ta classe, ou dans le package global ? Utiliser le package global c'est toujours source de problèmes....

si j'étais toi, j'essaierai de la mettre dans un package et après de donner

<filter>
   <filter-name>monpackage.myFilter</filter-name> 
   <filter-class>monpackage.myFilter</filter-class> 
</filter> 

Je le sens bien ça :)

Et puis si tu me le permets, une petite remarque, même si ça n'a sans doute pas d'incidence sur ton pb: les noms de classe qui commencent pas une minuscule ce n'est pas politiquement correct

myFilter pas bon

MyFilter ok :)

En espérant t'avoir aidé