Java+XML+MVC框架StrutsCX简介[转]
生活随笔
收集整理的這篇文章主要介紹了
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以上)就可以顯示結果了。
以下兩個圖片可以讓我們對比一下Struts和StrutsCX的結構:
Struts
StrutsCX
至于其安裝和配置,其網站(http://it.cappuccinonet.com/strutscx/install.php?target=install)有其全面的說明。
簡單說明如下:
拷貝所需的jar包(該項目依賴很多很受歡迎的開源項目的結晶,例如avolon,Castor XML,dom4j,FOP,Jakarta Commons ,Jakarta ORO ,JDOM ,Log4j ,Struts ,Xerces)
配置web.xml聲明使用StrutsCXServlet:
配置struts-config.xml使用StrutsCXPlugIn:
編寫Action,和Struts不同,我們需要在Action里面設置要綁定的XSL文件的路徑:
以上只是一個非常簡單的介紹,由于筆者正在做的一個項目是一個重寫的項目,要求使用最新的技術,未來有可能支持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的大旗下這個框架應該是會很廣泛的應用的。
下載地址:
http://sourceforge.net/project/showfiles.php?group_id=67148&package_id=65546&release_id=201686
目前它的最新版本是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以上)就可以顯示結果了。
以下兩個圖片可以讓我們對比一下Struts和StrutsCX的結構:
Struts
StrutsCX
至于其安裝和配置,其網站(http://it.cappuccinonet.com/strutscx/install.php?target=install)有其全面的說明。
簡單說明如下:
拷貝所需的jar包(該項目依賴很多很受歡迎的開源項目的結晶,例如avolon,Castor XML,dom4j,FOP,Jakarta Commons ,Jakarta ORO ,JDOM ,Log4j ,Struts ,Xerces)
配置web.xml聲明使用StrutsCXServlet:
| <!-- StrutsCXServlet --> <servlet><servlet-name>StrutsCXServlet</servlet-name><servlet-class>com.cappuccinonet.strutscx.xslt.StrutsCXServlet</servlet-class><init-param><param-name>debug</param-name><param-value>false</param-value></init-param><load-on-startup>2</load-on-startup> </servlet> <servlet-mapping><servlet-name>StrutsCXServlet</servlet-name><url-pattern>/StrutsCXServlet</url-pattern> </servlet-mapping> |
配置struts-config.xml使用StrutsCXPlugIn:
| <plug-in className="com.cappuccinonet.strutscx.util.StrutsCXPlugIn"><set-property property="config" value="/WEB-INF/strutscx-config.xml" /> </plug-in> |
編寫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的大旗下這個框架應該是會很廣泛的應用的。
下載地址:
http://sourceforge.net/project/showfiles.php?group_id=67148&package_id=65546&release_id=201686
轉載于:https://www.cnblogs.com/laoxingxuzhou/archive/2004/12/09/5172979.html
總結
以上是生活随笔為你收集整理的Java+XML+MVC框架StrutsCX简介[转]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【正点原子STM32连载】第十章 STM
- 下一篇: .Net开发环境配置[OS/IIS/VS