import java.lang.management.ManagementFactory;
import java.nio.file.Files;
import java.nio.file.Path;
+import java.util.HashMap;
import java.util.Objects;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.argeo.minidesktop.MiniDesktopManager;
+import org.eclipse.jetty.ee8.servlet.DefaultServlet;
+import org.eclipse.jetty.ee8.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee8.servlet.ServletHolder;
import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.ServerConnector;
-import org.eclipse.jetty.servlet.DefaultServlet;
-import org.eclipse.jetty.servlet.ServletContextHandler;
-import org.eclipse.jetty.servlet.ServletHolder;
-import org.eclipse.jetty.util.resource.Resource;
import org.eclipse.jetty.util.thread.QueuedThreadPool;
+import org.eclipse.rap.rwt.application.Application;
+import org.eclipse.rap.rwt.application.Application.OperationMode;
import org.eclipse.rap.rwt.application.ApplicationConfiguration;
import org.eclipse.rap.rwt.application.ApplicationRunner;
import org.eclipse.rap.rwt.application.EntryPoint;
-import org.eclipse.rap.rwt.application.Application.OperationMode;
+import org.eclipse.rap.rwt.application.EntryPointFactory;
import org.eclipse.rap.rwt.engine.RWTServlet;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
// rwt-resources requires a file system
try {
tempDir = Files.createTempDirectory("argeo-rwtRunner");
- context.setBaseResource(Resource.newResource(tempDir.resolve("www").toString()));
+ context.setAttribute(ApplicationConfiguration.RESOURCE_ROOT_LOCATION, tempDir.resolve("www").toString());
+ // FIXME we need a base directory
+// context.setBaseResource(new PathResource(tempDir.resolve("www")));
} catch (IOException e) {
throw new IllegalStateException("Cannot create temporary directory", e);
}
RwtRunner rwtRunner = new RwtRunner();
String entryPoint = "app";
- ApplicationConfiguration applicationConfiguration = (application) -> {
- application.setOperationMode(OperationMode.SWT_COMPATIBILITY);
- application.addEntryPoint("/" + entryPoint, () -> new EntryPoint() {
- @Override
- public int createUI() {
- MiniDesktopManager miniDesktopManager = new MiniDesktopManager(false, false);
- miniDesktopManager.init();
- miniDesktopManager.run();
- return 0;
- }
- }, null);
+ ApplicationConfiguration applicationConfiguration = new ApplicationConfiguration() {
+
+ @Override
+ public void configure(Application application) {
+ application.setOperationMode(OperationMode.SWT_COMPATIBILITY);
+ application.addEntryPoint("/" + entryPoint, new EntryPointFactory() {
+
+ @Override
+ public EntryPoint create() {
+ return new EntryPoint() {
+ @Override
+ public int createUI() {
+ MiniDesktopManager miniDesktopManager = new MiniDesktopManager(false, false);
+ miniDesktopManager.init();
+ miniDesktopManager.run();
+ return 0;
+ }
+ };
+ }
+ }, new HashMap<>());
+ }
};
rwtRunner.setApplicationConfiguration(applicationConfiguration);