首页 文章

Wildfly在不同的耳朵中看到来自外部 jar 的资源

提问于
浏览
0

是否有可能扫描一些目录以查找所有jar并在运行时将它们作为依赖项添加到耳朵中?

我正在使用wildfly 8.1.0决赛 .

例如,我们有两个分开的耳朵:

  • ear1

  • ear2

还有一个带有一些jsf托管bean,facelets和静态内容(images,css,js)的外部jar:

  • jar1

有没有办法让jar1中的所有资源都可以从ear1和ear2访问而不将jar1作为模块放在ear1或ear2中?

除了在ear1和ear2中添加jar1作为依赖项并重新部署ear1和ear2之外,我不知道任何其他方式 .

1 回答

  • 0

    标准Java EE方法是在war1模块中创建EJB服务 . 在此之后,您应该在ear1,ear2中使用JNDI名称查找并使用war1提供的EJB接口 . 如果需要动态添加JSF资源(jsf页面和静态文件),则应编写javax.faces.application.ResourceHandlerWrapper的自定义实现 . 您的实现应该将资源请求传递给war1模块(使用EJB接口) .

    在这种情况下,ear1,ear2和war1模块之间的依赖性较弱 . 您还可以拥有一组war模块和一些带有JNDI名称的注册表或使用list方法:Wildfly jndi list .

    但我不确定如何转移调用war1托管bean . 我认为你应该在war1模块中使用EJB,并在ear1,ear2中编写一些代理JSF bean .

相关问题