# Tomahawk und ExtensionsFilter



## tessie (25. Apr 2007)

Hallo zusammen!

Ich bin JSF-Anfänger und versuche gerade, eine Baumstruktur mittels tree2-Tag (Tomahawk) in meine Seite einzubauen. Leider bekomme ich das irgendwie überahupt nicht hin. 

Zuerst bekam ich eine Fehlermeldung, dass mein ExtensionsFilter nicht richtig konfiguriert sei. Ich habe dann, wie auf apache.org beschrieben, meine web.xml (siehe unten) entsprechend erweitert. Funktionieren tut leider immer noch nichts. Jetzt erhalte ich stattdessen die Fehlermeldung

javax.servlet.ServletException: Filter execution threw an exception

und

java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileUpload org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:114).

Ich vermute, dass das Problem in direktem Zusammenhang mit der web.xml steht, weil die Fehlermeldung auch dann noch aufgetaucht ist, nachdem ich das tree2-Tag aus meiner Seite entfernt und zugehörige Backing-Beans gelöscht hatte. Ansonsten bin ich im Moment vollkommen planlos und würde mich sehr freuen, wenn jemand weiter wüsste...

Vielen Dank schon einmal im voraus,
Tessie



*web.xml:*


```
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app id="WebApp_ID">
    <display-name>Energie-Datenbank</display-name>
	
    <filter>
        <filter-name>extensionsFilter</filter-name>
        <filter-class>org.apache.myfaces.component.html.util.ExtensionsFilter</filter-class>
        <init-param>
            <param-name>uploadMaxFileSize</param-name>
            <param-value>100m</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>extensionsFilter</filter-name>
        <url-pattern>*.faces</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>extensionsFilter</filter-name>
        <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
    </filter-mapping>
		
    <listener>
        <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
    </listener>
	
    <servlet>
        <servlet-name>Faces Servlet</servlet-name> 
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
        <load-on-startup>1</load-on-startup> 
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name> 
        <url-pattern>*.faces</url-pattern> 
    </servlet-mapping>
	
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
</web-app>
```


*Und das gibt er auf der Konsole aus:*

...

25.04.2007 15:58:32 org.apache.myfaces.component.html.util.ExtensionsFilter <init>
WARNUNG: Please adjust your web.xml to use org.apache.myfaces.webapp.filter.ExtensionsFilter
25.04.2007 15:58:33 org.apache.coyote.http11.Http11BaseProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
25.04.2007 15:58:34 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
25.04.2007 15:58:34 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/344  config=null
25.04.2007 15:58:35 org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
25.04.2007 15:58:35 org.apache.catalina.startup.Catalina start
INFO: Server startup in 10671 ms
25.04.2007 15:58:39 org.apache.catalina.core.StandardWrapperValve invoke
SCHWERWIEGEND: Servlet.service() for servlet Faces Servlet threw exception
java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileUpload
	at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:114)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
	at java.lang.Thread.run(Thread.java:595)


----------



## KSG9|sebastian (25. Apr 2007)

Du benötigst die Bibliothek commons-fileupload, gibts auf www.apache.org (unter apache commons). einfach nach web-inf/lib legen


----------



## tessie (3. Mai 2007)

Hallo Sebastian,

vielen Dank für Deine Antwort! Das war's in der Tat.
(Sorry für die Verzögerung, bin in letzter Zeit ziemlich im Stress).

Grüße
Tessie


----------

