Hybris-从Java类启动服务器

时间:2019-11-21 07:04:48

标签: localhost hybris

为了实现某种自动化,我正在寻找一种通过java代码完全启动hybris服务器的方法。

到目前为止,我尝试过使用这些命令启动

1)

de.hybris.platform.core.Registry.setCurrentTenantByID("master");
de.hybris.platform.core.Registry.activateMasterTenant();

2)

 de.hybris.platform.core.Registry.startup()

两种方法都实现了hybris服务器的启动,但是我需要访问localhost:9002或localhost:9001,但是当我这样启动服务器时它们不可用。这些端口上没有任何东西:/

2 个答案:

答案 0 :(得分:0)

考虑从Java程序中如下执行您的hybris服务器外壳脚本:

Mac OS

Process process = Runtime.getRuntime().exec("./hybrisserver.sh", null, new File("<PATH_TO_PLATFORM>"));
process.waitFor();

我刚刚在Mac OS上对其进行了测试,并成功启动了Hybris,并且可以通过浏览器访问它。祝你好运!

用于WINDOWS (尚未测试)

Process process = Runtime.getRuntime().exec("cmd /c hybrisserver.bat, null, new File("<PATH_TO_PLATFORM>"));
process.waitFor();

答案 1 :(得分:0)

您可以尝试以下想法:

  • 请继续检查日志文件输出INFO: Server startup in 26438 ms,因为它是完整hybris启动后的最后一个日志条目。
  • 请继续尝试使用netstat脚本或Java套接字尝试连接/敲入9002/9001端口。 (成功的连接意味着服务器已启动)
  • Hybris中有一个名为AfterTenantRestartEvent的事件,您可以创建一个脚本作业作为该事件的侦听器,然后在捕获到该事件时触发您的代码。

公共类MyAfterTenantStartupEventListener扩展了AbstractEventListener {

private final List<AfterTenantRestartEvent> eventsRecorded = new ArrayList<AfterTenantRestartEvent>();

@Override
protected void onEvent(final AfterTenantRestartEvent event)
{
    doSomething();
}

脚本Groovy,并使用即插即用插入。

INSERT_UPDATE Script;code[unique=true]  ;scriptType(code)   ;content
                    ;EventListenerScript    ;GROOVY             ;<EventListenerCode> 

然后使用此ImpEx创建作业。

INSERT_UPDATE ScriptingJob  ;code[unique=true]      ;scriptURI
                            ;helloWorldScriptJob    ;model://helloWorldScript 

2.3。 Cron Job 创建CronJobModel的实例,并将脚本作业附加到

INSERT_UPDATE CronJob   ;code[unique=true]          ;job(code)              ;sessionLanguage(isocode)   ;sessionUser(uid)
                        ;helloWorldScriptCronJob    ;helloWorldScriptJob    ;en                         ;admin 

更多信息:

https://help.sap.com/viewer/d0224eca81e249cb821f2cdf45a82ace/6.6.0.0/en-US/8c53e973866910149f7f95676060d3de.html?q=script%20listener

https://help.sap.com/viewer/d0224eca81e249cb821f2cdf45a82ace/6.6.0.0/en-US/07e3db4b90b24eb39522cb26ceb34544.html?q=script%20listener