服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

java+xml+mvc 框架strutscx简介

strutscx是一个以struts为基础的xml解决方案的框架,和struts不同,它使用xml(确切的说是xslt)作为表现层,而不是像struts那样是以jsp作为表现层。
目前它的最新版本是0.9.5,这个也就意味着它还没有完全稳定和成熟,但是目前它所具备的一些功能已经足以满足我们大部分的需要了。

根据其官方网站的说明,它具备如下的特性:


  • 可以运行于任何servlet引擎或者j2ee应用服务器的轻量框架。
  • 实现简单快速。
  • 支持国际化。
  • 使用纯粹的xml和xslt解决方案替换struts的jsp和message资源特性。
  • 输出100%符合xml, xhtml, xsl-fo, wml或者其他的格式标准。
  • 错误验证简单。
  • 内部使用jdom。
  • 包括fop,支持pdf, svg和ascii输出。
  • 包括struts validator。
  • 支持多种转换。
  • 支持客户端xslt。
  • 包含范例应用(单个的war包)。



从其结构而言,它和struts的不同之处在于action执行完毕以后的回应,struts在action执行完毕之后转向的是jsp,而strutscx转向到的是它的核心类:strutscxservlet,该类会根据配置文件查找得到xsl文件,并且自动生成带有xsl绑定的xml文件(内部是结合strutscxdocumentbuilder和strutscxtransformer),对于一些较新的支持xml的浏览器(包括ie5以上,mozilla 1.4以上)就可以显示结果了。
简单说明如下:
拷贝所需的jar包(该项目依赖很多很受欢迎的开源项目的结晶,例如avolon,castor xml,dom4j,fop,jakarta commons ,jakarta oro ,jdom ,log4j ,struts ,xerces)
配置web.xml声明使用strutscxservlet:


  strutscxservlet
  com.cappuccinonet.
  strutscx.xslt.strutscxservlet

  
    debug
    false
  

  2


  strutscxservlet
  /strutscxservlet

配置struts-config.xml使用strutscxplugin:  value="/web-inf/strutscx-config.xml" />

编写action,和struts不同,我们需要在action里面设置要绑定的xsl文件的路径:
// pointer to the strutscx-definitions
string xslfile = "simple.xsl";
// set it to the httpservletrequest
request.setattribute(
  strutscxconstants.xsl_key, xslfile);
 
 以上只是一个非常简单的介绍,由于笔者正在做的一个项目是一个重写的项目,要求使用最新的技术,未来有可能支持wml,因此采取的解决方案就是使用xml代替jsp,而目前可以找到的就是这个框架了。
 根据目前我们使用的经验,主要问题可能还是国际化支持上的问题,因为其给出的国际化支持的方案和我们现在常用的基于java的properties或者resources方案不同,需要采用它定义的xml格式,因此使用不是很方便。
 至于开发方面,这里需要介绍的就是我们的开发经验,其实也没有什么,由于刚刚开始的时候我们对其生成的xml文件的内容不是很熟悉,因此我们采用的开发步骤如下:
 配置strutscx-config.xml文件,编写action和formbean,以调试模式观看其生成的xml文件的内容,依据xml内容编写xsl,最后测试xsl文件是否正确。
 需要注意的是我们要在strutscx-config.xml中将debugxml设置为on,然后我们在调用action的时候在url中增加debugxml=true让其向浏览器输出xml(例如http://localhost:8080/sample/hello.do?debugxml=true)

由于这个框架还非常的新,目前介绍这个框架的内容还不是很多,使用的人也可能不是很多,但是笔者相信在xml的大旗下这个框架应该是会很广泛的应用的。

扫描关注微信公众号