我有一个要求,我需要共享一些网络资源(jsp
, html
, js
, images
, css
等)跨越不同Spring
based Struts 2
应用程序。似乎OSGi
可以用来实现这个吗?
- 有人可以指点一下如何实现这一目标吗
OSGi
?
- 其次我想知道的是
OSGi
是否足够成熟以用于生产应用程序?
提前致谢!
EDIT:我经历了this https://stackoverflow.com/questions/126073/modular-web-apps发布,似乎人们能够跨 Web 应用程序共享 Web 包。唯一的区别是他们使用 Spring MVC 来实现。我想知道Struts2应用程序是否也可以实现这一点?
EDIT 2:我基本上对以下内容不太清楚:
- “shareable-bundle”(包含要共享的 Web 资源)是否会打包为 .war?如果是,那么最终的 Web 上下文将从哪里形成,因为该捆绑包将再次与主“Web”应用程序共享?我期望最终的 Web 上下文是通过“可共享包”和“主”Web 应用程序的合并而形成的。它会自动发生吗?有任何想法吗?
虽然 OSGI 可能是一个解决方案,但它可能有点矫枉过正(并且,正如 Bozho 指出的那样,您需要一个支持 OSGI 的容器)。也许看看Maven中如何跨项目共享资源 http://www.sonatype.com/people/2008/04/how-to-share-resources-across-projects-in-maven/对于其他选项:
- 剪切并粘贴它们。
- Use Assembly http://maven.apache.org/plugins/maven-assembly-plugin and 依赖性 http://maven.apache.org/plugins/maven-dependency-plugin plugins
- Use the maven-远程-资源-插件 http://maven.apache.org/plugins/maven-remote-resources-plugin
在这篇博客中,我将展示如何做
第二种选择,因为在我看来,它
目前是最稳定的
灵活的。未来我会尝试
maven-remote-resources-plugin 和
写一个教程。
编辑:回答OP的评论。Yes,其想法是创建可共享 Web 资源的程序集,并使用 maven-dependency-plugin 在“资源消费者”项目中拉取和解压该程序集。所有这些都在上面提到的博客文章中进行了解释和详细说明。如果其中有任何不清楚的地方,请告诉我。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)