是否可以从 hawt.io 插件 (AngularJS) 运行 OS 脚本

Is it possible to run OS script from hawt.io plugin (AngularJS)

我有 Tomcat webcontainer (8.0.x) 和 hawt.io (1.5.10) 运行 在它之上。

我想编写 Hawt.io 插件来重启 JVM 服务器,即托管此 jvm 的服务器。

假设我有 bash 脚本,我可以调用它来优雅地停止 JVM 并重新启动它。 是否可以从 hawt.io 插件调用这样的外部 OS 脚本? 我在哪里可以找到任何代码示例?

ps。我知道这会断开请求用户与 hawt.io 网络应用程序的连接。脚本和 jvm 将 运行 来自相同的 uid。

我认为这是不可能的,因为 Hawtio 插件只不过是在浏览器上运行的前端 AngularJS 脚本。 运行 禁止来自浏览器脚本的 OS 脚本,否则它可能会引发所有可能的安全攻击。

一个可能的解决方法是创建一个自定义的 JMX MBean,部署在您的 Tomcat 服务器上,然后在内部运行一个系统命令,如 Runtime.getRuntime().exec("..."),并有一个 Hawtio 插件从浏览器调用 MBean .