JavaFX RIA企业应用简要
JavaFX结合Hessian可以访问服务器端Web应用,JavaFX等RIA和Struts等是同一个层面的,都属于表现层,架构应该是这样:JavaFX + Hessian + Servlet + Spring/Seam/Jdon。
Hessian主要是一个Proxy开源项目,可以让远程富客户端RIA可以象调用本地Java代码一样调用,类似RMI,不过是基于Http的RMI。
这里关键是要自己做一个Servlet,也就是Hessian通讯的服务器端,Servlet是一个业务层服务的代理,Flamingo开源项目已经提供Seam/Spring的现成Servlet(http://exadel.com/web/portal/flamingo),而Jdon框架的Servlet需要参考Flamingo做一个,我会拓展到下一个版本发布。
首先看看步骤:
一. 客户端代码分两个,一个JavaFX 相当于MVC模式中的View,与B/S架构中的html类似;一个是Java客户端代码,相当于MVC的Controller,主要用来和服务器通讯调用(通过Hessian)。
下面是Java客户端控制器代码:
|
下面是JavaFX代码:
|
二. 服务器端主要是配置Servlet,在Web.xml中配置如下Servlet:
<servlet>
<servlet-name>Exadel Flamingo Hessian2Spring Remote Servlet</servlet-name>
<servlet-class>com.exadel.flamingo.service.spring.HessianToSpringServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Exadel Flamingo Hessian2Spring Remote Servlet</servlet-name>
<url-pattern>/flamingo/hessian/*</url-pattern>
</servlet-mapping>
以上Servlet是针对Spring框架的,Flamingo 也有Seam框架,当然,Flamingo不会提供Jdon框架的Servlet,不过参考Spring的Servlet实现起来应该很方便,我会加入Jdon框架下一个版本。
这样,使用JavaFX我们就可以方便实现一个富客户端的新型多层C/S架构应用,JavaFX当然不会替代AJAX,但是拥有一些自己的独特特点,对于一些领域应用还是有市场的,加上简洁的类似JavaScrpt的表达方式,无缝和java结合,真的是Swing或Applet的替代物。
[该贴被banq于2009-06-29 10:02修改过]
[该贴被banq于2009-06-29 10:02修改过]