我必须在现有的Web应用程序中实现类似插件的机制。关键是应用程序主要生成表单。但是某些表单有一些特殊的行为(必须明确实现自定义表单),并且我们不希望每次发布新的自定义表单时都打包新版本。
现在我有一个jar文件形式的插件,其中包含我想要动态加载到我的Web应用程序中的.xhtml文件(包含JSF组件)。
效果应该像加载的OSGi包片段一样,因此我的插件的文件结构扩展了我应用服务器加载的原始war文件之一。
有人有经验吗?
谢谢和欢呼,
安德烈亚斯
答案 0 :(得分:1)
回答我自己的问题:我不知道这是否是正确的方法,但它是我能想到的唯一一个,而且很简单:我读取了插件所在的目录。然后,我将可用的jar文件添加到类加载器中,读取jar文件并将其内容(不带.class或.java文件)提取到应用程序服务器的临时文件夹中。我不知道这是否适用于JSP,因为它们必须被编译,但它适用于JSF。