# setDefaultUncaughtExceptionHandler in Servlets



## originalOne (10. Jun 2010)

Hallo zusammen,

Ich versuche, innerhalb eines Servlets alle ungefangenen Exceptions mittels setUncaughtExceptionHandler() aufzufangen. Folgendes habe ich versucht:


```
public class Test extends HttpServlet {
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		Thread.currentThread().setUncaughtExceptionHandler(new UncaughtExceptionHandler());

		throw new IOException("intentional exception");
	}

	class UncaughtExceptionHandler implements Thread.UncaughtExceptionHandler {
	    public void uncaughtException(Thread th, Throwable ex) {
	        System.out.println("You crashed thread " + th.getName());
	        System.out.println("Exception was: " + ex.toString());
	    }
	}
}
```

Leider tritt die Exception nach wie vor auf und wird nicht in die Konsole umgeleitet. Was mache ich falsch?

Grüße,
  Thomas


----------



## nocturne (17. Jun 2010)

Hallo Thomas, 

kannst du den web.xml teil posten?
ie:
 <error-page>
  <exception-type>java.lang.Exception</exception-type>
  <location>/exception.jsp</location>
 </error-page>


----------



## originalOne (17. Jun 2010)

Ist gemäß dem dynamischen Web-Projekt (Java EE) nicht manuell gesetzt. Hier die gesamte web.xml:


```
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>FireP4jServletTest</display-name>
  <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>
  <servlet>
    <description></description>
    <display-name>Test</display-name>
    <servlet-name>Test</servlet-name>
    <servlet-class>firep4jtest.Test</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Test</servlet-name>
    <url-pattern>/Test</url-pattern>
  </servlet-mapping>
</web-app>
```


----------

