From f15ad387c1cb2d6db9c560e7d734a47829c91422 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Thu, 24 Oct 2013 15:42:08 +0000 Subject: [PATCH] Merge RAP 2.x adaptation from 2.tp branch git-svn-id: https://svn.argeo.org/commons/trunk@6560 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- base/dep/org.argeo.eclipse.dep.rap/pom.xml | 94 +++++++++++++------ .../org.argeo.osgi.ui.explorer/pom.xml | 1 + base/runtime/org.argeo.eclipse.ui.rap/pom.xml | 2 +- .../ui/specific/DownloadServiceHandler.java | 14 +-- .../eclipse/ui/specific/FileHandler.java | 63 +++++++------ .../ui/specific/GenericUploadControl.java | 54 +++++------ .../ui/specific/ImportToServerWizardPage.java | 28 +++--- .../argeo/eclipse/ui/specific/ThreadNLS.java | 2 +- base/runtime/org.argeo.osgi.boot/pom.xml | 3 +- demo/argeo_node_web.properties | 78 ++++++++++++++- pom.xml | 11 +++ .../org.argeo.security.dep.node.rap/pom.xml | 31 +++++- .../org.argeo.security.ui.rap/plugin.xml | 29 ++---- .../security/ui/rap/AnonymousEntryPoint.java | 4 +- .../security/ui/rap/LogoutEntryPoint.java | 4 +- .../argeo/security/ui/rap/NullEntryPoint.java | 2 +- .../security/ui/rap/RapWindowAdvisor.java | 18 +++- .../security/ui/rap/SecureEntryPoint.java | 4 +- .../org.argeo.server.catalina.start/pom.xml | 1 + 19 files changed, 299 insertions(+), 144 deletions(-) diff --git a/base/dep/org.argeo.eclipse.dep.rap/pom.xml b/base/dep/org.argeo.eclipse.dep.rap/pom.xml index 4e36c597e..7423ef844 100644 --- a/base/dep/org.argeo.eclipse.dep.rap/pom.xml +++ b/base/dep/org.argeo.eclipse.dep.rap/pom.xml @@ -10,7 +10,7 @@ org.argeo.eclipse.dep.rap Commons Eclipse RAP Dependencies - 1.3.2 + 2.1.0-R-20130611-2139 @@ -21,35 +21,64 @@ - - org.argeo.tp - org.eclipse.osgi - + + + + org.argeo.tp.rap.platform binaries - ${version.argeo-distribution} + ${version.rap} pom - - org.argeo.tp.rap.platform - javax.servlet - + + + + - - org.argeo.tp.rap.platform - org.eclipse.equinox.http.jetty - - - org.argeo.tp.rap.platform - org.mortbay.jetty.server - - - org.argeo.tp.rap.platform - org.mortbay.jetty.util - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -64,7 +93,7 @@ org.argeo.tp.rap.platform org.eclipse.rap.design.example - + org.argeo.tp.rap.platform @@ -74,15 +103,19 @@ org.argeo.tp.rap.platform org.eclipse.rap.junit.runtime + + org.argeo.tp.rap.platform + org.eclipse.rap.rwt.testfixture + - - org.argeo.tp.rap - org.eclipse.rwt.widgets.upload - + + + + org.argeo.tp @@ -105,6 +138,11 @@ org.eclipse.equinox.security + + org.argeo.commons.base + org.argeo.osgi.boot + 2.1.2-SNAPSHOT + @@ -118,7 +156,7 @@ org.argeo.tp.rap.platform binaries - ${version.argeo-distribution} + ${version.rap} pom import diff --git a/base/plugins/org.argeo.osgi.ui.explorer/pom.xml b/base/plugins/org.argeo.osgi.ui.explorer/pom.xml index 20cb9818d..52575a84c 100644 --- a/base/plugins/org.argeo.osgi.ui.explorer/pom.xml +++ b/base/plugins/org.argeo.osgi.ui.explorer/pom.xml @@ -30,6 +30,7 @@ org.argeo.tp org.eclipse.osgi + provided diff --git a/base/runtime/org.argeo.eclipse.ui.rap/pom.xml b/base/runtime/org.argeo.eclipse.ui.rap/pom.xml index dab367f0f..c67553bff 100644 --- a/base/runtime/org.argeo.eclipse.ui.rap/pom.xml +++ b/base/runtime/org.argeo.eclipse.ui.rap/pom.xml @@ -31,7 +31,7 @@ lazy org.argeo.eclipse.ui.ArgeoUiPlugin - org.eclipse.rap.ui,org.eclipse.rwt.widgets.upload,org.eclipse.core.runtime + org.eclipse.rap.ui,org.eclipse.core.runtime diff --git a/demo/argeo_node_web.properties b/demo/argeo_node_web.properties index a63e68feb..65d63bcf8 100644 --- a/demo/argeo_node_web.properties +++ b/demo/argeo_node_web.properties @@ -6,12 +6,77 @@ argeo.osgi.start.3.node=\ org.argeo.node.repo.jackrabbit,\ org.argeo.security.dao.ldap,\ -argeo.osgi.start.4.node=\ -org.argeo.jackrabbit.webapp,\ -org.argeo.server.rap.webapp,\ -org.argeo.server.catalina.start,\ +#argeo.osgi.start.4.node=\ +#org.argeo.jackrabbit.webapp,\ +#org.argeo.server.rap.webapp,\ +#org.argeo.server.catalina.start,\ +#org.eclipse.equinox.http.registry,\ +#org.springframework.osgi.web.extender,\ + +#argeo.osgi.start.4.node.jetty=\ +#org.eclipse.jetty.server,\ +#org.eclipse.equinox.http.jetty,\ +#org.eclipse.equinox.http.registry,\ +#org.eclipse.equinox.http.servlet,\ +#org.eclipse.equinox.ds,\ +#org.eclipse.osgi.services,\ +#org.eclipse.equinox.launcher,\ +#org.eclipse.rap.ui.workbench,\ + +#org.eclipse.rap.rwt,\ +#org.eclipse.rap.rwt.osgi,\ +#org.eclipse.equinox.ds,\ + +argeo.osgi.start.4.node.rap=\ +org.eclipse.osgi,\ +org.eclipse.osgi.services,\ +org.eclipse.equinox.console,\ +org.apache.felix.gogo.command,\ +org.apache.felix.gogo.shell,\ +org.apache.felix.gogo.runtime,\ +org.eclipse.equinox.http.jetty,\ +org.eclipse.equinox.http.servlet,\ +org.eclipse.equinox.util,\ +org.eclipse.jetty.continuation,\ +org.eclipse.jetty.http,\ +org.eclipse.jetty.io,\ +org.eclipse.jetty.security,\ +org.eclipse.jetty.server,\ +org.eclipse.jetty.servlet,\ +org.eclipse.jetty.util,\ +javax.servlet,\ +org.eclipse.rap.jface,\ +org.eclipse.rap.jface.databinding,\ +org.eclipse.rap.ui,\ +org.eclipse.rap.ui.forms,\ +org.eclipse.rap.ui.views,\ +org.eclipse.rap.ui.workbench,\ +com.ibm.icu.base,\ +org.eclipse.core.commands,\ +org.eclipse.core.contenttype,\ +org.eclipse.core.databinding,\ +org.eclipse.core.databinding.beans,\ +org.eclipse.core.databinding.observable,\ +org.eclipse.core.databinding.property,\ +org.eclipse.core.expressions,\ +org.eclipse.core.jobs,\ +org.eclipse.core.runtime,\ +org.eclipse.equinox.app,\ +org.eclipse.equinox.common,\ +org.eclipse.equinox.registry,\ +org.eclipse.equinox.preferences,\ org.eclipse.equinox.http.registry,\ -org.springframework.osgi.web.extender,\ + +argeo.osgi.start.5.node.rap=\ +org.eclipse.rap.rwt.osgi,\ + +#org.argeo.server.catalina.start,\ +#org.eclipse.jetty.server,\ + +# Jetty +org.osgi.service.http.port=7070 +org.eclipse.equinox.http.jetty.log.stderr.threshold=info +org.eclipse.equinox.http.jetty.context.path=/ui # Initial perspective #org.argeo.security.ui.initialPerspective=org.argeo.osgi.ui.explorer.perspective @@ -23,6 +88,9 @@ argeo.server.tomcat.config=conf/default-server-ssl.xml argeo.i18n.availableLocales=en,fr,de,ru,ar eclipse.registry.MultiLanguage=true +osgi.noShutdown=true +eclipse.ignoreApp=true + # Tomcat #argeo.server.port.http=7070 #argeo.server.port.https=7443 diff --git a/pom.xml b/pom.xml index 40d2c4488..cd83665b5 100644 --- a/pom.xml +++ b/pom.xml @@ -107,6 +107,8 @@ limitations under the License. WEB-INF/** icons/** branding/** + img/** + theme/** *.properties properties/*.properties p2.inf @@ -492,6 +494,15 @@ limitations under the License. warn + + argeo-tp-rap + http://repo.argeo.org/data/public/java/org.argeo.tp.rap-2.1.x + + true + daily + warn + + diff --git a/security/dep/org.argeo.security.dep.node.rap/pom.xml b/security/dep/org.argeo.security.dep.node.rap/pom.xml index 7ac1796f5..da0ead501 100644 --- a/security/dep/org.argeo.security.dep.node.rap/pom.xml +++ b/security/dep/org.argeo.security.dep.node.rap/pom.xml @@ -63,6 +63,32 @@ org.argeo.security.dep.node 2.1.2-SNAPSHOT pom + + + org.argeo.commons.security + org.argeo.security.dao.jackrabbit + + + org.argeo.commons.security + org.argeo.security.dao.os + + + org.argeo.commons.server + org.argeo.server.catalina.start + + + org.argeo.commons.server + org.argeo.server.webextender + + + org.argeo.tp + org.apache.jasper + + + org.argeo.tp + org.springframework.osgi.web.extender + + org.argeo.commons.security @@ -70,12 +96,13 @@ 2.1.2-SNAPSHOT - + diff --git a/security/plugins/org.argeo.security.ui.rap/plugin.xml b/security/plugins/org.argeo.security.ui.rap/plugin.xml index af363bec8..416b67aa7 100644 --- a/security/plugins/org.argeo.security.ui.rap/plugin.xml +++ b/security/plugins/org.argeo.security.ui.rap/plugin.xml @@ -6,22 +6,27 @@ + path="/node"> + + + path="/publicWebUi"> + path="/logout"> + path="/nullEP"> @@ -29,56 +34,42 @@ point="org.eclipse.rap.ui.branding"> @@ -86,8 +77,6 @@ diff --git a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/AnonymousEntryPoint.java b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/AnonymousEntryPoint.java index 326966f6e..16d24897c 100644 --- a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/AnonymousEntryPoint.java +++ b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/AnonymousEntryPoint.java @@ -24,8 +24,8 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.argeo.ArgeoException; import org.eclipse.equinox.security.auth.ILoginContext; -import org.eclipse.rwt.RWT; -import org.eclipse.rwt.lifecycle.IEntryPoint; +import org.eclipse.rap.rwt.RWT; +import org.eclipse.rap.rwt.application.IEntryPoint; import org.eclipse.swt.widgets.Display; import org.eclipse.ui.PlatformUI; diff --git a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/LogoutEntryPoint.java b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/LogoutEntryPoint.java index 003a21820..733754901 100644 --- a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/LogoutEntryPoint.java +++ b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/LogoutEntryPoint.java @@ -20,8 +20,8 @@ import javax.security.auth.login.LoginException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.eclipse.equinox.security.auth.ILoginContext; -import org.eclipse.rwt.RWT; -import org.eclipse.rwt.lifecycle.IEntryPoint; +import org.eclipse.rap.rwt.RWT; +import org.eclipse.rap.rwt.application.IEntryPoint; import org.eclipse.ui.PlatformUI; import org.springframework.security.context.SecurityContextHolder; diff --git a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/NullEntryPoint.java b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/NullEntryPoint.java index fda6bf132..811cc2821 100644 --- a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/NullEntryPoint.java +++ b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/NullEntryPoint.java @@ -15,7 +15,7 @@ */ package org.argeo.security.ui.rap; -import org.eclipse.rwt.lifecycle.IEntryPoint; +import org.eclipse.rap.rwt.application.IEntryPoint; import org.eclipse.ui.PlatformUI; /** diff --git a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/RapWindowAdvisor.java b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/RapWindowAdvisor.java index 1f5d56792..480815279 100644 --- a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/RapWindowAdvisor.java +++ b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/RapWindowAdvisor.java @@ -16,10 +16,12 @@ package org.argeo.security.ui.rap; import org.eclipse.swt.SWT; -import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.graphics.Rectangle; import org.eclipse.swt.widgets.Display; +import org.eclipse.swt.widgets.Event; +import org.eclipse.swt.widgets.Listener; +import org.eclipse.swt.widgets.Shell; import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.actions.ActionFactory; import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction; @@ -27,6 +29,7 @@ import org.eclipse.ui.application.ActionBarAdvisor; import org.eclipse.ui.application.IActionBarConfigurer; import org.eclipse.ui.application.IWorkbenchWindowConfigurer; import org.eclipse.ui.application.WorkbenchWindowAdvisor; +import org.eclipse.ui.internal.UIPlugin; /** Eclipse RAP specific window advisor */ public class RapWindowAdvisor extends WorkbenchWindowAdvisor { @@ -52,11 +55,22 @@ public class RapWindowAdvisor extends WorkbenchWindowAdvisor { configurer.setShowStatusLine(false); configurer.setShowPerspectiveBar(true); configurer.setTitle("Argeo Web UI"); //$NON-NLS-1$ - // Full screen, see + // Full screen, see // http://wiki.eclipse.org/RAP/FAQ#How_to_create_a_fullscreen_application configurer.setShellStyle(SWT.NO_TRIM); Rectangle bounds = Display.getCurrent().getBounds(); configurer.setInitialSize(new Point(bounds.width, bounds.height)); + + // Handle window resize in Rap 2.1+ see https://bugs.eclipse.org/bugs/show_bug.cgi?id=417254 + Display.getCurrent().addListener(SWT.Resize, new Listener() { + @Override + public void handleEvent(Event event) { + Rectangle bounds = event.display.getBounds(); + IWorkbenchWindow iww = UIPlugin.getDefault().getWorkbench() + .getActiveWorkbenchWindow(); + iww.getShell().setBounds(bounds); + } + }); } @Override diff --git a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/SecureEntryPoint.java b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/SecureEntryPoint.java index 6da17d733..288ca623b 100644 --- a/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/SecureEntryPoint.java +++ b/security/plugins/org.argeo.security.ui.rap/src/main/java/org/argeo/security/ui/rap/SecureEntryPoint.java @@ -29,8 +29,8 @@ import org.argeo.eclipse.ui.ErrorFeedback; import org.argeo.util.LocaleUtils; import org.eclipse.equinox.security.auth.ILoginContext; import org.eclipse.jface.dialogs.MessageDialog; -import org.eclipse.rwt.RWT; -import org.eclipse.rwt.lifecycle.IEntryPoint; +import org.eclipse.rap.rwt.RWT; +import org.eclipse.rap.rwt.application.IEntryPoint; import org.eclipse.swt.widgets.Display; import org.eclipse.ui.PlatformUI; import org.springframework.security.BadCredentialsException; diff --git a/server/runtime/org.argeo.server.catalina.start/pom.xml b/server/runtime/org.argeo.server.catalina.start/pom.xml index bd7e71f70..30d3eff6a 100644 --- a/server/runtime/org.argeo.server.catalina.start/pom.xml +++ b/server/runtime/org.argeo.server.catalina.start/pom.xml @@ -30,6 +30,7 @@ org.argeo.tp org.eclipse.osgi + provided org.argeo.tp -- 2.30.2