Hawtio简单插件示例 - 选项卡不可见

时间:2015-01-13 14:35:18

标签: plugins hawtio

我正在尝试开发自定义hawtio插件。我基于hawtio-default 1.4.37在Tomcat中部署了自定义WAR。它工作正常

我在https://github.com/hawtio/hawtio/tree/master/hawtio-plugin-examples/simple-plugin指令之后构建了simple-plugin.war(没有进行任何更改)并将其部署在同一个Tomcat中。

没有错误,所有日志都是干净的,我可以在JMX bean中看到simple-plugin作为hawtio的插件,但是没有新标签可见(尽管我猜是从.js代码"简单"选项卡应该出现)

有什么想法吗?这与观点有关吗?

编辑:

刚检查浏览器控制台并看到404错误

GET http://localhost:8080/myhawtio/plugin/ 404 (Not Found)

我的自定义WAR似乎未正确重新配置

编辑2:

已下载并部署了clean hawtio-default-1.4.37.war - simple-plugin有效,"简单"标签是可见的

已下载并部署了clean sample-1.4.37.war - simple-plugin不起作用,tab不可见并且出现404错误

GET http://localhost:8080/sample-1.4.37/plugin 404 (Not Found)

2 个答案:

答案 0 :(得分:2)

您必须确保使用与web.xml文件中配置的名称相同的名称安装简单插件。

在web.xml中,从以下构建示例时,将设置上下文路径: https://github.com/hawtio/hawtio/blob/master/hawtio-plugin-examples/simple-plugin/src/main/resources/WEB-INF/web.xml#L14

默认情况下,生成为

<context-param>
    <description>Plugin's path on the server</description>
    <param-name>plugin-context</param-name>
    <param-value>/simple-plugin</param-value>
</context-param>

这意味着您应该在Apache Tomcat中将战争安装为simple-plugin,例如将.war文件重命名为simple-plugin.war

答案 1 :(得分:1)

如果您获得404 for / hawtio / plugin,那么您在战争中错过了PluginServlet,或者至少它没有运行 - &gt; https://github.com/hawtio/hawtio/blob/master/hawtio-system/src/main/java/io/hawt/web/PluginServlet.java

这个servlet是前端发现任何额外插件加载的方式。我建议将您的web.xml与hawtio-web中的web.xml进行比较,并确保此类正在加载。