Alexander Wels has uploaded a new change for review. Change subject: webadmin: reports sso token ......................................................................
webadmin: reports sso token - Implemented ssoToken based on header value returned on login instead of cookie which is no longer readable. This token is now passed to the reports application instead of the cookie value. Change-Id: Ib906a1cca87712fb4e31c68c5e8c70151976ce0f Signed-off-by: Alexander Wels <[email protected]> --- M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProvider.java A frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/SSOTokenChange.java M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GenericApiGWTServiceImpl.java M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GwtDynamicHostPageServlet.java M frontend/webadmin/modules/frontend/src/main/resources/META-INF/resources/GwtHostPage.jsp M frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendActionTest.java M frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendTest.java M frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProviderTest.java A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/SSOTokenData.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/ReportInit.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SearchableListModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportsListModel.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java 16 files changed, 136 insertions(+), 22 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/42/27542/1 diff --git a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProvider.java b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProvider.java index 7d67fed..a898e2b 100644 --- a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProvider.java +++ b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProvider.java @@ -15,7 +15,14 @@ import org.ovirt.engine.core.common.queries.VdcQueryType; import org.ovirt.engine.ui.frontend.gwtservices.GenericApiGWTServiceAsync; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.http.client.Request; +import com.google.gwt.http.client.RequestBuilder; +import com.google.gwt.http.client.RequestCallback; +import com.google.gwt.http.client.Response; import com.google.gwt.user.client.rpc.AsyncCallback; +import com.google.gwt.user.client.rpc.RpcRequestBuilder; +import com.google.gwt.user.client.rpc.ServiceDefTarget; import com.google.inject.Inject; /** @@ -24,10 +31,17 @@ @SuppressWarnings({ "unchecked", "rawtypes" }) public class GWTRPCCommunicationProvider implements CommunicationProvider { + private static final String SSO_TOKEN_HEADER = "X-SSO-TOKEN"; //$NON-NLS-1$ + /** * GWT RPC service. */ private final GenericApiGWTServiceAsync service; + + /** + * GWT event bus. + */ + private final EventBus eventBus; /** * Get the GWT RPC service. @@ -42,8 +56,31 @@ * @param asyncService GWT RPC service. */ @Inject - public GWTRPCCommunicationProvider(final GenericApiGWTServiceAsync asyncService) { + public GWTRPCCommunicationProvider(final GenericApiGWTServiceAsync asyncService, final EventBus eventBus) { + this.eventBus = eventBus; this.service = asyncService; + ((ServiceDefTarget) this.service).setRpcRequestBuilder(new RpcRequestBuilder() { + @Override + protected void doSetCallback(RequestBuilder rb, final RequestCallback callback) { + super.doSetCallback(rb, new RequestCallback() { + + @Override + public void onResponseReceived(Request request, Response response) { + String tokenValue = response.getHeader(SSO_TOKEN_HEADER); + if (tokenValue != null) { + //Login result received. + SSOTokenChangeEvent.fire(eventBus, tokenValue); + } + callback.onResponseReceived(request, response); + } + + @Override + public void onError(Request request, Throwable exception) { + callback.onError(request, exception); + } + }); + } + }); } /** diff --git a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/SSOTokenChange.java b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/SSOTokenChange.java new file mode 100644 index 0000000..37a4a91 --- /dev/null +++ b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/communication/SSOTokenChange.java @@ -0,0 +1,8 @@ +package org.ovirt.engine.ui.frontend.communication; + +import com.gwtplatform.dispatch.annotation.GenEvent; + +@GenEvent +public class SSOTokenChange { + String ssoToken; +} diff --git a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GenericApiGWTServiceImpl.java b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GenericApiGWTServiceImpl.java index 5356e47..fb732c2 100644 --- a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GenericApiGWTServiceImpl.java +++ b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GenericApiGWTServiceImpl.java @@ -182,6 +182,7 @@ params.setSessionId(getSession().getId()); params.setActionType(loginType); VdcReturnValueBase returnValue = getBackend().login(params); + this.getThreadLocalResponse().addHeader("X-SSO-TOKEN", getSession().getId()); //$NON-NLS-1$ return returnValue; } diff --git a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GwtDynamicHostPageServlet.java b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GwtDynamicHostPageServlet.java index 51b2bba..69ec017 100644 --- a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GwtDynamicHostPageServlet.java +++ b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/GwtDynamicHostPageServlet.java @@ -46,6 +46,7 @@ ATTR_MESSAGES("messages"), //$NON-NLS-1$ ATTR_BASE_CONTEXT_PATH("baseContextPath"), //$NON-NLS-1$ ATTR_LOCALE(LocaleFilter.LOCALE), + ATTR_SSO_TOKEN("ssoToken"), //$NON-NLS-1$ ATTR_APPLICATION_TYPE(BrandingFilter.APPLICATION_NAME); private final String attributeKey; @@ -111,6 +112,7 @@ DbUser loggedInUser = getLoggedInUser(request.getSession().getId()); if (loggedInUser != null) { request.setAttribute(MD5Attributes.ATTR_USER_INFO.getKey(), getUserInfoObject(loggedInUser)); + request.setAttribute(MD5Attributes.ATTR_SSO_TOKEN.getKey(), getSessionIdNode(request.getSession().getId())); } try { @@ -179,6 +181,11 @@ return node.toString(); } + private String getSessionIdNode(String sessionId) { + ObjectNode node = mapper.createObjectNode(); + node.put("value", sessionId); //$NON-NLS-1$ + return node.toString(); + } /** * Get a JavaScript associative array string that define the branding messages. * @param applicationName the application name. diff --git a/frontend/webadmin/modules/frontend/src/main/resources/META-INF/resources/GwtHostPage.jsp b/frontend/webadmin/modules/frontend/src/main/resources/META-INF/resources/GwtHostPage.jsp index 45bcdbc..855dd87 100644 --- a/frontend/webadmin/modules/frontend/src/main/resources/META-INF/resources/GwtHostPage.jsp +++ b/frontend/webadmin/modules/frontend/src/main/resources/META-INF/resources/GwtHostPage.jsp @@ -12,6 +12,7 @@ <script type="text/javascript"> <c:if test="${requestScope['userInfo'] != null}"> var userInfo = <c:out value="${requestScope['userInfo']}" escapeXml="false"/>; + var ssoToken = <c:out value="${requestScope['ssoToken']}" escapeXml="false"/>; </c:if> <c:if test="${requestScope['applicationMode'] != null}"> var applicationMode = <c:out value="${requestScope['applicationMode']}" escapeXml="false"/>; diff --git a/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendActionTest.java b/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendActionTest.java index 3c41bbd..ce40bcc 100644 --- a/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendActionTest.java +++ b/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendActionTest.java @@ -99,7 +99,7 @@ @Before public void setUp() throws Exception { fakeScheduler = new FakeGWTScheduler(); - CommunicationProvider communicationsProvider = new GWTRPCCommunicationProvider(mockService); + CommunicationProvider communicationsProvider = new GWTRPCCommunicationProvider(mockService, mockEventBus); OperationProcessor operationProcessor = new OperationProcessor(communicationsProvider); operationProcessor.setScheduler(fakeScheduler); VdcOperationManager operationsManager = new VdcOperationManager(operationProcessor); diff --git a/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendTest.java b/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendTest.java index 1607ced..3f10b10 100644 --- a/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendTest.java +++ b/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendTest.java @@ -93,7 +93,7 @@ @Before public void setUp() throws Exception { fakeScheduler = new FakeGWTScheduler(); - CommunicationProvider communicationsProvider = new GWTRPCCommunicationProvider(mockService); + CommunicationProvider communicationsProvider = new GWTRPCCommunicationProvider(mockService, mockEventBus); OperationProcessor operationProcessor = new OperationProcessor(communicationsProvider); operationProcessor.setScheduler(fakeScheduler); VdcOperationManager operationsManager = new VdcOperationManager(operationProcessor); diff --git a/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProviderTest.java b/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProviderTest.java index a8283c2..59dd7cf 100644 --- a/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProviderTest.java +++ b/frontend/webadmin/modules/frontend/src/test/java/org/ovirt/engine/ui/frontend/communication/GWTRPCCommunicationProviderTest.java @@ -23,6 +23,7 @@ import org.ovirt.engine.core.common.queries.VdcQueryType; import org.ovirt.engine.ui.frontend.gwtservices.GenericApiGWTServiceAsync; +import com.google.gwt.event.shared.EventBus; import com.google.gwt.user.client.rpc.AsyncCallback; @RunWith(MockitoJUnitRunner.class) @@ -37,6 +38,9 @@ VdcOperationCallbackList mockOperationCallbackList1; @Mock VdcOperationCallbackList mockOperationCallbackList2; + @Mock + EventBus mockEventBus; + @Captor ArgumentCaptor<AsyncCallback<VdcReturnValueBase>> actionCallback; @Captor @@ -53,7 +57,7 @@ @Before public void setUp() throws Exception { - testProvider = new GWTRPCCommunicationProvider(mockService); + testProvider = new GWTRPCCommunicationProvider(mockService, mockEventBus); } @Test diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/SSOTokenData.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/SSOTokenData.java new file mode 100644 index 0000000..4204175 --- /dev/null +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/SSOTokenData.java @@ -0,0 +1,21 @@ +package org.ovirt.engine.ui.common.auth; + +import com.google.gwt.core.client.JavaScriptObject; + +public final class SSOTokenData extends JavaScriptObject { + + protected SSOTokenData() { + } + + public static native SSOTokenData instance() /*-{ + return $wnd.ssoToken; + }-*/; + + public native String getValue() /*-{ + return this.value; + }-*/; + + public String getSsoToken() { + return getValue(); + } +} diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java index b37faaf..7c7c718 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java @@ -4,11 +4,13 @@ import org.ovirt.engine.ui.common.auth.AutoLoginData; import org.ovirt.engine.ui.common.auth.CurrentUser; import org.ovirt.engine.ui.common.auth.CurrentUser.LogoutHandler; +import org.ovirt.engine.ui.common.auth.SSOTokenData; import org.ovirt.engine.ui.common.uicommon.FrontendEventsHandlerImpl; import org.ovirt.engine.ui.common.uicommon.FrontendFailureEventListener; import org.ovirt.engine.ui.common.uicommon.model.CleanupModelEvent; import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent; import org.ovirt.engine.ui.frontend.Frontend; +import org.ovirt.engine.ui.frontend.communication.SSOTokenChangeEvent; import org.ovirt.engine.ui.uicommonweb.ITypeResolver; import org.ovirt.engine.ui.uicommonweb.TypeResolver; import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider; @@ -107,7 +109,7 @@ protected void performLogin(T loginModel) { DbUser loggedUser = loginModel.getLoggedUser(); - String loginPassword = (String) loginModel.getPassword().getEntity(); + String loginPassword = loginModel.getPassword().getEntity(); // UiCommon login preparation frontend.initLoggedInUser(loggedUser, loginPassword); @@ -171,6 +173,7 @@ } }); + SSOTokenChangeEvent.fire(eventBus, SSOTokenData.instance().getSsoToken()); // Indicate that the user should be logged in automatically user.setAutoLogin(true); } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/ReportInit.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/ReportInit.java index d9f97f2..247c32d 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/ReportInit.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/ReportInit.java @@ -5,6 +5,8 @@ import org.ovirt.engine.ui.frontend.AsyncQuery; import org.ovirt.engine.ui.frontend.INewAsyncCallback; +import org.ovirt.engine.ui.frontend.communication.SSOTokenChangeEvent; +import org.ovirt.engine.ui.frontend.communication.SSOTokenChangeEvent.SSOTokenChangeHandler; import org.ovirt.engine.ui.frontend.utils.BaseContextPathData; import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider; import org.ovirt.engine.ui.uicompat.Event; @@ -12,6 +14,8 @@ import org.ovirt.engine.ui.uicompat.ReportParser.Dashboard; import org.ovirt.engine.ui.uicompat.ReportParser.Resource; +import com.google.gwt.event.shared.EventBus; +import com.google.gwt.event.shared.HandlerRegistration; import com.google.gwt.http.client.Request; import com.google.gwt.http.client.RequestBuilder; import com.google.gwt.http.client.RequestCallback; @@ -27,10 +31,13 @@ private boolean urlInitialized; private Event reportsInitEvent; private String reportBaseUrl; + private String ssoToken; private boolean isCommunityEdition; private Map<String, Resource> resourceMap; private Map<String, Dashboard> dashboardMap; + + private HandlerRegistration ssoTokenHandlerRegistration; public static ReportInit getInstance() { return INSTANCE; @@ -135,16 +142,25 @@ return reportBaseUrl; } + public void setSsoToken(final String token) { + this.ssoToken = token; + checkIfInitFinished(); + } + + public String getSsoToken() { + return this.ssoToken; + } + private void setXmlInitialized() { this.xmlInitialized = true; checkIfInitFinished(); } private void checkIfInitFinished() { - if (xmlInitialized && urlInitialized) { + if (xmlInitialized && urlInitialized && ssoToken != null) { // Check if the reports should be enabled in this system - if (!reportBaseUrl.equals("") && !resourceMap.isEmpty()) { //$NON-NLS-1$ + if (!"".equals(reportBaseUrl) && !resourceMap.isEmpty() && !"".equals(ssoToken)) { //$NON-NLS-1$ $NON-NLS-2$ setReportsEnabled(true); } else { setReportsEnabled(false); @@ -155,4 +171,21 @@ } } + public void initHandlers(EventBus eventBus) { + if (ssoTokenHandlerRegistration != null) { + ssoTokenHandlerRegistration.removeHandler(); + } + // Register to listen for session id acquired events. + ssoTokenHandlerRegistration = eventBus.addHandler(SSOTokenChangeEvent.getType(), + new SSOTokenChangeHandler() { + + @Override + public void onSSOTokenChange(SSOTokenChangeEvent event) { + ssoToken = event.getSsoToken(); + checkIfInitFinished(); + } + } + ); + } + } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java index f056b21..7c35de5 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java @@ -184,7 +184,8 @@ userList = new UserListModel(); list.add(userList); - reportsList = new ReportsListModel(ReportInit.getInstance().getReportBaseUrl()); + reportsList = new ReportsListModel(ReportInit.getInstance().getReportBaseUrl(), + ReportInit.getInstance().getSsoToken()); list.add(reportsList); reportsList.setIsAvailable(false); @@ -307,7 +308,7 @@ updateHasSelectedTags(); getTagList().getSelectedItemsChangedEvent().addListener(this); - SystemTreeItemModel model = (SystemTreeItemModel) getSystemTree().getSelectedItem(); + SystemTreeItemModel model = getSystemTree().getSelectedItem(); if (model == null) { return; @@ -345,7 +346,7 @@ if (getSelectedItem() instanceof ISupportSystemTreeContext) { ISupportSystemTreeContext treeContext = (ISupportSystemTreeContext) getSelectedItem(); - treeContext.setSystemTreeSelectedItem((SystemTreeItemModel) getSystemTree().getSelectedItem()); + treeContext.setSystemTreeSelectedItem(getSystemTree().getSelectedItem()); } } } @@ -657,7 +658,7 @@ if (getSelectedItem() instanceof ISupportSystemTreeContext) { ISupportSystemTreeContext treeContext = (ISupportSystemTreeContext) getSelectedItem(); - treeContext.setSystemTreeSelectedItem((SystemTreeItemModel) getSystemTree().getSelectedItem()); + treeContext.setSystemTreeSelectedItem(getSystemTree().getSelectedItem()); } } @@ -736,7 +737,7 @@ private void splitSearchString(String source, RefObject<String> prefix, RefObject<String> search) { ArrayList<TagModel> tags = (ArrayList<TagModel>) getTagList().getSelectedItems(); - SystemTreeItemModel model = (SystemTreeItemModel) getSystemTree().getSelectedItem(); + SystemTreeItemModel model = getSystemTree().getSelectedItem(); prefix.argvalue = ""; //$NON-NLS-1$ diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SearchableListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SearchableListModel.java index f382fd3..a3b001a 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SearchableListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SearchableListModel.java @@ -496,7 +496,8 @@ protected ReportModel createReportModel() { ReportCommand reportCommand = (ReportCommand) getLastExecutedCommand(); - ReportModel reportModel = new ReportModel(ReportInit.getInstance().getReportBaseUrl()); + ReportModel reportModel = new ReportModel(ReportInit.getInstance().getReportBaseUrl(), + ReportInit.getInstance().getSsoToken()); reportModel.setReportUnit(reportCommand.getUriValue()); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportModel.java index 0240460..4364397 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportModel.java @@ -7,7 +7,6 @@ import org.ovirt.engine.ui.uicommonweb.models.EntityModel; import com.google.gwt.i18n.client.LocaleInfo; -import com.google.gwt.user.client.Cookies; public class ReportModel extends EntityModel { @@ -15,11 +14,10 @@ private boolean differntDcError = false; private final String reportUrl; - public ReportModel(String baseUrl) { - String sessionID = Cookies.getCookie("JSESSIONID"); //$NON-NLS-1$ + public ReportModel(String baseUrl, String ssoToken) { reportUrl = baseUrl + "/flow.html" + "?viewAsDashboardFrame=false"; //$NON-NLS-1$ //$NON-NLS-2$ - paramsMap.setParameter("sessionID", sessionID); //$NON-NLS-1$ + paramsMap.setParameter("sessionID", ssoToken); //$NON-NLS-1$ paramsMap.setParameter("_flowId", "viewReportFlow"); //$NON-NLS-1$ //$NON-NLS-2$ paramsMap.setParameter("active_hosts_select", //$NON-NLS-1$ "AND+delete_date+IS+NULL"); //$NON-NLS-1$ diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportsListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportsListModel.java index 72a0841..0111196 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportsListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/reports/ReportsListModel.java @@ -22,7 +22,6 @@ import com.google.gwt.core.client.GWT; import com.google.gwt.i18n.client.LocaleInfo; -import com.google.gwt.user.client.Cookies; public class ReportsListModel extends SearchableListModel { @@ -36,10 +35,9 @@ return reportModelRefreshEvent; } - public ReportsListModel(String baseUrl) { - String sessionID = Cookies.getCookie("JSESSIONID"); //$NON-NLS-1$ + public ReportsListModel(String baseUrl, String ssoToken) { reportUrl = baseUrl + "/flow.html" + "?viewAsDashboardFrame=true"; //$NON-NLS-1$ //$NON-NLS-2$ - htmlParams.setParameter("sessionID", sessionID); //$NON-NLS-1$ + htmlParams.setParameter("sessionID", ssoToken); //$NON-NLS-1$ setFlowId(); @@ -108,7 +106,7 @@ public void refreshReportModel() { SystemTreeItemModel treeItemModel = - ((SystemTreeItemModel) CommonModel.getInstance().getSystemTree().getSelectedItem()); + (CommonModel.getInstance().getSystemTree().getSelectedItem()); if (treeItemModel == null) { return; } diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java index 6659101..4e57415 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java @@ -96,6 +96,7 @@ protected void initFrontend() { super.initFrontend(); + ReportInit.getInstance().initHandlers(eventBus); // Configure REST API integration for UI plugin infrastructure frontend.setLoginHandler(new FrontendLoginHandler() { @Override -- To view, visit http://gerrit.ovirt.org/27542 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ib906a1cca87712fb4e31c68c5e8c70151976ce0f Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Alexander Wels <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
