From 1ba95526771a442955f15b55611ee99c7b1485c5 Mon Sep 17 00:00:00 2001 From: Massimiliano Assante Date: Tue, 15 Dec 2015 18:31:47 +0000 Subject: [PATCH] Bug #1829 Reports Manager setting dev mode when session expires to any user git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/reports@121844 82a268e6-3cf1-43bd-a215-b396298e98cf --- .settings/org.eclipse.wst.common.component | 3 +++ distro/changelog.xml | 1 + pom.xml | 5 +++++ .../user/reportgenerator/client/ReportGenerator.java | 3 +++ .../server/servlet/ReportServiceImpl.java | 5 +++++ .../user/reportgenerator/ReportGenerator.gwt.xml | 1 + src/main/webapp/WEB-INF/web.xml | 10 ++++++++++ 7 files changed, 28 insertions(+) diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component index 1195861..ebcbb6f 100644 --- a/.settings/org.eclipse.wst.common.component +++ b/.settings/org.eclipse.wst.common.component @@ -4,6 +4,9 @@ + + uses + diff --git a/distro/changelog.xml b/distro/changelog.xml index d50fa9b..13410c7 100644 --- a/distro/changelog.xml +++ b/distro/changelog.xml @@ -2,6 +2,7 @@ Fix for Incident #1511 - deactivating window.alert deactivates commit facility - Need for internal dialog + Fix for Incident #1828 - Reports Manager of production contacting the dev RSG Webservice diff --git a/pom.xml b/pom.xml index 8f8dc03..930e6bc 100644 --- a/pom.xml +++ b/pom.xml @@ -85,6 +85,11 @@ ${gwtVersion} provided + + org.gcube.portlets.widgets + session-checker + [0.4.0-SNAPSHOT, 1.0.0-SNAPSHOT) + org.gcube.core common-scope-maps diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/ReportGenerator.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/ReportGenerator.java index 30d9bb2..ba331f1 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/ReportGenerator.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/ReportGenerator.java @@ -1,6 +1,7 @@ package org.gcube.portlets.user.reportgenerator.client; import org.gcube.portlets.user.reportgenerator.client.Presenter.Presenter; +import org.gcube.portlets.widgets.sessionchecker.client.CheckSession; import com.google.gwt.core.client.EntryPoint; import com.google.gwt.user.client.ui.CellPanel; @@ -128,6 +129,8 @@ public class ReportGenerator implements EntryPoint { // Add image and button to the RootPanel RootPanel.get("ReportGeneratorDIV").add(mainLayout); + //if you do not need to something when the session expire + CheckSession.getInstance().startPolling(); } diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/server/servlet/ReportServiceImpl.java b/src/main/java/org/gcube/portlets/user/reportgenerator/server/servlet/ReportServiceImpl.java index 189f0c0..437eaca 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/server/servlet/ReportServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/server/servlet/ReportServiceImpl.java @@ -1947,6 +1947,11 @@ public class ReportServiceImpl extends RemoteServiceServlet implements ReportSe * @throws Exception */ private boolean isReportsStoreGatewayAvailable(){ + String user = (String) this.getThreadLocalRequest().getSession().getAttribute(ScopeHelper.USERNAME_ATTRIBUTE); + if (user == null && isWithinPortal()) { + _log.warn("Session expired, returning ReportsStoreGateway not available"); + return false; + } String scope = getASLSession().getScope(); _log.info("Looking for a running ReportsStoreGateway WS in " + scope); String previousScope = ScopeProvider.instance.get(); diff --git a/src/main/resources/org/gcube/portlets/user/reportgenerator/ReportGenerator.gwt.xml b/src/main/resources/org/gcube/portlets/user/reportgenerator/ReportGenerator.gwt.xml index 7716367..b9b01b8 100644 --- a/src/main/resources/org/gcube/portlets/user/reportgenerator/ReportGenerator.gwt.xml +++ b/src/main/resources/org/gcube/portlets/user/reportgenerator/ReportGenerator.gwt.xml @@ -12,6 +12,7 @@ + diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index 353401e..5e9e021 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -24,6 +24,16 @@ /reports/WorkspaceExplorerService + + checkServlet + org.gcube.portlets.widgets.sessionchecker.server.SessionCheckerServiceImpl + + + + checkServlet + /reports/checksession + + uploadprogress