[jboss-svn-commits] JBL Code SVN: r33264 - in labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor: public and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon May 31 13:10:16 EDT 2010
Author: jervisliu
Date: 2010-05-31 13:10:15 -0400 (Mon, 31 May 2010)
New Revision: 33264
Modified:
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/rpc/PushClient.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/public/logout.jsp
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/ServiceImplementation.java
Log:
GUVNOR-553: Log out from Guvnor throws exception.
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/rpc/PushClient.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/rpc/PushClient.java 2010-05-31 15:11:38 UTC (rev 33263)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/rpc/PushClient.java 2010-05-31 17:10:15 UTC (rev 33264)
@@ -1,11 +1,14 @@
package org.drools.guvnor.client.rpc;
+import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.core.client.GWT;
import java.util.List;
import java.util.ArrayList;
+import org.drools.guvnor.client.common.GenericCallback;
+
/**
* This manages "subscriptions" for when messages are pushed from the server.
* @author Michael Neale
@@ -32,10 +35,31 @@
private void connect() {
connected = true;
+
System.err.println("Connecting" + System.currentTimeMillis());
+ Timer timer = new Timer() {
+
+ public void run() {
+ RepositoryServiceFactory.getService().subscribe(new AsyncCallback<List<PushResponse>>() {
+ public void onFailure(Throwable caught) {
+ System.err.println("FAIL" + System.currentTimeMillis());
+ }
+
+ public void onSuccess(List<PushResponse> result) {
+ System.err.println("Got response !" + System.currentTimeMillis());
+ processResult(result);
+ }
+ });
+ }
+
+ };
+
+ timer.scheduleRepeating( 60000 );
+/*
RepositoryServiceFactory.getService().subscribe(new AsyncCallback<List<PushResponse>>() {
public void onFailure(Throwable caught) {
System.err.println("FAIL" + System.currentTimeMillis());
+
connect();
}
@@ -44,7 +68,7 @@
processResult(result);
connect();
}
- });
+ });*/
}
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/public/logout.jsp
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/public/logout.jsp 2010-05-31 15:11:38 UTC (rev 33263)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/public/logout.jsp 2010-05-31 17:10:15 UTC (rev 33264)
@@ -1,5 +1,5 @@
<%
- org.jboss.seam.Seam.invalidateSession();
+ org.jboss.seam.security.Identity.instance().logout();
String redirectURL = "Guvnor.html";
response.sendRedirect(redirectURL);
%>
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/ServiceImplementation.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/ServiceImplementation.java 2010-05-31 15:11:38 UTC (rev 33263)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/ServiceImplementation.java 2010-05-31 17:10:15 UTC (rev 33264)
@@ -144,6 +144,7 @@
import org.jboss.seam.annotations.security.Restrict;
import org.jboss.seam.contexts.Contexts;
import org.jboss.seam.security.Identity;
+import org.jboss.seam.web.Session;
import org.mvel2.MVEL;
import org.mvel2.templates.TemplateRuntime;
@@ -2778,11 +2779,15 @@
}
public List<PushResponse> subscribe() {
- try {
- return backchannel.await( getCurrentUserName() );
- } catch ( InterruptedException e ) {
- return new ArrayList<PushResponse>();
- }
+ if (Contexts.isApplicationContextActive() && !Session.instance().isInvalid()) {
+ try {
+ return backchannel.await(getCurrentUserName());
+ } catch (InterruptedException e) {
+ return new ArrayList<PushResponse>();
+ }
+ } else {
+ return new ArrayList<PushResponse>();
+ }
}
private String getCurrentUserName() {
More information about the jboss-svn-commits
mailing list