You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2007/01/20 06:18:19 UTC
svn commit: r498072 - in /incubator/openejb/trunk/openejb3/server:
openejb-client/src/main/java/org/apache/openejb/client/EJBResponse.java
openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/EjbRequestHandler.java
Author: dblevins
Date: Fri Jan 19 21:18:17 2007
New Revision: 498072
URL: http://svn.apache.org/viewvc?view=rev&rev=498072
Log:
Check if the throwable is not a ThrowableArtifact, if it isn't then wrap it.
Modified:
incubator/openejb/trunk/openejb3/server/openejb-client/src/main/java/org/apache/openejb/client/EJBResponse.java
incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/EjbRequestHandler.java
Modified: incubator/openejb/trunk/openejb3/server/openejb-client/src/main/java/org/apache/openejb/client/EJBResponse.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/server/openejb-client/src/main/java/org/apache/openejb/client/EJBResponse.java?view=diff&rev=498072&r1=498071&r2=498072
==============================================================================
--- incubator/openejb/trunk/openejb3/server/openejb-client/src/main/java/org/apache/openejb/client/EJBResponse.java (original)
+++ incubator/openejb/trunk/openejb3/server/openejb-client/src/main/java/org/apache/openejb/client/EJBResponse.java Fri Jan 19 21:18:17 2007
@@ -94,6 +94,16 @@
public void writeExternal(ObjectOutput out) throws IOException {
out.writeByte(responseCode);
+
+ switch (responseCode) {
+ case ResponseCodes.EJB_APP_EXCEPTION:
+ case ResponseCodes.EJB_ERROR:
+ case ResponseCodes.EJB_SYS_EXCEPTION:
+ if (result instanceof Throwable && !(result instanceof ThrowableArtifact)) {
+ Throwable throwable = (Throwable) result;
+ result = new ThrowableArtifact(throwable);
+ }
+ }
out.writeObject(result);
}
}
Modified: incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/EjbRequestHandler.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/EjbRequestHandler.java?view=diff&rev=498072&r1=498071&r2=498072
==============================================================================
--- incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/EjbRequestHandler.java (original)
+++ incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/EjbRequestHandler.java Fri Jan 19 21:18:17 2007
@@ -259,7 +259,7 @@
result = new RemoteException("The bean is not EJB compliant. The bean should be created or and exception should be thrown.");
this.daemon.logger.error(req + "The bean is not EJB compliant. The bean should be created or and exception should be thrown.");
- res.setResponse(ResponseCodes.EJB_SYS_EXCEPTION, result);
+ res.setResponse(ResponseCodes.EJB_SYS_EXCEPTION, new ThrowableArtifact((Throwable) result));
}
}
@@ -387,7 +387,7 @@
res.setResponse(ResponseCodes.EJB_OK, null);
} else {
this.daemon.logger.info(req + "Unauthorized Access by Principal Denied");
- res.setResponse(ResponseCodes.EJB_APP_EXCEPTION, new RemoteException("Unauthorized Access by Principal Denied"));
+ res.setResponse(ResponseCodes.EJB_APP_EXCEPTION, new ThrowableArtifact(new RemoteException("Unauthorized Access by Principal Denied")));
}
}