我正在尝试使用Java为WebApplications创建一个plugin / componentFramework。我正在使用Tomcat9,JSF(2.1.13)和Java 1.8。
我有一个.war文件。当我在启动时将此.war文件部署到Tomcat时,调度程序便会启动,并且此调度程序将每隔15秒调用一个观察给定(HotDeployment)文件夹的方法。如果将jar或zip文件部署到该文件夹,则将文件解压缩,并通过新的ClassLoader加载类。
现在我有一个带有一个HelloWorld.class的简单插件(SimplePlugin.jar),该类具有Annotation @ManagedBean和@RequestScoped。我如何在运行时动态/以编程方式向JSF Context添加或注册此ManagedBean(当我拥有该类的Object时)?因此,当我调用.xhtml文件时,该类将被识别。
我使用FacesContext进行了尝试,并以以下答案定位自己: How to register a JSF managed bean programmatically? 但我仍然不知道该怎么做。我该如何实现?