X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=swt%2Frap%2Forg.argeo.cms.swt.rap.cli%2Fsrc%2Forg%2Fargeo%2Fcms%2Fswt%2Frap%2Fcli%2FCmsRapCli.java;h=5191b7718d391498df9058fe6a26b64b99612bff;hb=4f4eb7a8c86fc86e02b57d30218ecfdd398f71b4;hp=8d0fff4f344101f62d7730459ab5bf753a0925e2;hpb=7b242851c0094d13cbaca5b68261ad92c873a59f;p=lgpl%2Fargeo-commons.git diff --git a/swt/rap/org.argeo.cms.swt.rap.cli/src/org/argeo/cms/swt/rap/cli/CmsRapCli.java b/swt/rap/org.argeo.cms.swt.rap.cli/src/org/argeo/cms/swt/rap/cli/CmsRapCli.java index 8d0fff4f3..5191b7718 100644 --- a/swt/rap/org.argeo.cms.swt.rap.cli/src/org/argeo/cms/swt/rap/cli/CmsRapCli.java +++ b/swt/rap/org.argeo.cms.swt.rap.cli/src/org/argeo/cms/swt/rap/cli/CmsRapCli.java @@ -14,6 +14,8 @@ import org.argeo.api.cli.CommandsCli; import org.argeo.api.cli.DescribedCommand; import org.argeo.api.cms.CmsApp; import org.argeo.api.cms.CmsContext; +import org.argeo.api.cms.CmsState; +import org.argeo.cms.jetty.CmsJettyServer; import org.argeo.cms.runtime.StaticCms; import org.argeo.cms.swt.app.CmsUserApp; import org.argeo.cms.web.CmsWebApp; @@ -60,6 +62,7 @@ public class CmsRapCli extends CommandsCli { Path instancePath = Paths.get(dataPath); System.setProperty("osgi.instance.area", instancePath.toUri().toString()); + System.setProperty("argeo.http.port", "0"); StaticCms staticCms = new StaticCms() { @Override @@ -77,16 +80,17 @@ public class CmsRapCli extends CommandsCli { CmsWebApp cmsWebApp = new CmsWebApp(); Component cmsWebAppC = new Component.Builder<>(cmsWebApp) // .addType(ApplicationConfiguration.class) // + .addType(CmsWebApp.class) // .addDependency(cmsAppC.getType(CmsApp.class), cmsWebApp::setCmsApp, null) // .build(register); - RwtRunner rwtRunner = new RwtRunner(); - Component rwtRunnerC = new Component.Builder<>(rwtRunner) // - .addActivation(rwtRunner::init) // - .addDeactivation(rwtRunner::destroy) // - .addType(RwtRunner.class) // - .addDependency(cmsWebAppC.getType(ApplicationConfiguration.class), - rwtRunner::setApplicationConfiguration, null) // + RapJettyServer rwtRunner = new RapJettyServer(); + Component rwtRunnerC = new Component.Builder<>(rwtRunner) // + .addActivation(rwtRunner::start) // + .addDeactivation(rwtRunner::stop) // + .addType(CmsJettyServer.class) // + .addDependency(register.getSingleton(CmsState.class), rwtRunner::setCmsState, null) // + .addDependency(cmsWebAppC.getType(CmsWebApp.class), rwtRunner::setCmsWebApp, null) // .build(register); } } @@ -102,8 +106,9 @@ public class CmsRapCli extends CommandsCli { try { // open browser in app mode Thread.sleep(2000);// wait for RWT to be ready - Runtime.getRuntime().exec("google-chrome --app=http://localhost:" - + staticCms.getComponentRegister().getObject(RwtRunner.class).getEffectivePort() + "/data"); + String browserCommand = "google-chrome --app=http://localhost:" + + staticCms.getComponentRegister().getObject(CmsJettyServer.class).getHttpPort() + "/data"; + Runtime.getRuntime().exec(browserCommand); } catch (InterruptedException | IOException e) { e.printStackTrace(); }