# EJB 3.0 - Exceptions aus Methoden einer Session Bean



## RaoulDuke (12. Apr 2007)

Hallo,

ich habe eine stateless Session Bean mit einer einzigen Methode die nur eine Exception wirft. Ich greife auf die EJB über ein remote Interface zu, und ich verstehe nicht warum die Exception nicht normal im Client ankommt.

Es gibt jedes mal folgende Exception:


```
Exception: [Ljava.lang.StackTraceElement;
java.lang.ClassNotFoundException: [Ljava.lang.StackTraceElement;
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        ...
```

Der Client tut folgendes:



```
try{
            InitialContext ic = new InitialContext();
            ExSessionRemote remote = (ExSessionRemote) ic.lookup("ExSessionBean/remote");
            remote.doit();
        }
        catch(Exception e){
            System.out.println("Exception: "+e.getMessage());
            e.printStackTrace();
        }
```

In der EJB sieht doit() so aus:


```
public void doit() throws Exception {
        throw new Exception();
    }
```

Im remote Interface ist die Exception auch angegeben:



```
@Remote
public interface ExSessionRemote {
    public void doit() throws Exception;
}
```

Und wenn ich statt der Exception eine eigene Exception mit dem Namen TestException werfe (Interfaces natürlich entsprechend angepasst), dann gibt es folgende Exception:


```
java.lang.reflect.UndeclaredThrowableException
        at $Proxy0.doit(Unknown Source)
        at applicationclient1.Main.main(Main.java:32)
Caused by: java.lang.ClassNotFoundException: [Ljava.lang.StackTraceElement;
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
```

Es sieht so aus als würde der applicationclient1 die TestException nicht kennen. Er kennt sie aber.

Ich konnte leider über Google noch keine Dokumentation zu genau dem Thema finden, falls mir jemand einen Tipp oder einen Link geben könnte wäre ich sehr dankbar.

Grüsse,

Sven


----------



## finde (16. Apr 2007)

Hallo,

ich habe genau dasselbe Problem, konnte mir aber noch keine Lösung ergooglen.
Hat jemand einen Plan, warum der Fehler auftritt und wie man ihn umgehen kann?

Viele Grüße


----------



## RaoulDuke (18. Apr 2007)

Hallo,

bei mir trat das Problem mit jboss 4.0.5-GA und dem JDK6 auf. Ich habe mittlerweile herausgefunden das das Problem mit einem JDK5 (bei mir jdk-1.5.0_11) nicht auftritt. Das Problem mit dem JDK6 konnte ich an 2 verschiedenen Rechnern mit unterschiedlichen Testprojekten reproduzieren.

Benutzt du auch ein 6er JDK?

Grüsse,

Sven


----------

