[jboss-svn-commits] JBL Code SVN: r21034 - in labs/jbossrules/trunk/drools-guvnor: src/main/java/org/jboss/seam/remoting/gwt and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Jul 15 07:02:28 EDT 2008
Author: jervisliu
Date: 2008-07-15 07:02:28 -0400 (Tue, 15 Jul 2008)
New Revision: 21034
Modified:
labs/jbossrules/trunk/drools-guvnor/pom.xml
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/jboss/seam/remoting/gwt/GWTRemoteServiceServlet.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/jboss/seam/remoting/gwt/GWTToSeamAdapter.java
Log:
Improved error message when authorization failed.
Modified: labs/jbossrules/trunk/drools-guvnor/pom.xml
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/pom.xml 2008-07-15 08:55:20 UTC (rev 21033)
+++ labs/jbossrules/trunk/drools-guvnor/pom.xml 2008-07-15 11:02:28 UTC (rev 21034)
@@ -144,7 +144,13 @@
<artifactId>jta</artifactId>
<version>1.0.1B</version>
</dependency>
-
+
+ <dependency>
+ <groupId>javax.ejb</groupId>
+ <artifactId>ejb-api</artifactId>
+ <version>3.0</version>
+ </dependency>
+
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/jboss/seam/remoting/gwt/GWTRemoteServiceServlet.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/jboss/seam/remoting/gwt/GWTRemoteServiceServlet.java 2008-07-15 08:55:20 UTC (rev 21033)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/jboss/seam/remoting/gwt/GWTRemoteServiceServlet.java 2008-07-15 11:02:28 UTC (rev 21034)
@@ -33,6 +33,7 @@
import javax.servlet.http.HttpServletResponse;
import org.jboss.seam.remoting.gwt.GWTToSeamAdapter.ReturnedObject;
+import org.jboss.seam.security.AuthorizationException;
import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.SerializableException;
@@ -308,7 +309,14 @@
caught = cause;
// Serialize the exception back to the client if it's a declared
// exception
- if (cause instanceof SerializableException) {
+ if (cause instanceof AuthorizationException) {
+ responsePayload = cause.getMessage();
+ streamWriter.prepareToWrite();
+ streamWriter.writeString(responsePayload);
+ // Don't log the exception on the server
+ caught = null;
+ } else if (cause instanceof SerializableException) {
+
Class thrownClass = cause.getClass();
responsePayload = createResponse(streamWriter, thrownClass, cause,
true);
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/jboss/seam/remoting/gwt/GWTToSeamAdapter.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/jboss/seam/remoting/gwt/GWTToSeamAdapter.java 2008-07-15 08:55:20 UTC (rev 21033)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/jboss/seam/remoting/gwt/GWTToSeamAdapter.java 2008-07-15 11:02:28 UTC (rev 21034)
@@ -35,6 +35,8 @@
import org.jboss.seam.Component;
import org.jboss.seam.annotations.remoting.WebRemote;
import org.jboss.seam.contexts.Contexts;
+import org.jboss.seam.security.AuthorizationException;
+
/**
* This class adapts GWT RPC mechanism to Seam actions.
*
@@ -87,6 +89,8 @@
cause.printStackTrace( w );
if (cause instanceof DetailedSerializableException) {
throw new InvocationTargetException(cause);
+ } else if (cause instanceof AuthorizationException) {
+ throw e;
} else {
throw new InvocationTargetException(new DetailedSerializableException("An error occurred executing the action.", sw.toString()));
}
More information about the jboss-svn-commits
mailing list