# Fehlermeldung von Class an anderes Servlet und dann in JSP



## marquez (13. Okt 2006)

Hallo,

ich rufe von einem Servlet in einer anderen Klasse eine bestimmte Methode auf, die ein Dokument zurückliefert. In der Methode kann eine IOException auftreten, die ich durch einen try/catch-Block abfange. Für diese Exception möchte ich in der JSP eine Fehlermeldung ausgeben.

Also von dem Servlet zur JSP kann ich ja einfach den Fehlertext in den request packen, aber wie kriegt ich die in der Methode der Klasse zum Servlet :?: 

Wäre super, wenn mir wer helfen kann...am liebsten mit Beispielcoding :wink: 

Danke und Gruß


----------



## puddah (13. Okt 2006)

Fang die Exception erst im Servlet ab. Im Catch Block schreibst du den Fehlertext dann in den request.


----------



## SlaterB (13. Okt 2006)

wenn das nicht, z.B. weil in der Operation noch weitergearbeitet werden muss,
dann brauchst du irgendeinen Zwischenspeicher,

z.B. den Fehlrtext als Rückgabewert String weiterreichen, falls dieser bisher leer ist,
den Rückgabewert erweitern (statt ein Objekt nun ein neues Objekt mit dem ursprünglichen Objekt und der Fehlermeldung)
oder den Fehler in irgendeinem dritten Zwischenspeicher halten, was selten schön wird 

Request und Session zählen im Grunde dazu, sind auch solche komischen Zwischenspeicher


----------



## marquez (19. Okt 2006)

...erstmal danke, aber irgendwie bekomm ich das nicht hin. :bahnhof:  also irgendwie kriege ich es nicht nicht hin, meine Methode sieht ungefähr so aus:

```
public Document readFile(String filename){

                                Document doc = null;
                                ...

		try {


                                ....

		} catch (JDOMException e) {
			...
		} catch (IOException e) {
		                ...
		}
		
                                }
		return doc;
	}
```
Wie soll ich sie erweitern? "extends HttpServlet" würde ich ungern machen und dann soll es in den request? kann ich nicht irgendwie einen fehlerstring returnen?[/code]


----------



## KSG9|sebastian (19. Okt 2006)

würd das so lösen:


```
public DocumentException extends Exception{
..
}

public Document readFile(String filename)
 throws DocumentException{
 try{

 } catch(JDOMException e){
   throw new DocumentException("jdom error occured", e);
 }  catch(IOxception e){
   throw new DocumentException("i/o error", e);
 }
}
```

und im servlet dann eben mittels
try{..}catch(DocumentException de) abfangen.


----------



## marquez (1. Nov 2006)

:toll: Danke, sehr guter Ansatz, hat mir auf jeden Fall sehr geholfen


----------

