如何在没有RMI、消息传递等的情况下轻松分离"view"层和"control"层?



我有在Spring 3 + JPA 2 + JSF 2/Vaadin上构建的应用程序,运行在servlet容器(Tomcat/Jetty)上。

我的应用程序现在是一个动态的web应用程序。它做三件事:

  • 通过JSF 2或Vaadin提供web用户界面
  • 为外部用户提供RESTful服务
  • 在调度作业中执行一些非常重要的处理

我需要的是在不停止REST服务和计划作业的情况下轻松地重新部署接口中的更改。我知道我可以创建两个(或更多)web应用程序并使用RMI接口或消息队列进行远程方法调用。我在找简单点的。这些应用程序可以运行在单个Tomcat(单个JVM)上。

人们说:"在PHP中我可以改变按钮/表/面板…没有阻止任何事情。"我想让简单的事情变得简单。

你如何解决这类问题?OSGi是唯一的解决方案吗?我认为OSGi对于这样简单的场景来说太复杂了。

OSGi并不复杂!我建议你去处女座看看。它支持从部署纯web应用程序开始。从这里开始,你可以逐渐将web应用分解成多个bundle,最终得到一个"纯"bundle应用,其中的模块可以轻松地随时升级。

最新更新