【问题标题】:Disable or hide "ejb-timer-service-app" on Glassfish/Payara在 Glassfish/Payara 上禁用或隐藏“ejb-timer-service-app”
【发布时间】:2017-07-27 00:41:34
【问题描述】:
【问题讨论】:
标签:
java
jakarta-ee
timer
glassfish
payara
【解决方案1】:
显然,目前没有办法立即禁用该应用程序。我在 github 上请求 payara 的新功能:https://github.com/payara/Payara/issues/1803
因为应用服务器需要 ejb-timer-service-app.war 才能提供 EJB timerservice,所以不能删除。
但是我已经创建了一个解决方法来至少禁用前端部分:
我在本地做了一些快速测试,了解如何在没有
损坏 EJB 计时器服务。这是我在内部更改的内容
${PAYARA_HOME}/glassfish/lib/install/applications/ejb-timer-service-app.war:
删除文件WEB-INF\sun-web.xml
删除文件WEB-INF\web.xml
删除文件夹WEB-INF\classes\com
Shell 命令:
zip -d ejb-timer-service-app.war "WEB-INF/sun-web.xml"
zip -d ejb-timer-service-app.war "WEB-INF/web.xml"
zip -d ejb-timer-service-app.war "WEB-INF/classes/com/*"
如果域之前已经启动,还必须删除文件夹
glassfish\domains\domain1\applications\ejb-timer-service-app 清理已经部署的前端。
在域重新启动 servlet 后
http://localhost:8080/ejb-timer-service-app/timer 不再是
可用(HTTP 404),但 EJB 计时器工作正常