版本有點(diǎn)舊了,以后再修改。
來(lái)自: 金蝶中間件? 發(fā)布時(shí)間: 2003-04-07
?
Struts開(kāi)放源碼框架的創(chuàng)建是為了使開(kāi)發(fā)者在構(gòu)建基于Java Servlet和JavaServer Pages(JSP)技術(shù)的Web應(yīng)用時(shí)更加容易。Struts框架為開(kāi)放者提供了一個(gè)統(tǒng)一的標(biāo)準(zhǔn)框架,通過(guò)使用Struts作為基礎(chǔ),開(kāi)發(fā)者能夠更專注于應(yīng)用程序的商業(yè)邏輯。Struts框架本身是使用Java Servlet和JavaServer Pages技術(shù)的一種Model-View-Controller(MVC)實(shí)現(xiàn),因此可以很好的運(yùn)行在Apusic應(yīng)用服務(wù)器上。本文就將介紹如何在Apusic上安裝Struts。Struts是jakarta項(xiàng)目的一個(gè)子項(xiàng)目,發(fā)布版和源代碼可用從http://jakarta.apache.org/struts/index.html獲得。
安裝前準(zhǔn)備
Struts發(fā)布版需要其他三個(gè)軟件包首先被安裝。你的系統(tǒng)可能已經(jīng)安裝了這些軟件包。如果你要編譯Struts的源代碼,那么就需要獲得并安裝另外一些軟件包。完整的列表如下:
· Java Development Kit--必須首先下載并安裝Java Development Kit。Struts需要JDK1.2或更高版本,可以從http://java.sun.com/j2se下載。如果已經(jīng)安裝了Apusic V4.0.3(包含JVM)的版本,那么就包含了JDK1.4。
·Servlet容器--必須下載并安裝Servlet容器。Struts要求這個(gè)Servlet容器實(shí)現(xiàn)Servlet規(guī)范2.2或更高版本和JavaServer Pages (JSP)規(guī)范1.1或更高版本。Apusic V4.0.3完全實(shí)現(xiàn)了Servlet2.3和JavaServer Pages (JSP)1.2,非常適合。Apusic可以從http://www.apusic.com/product/download.jsp獲得。
·Ant--如果你希望編譯Struts的源代碼,那么就必須下載并安裝Ant1.3或更高版本??梢詮?a 文件,用來(lái)實(shí)現(xiàn)Ant的命令。把ANT_HOME/bin目錄加入到系統(tǒng)的環(huán)境變量PATH中使ant和ant.bat腳本可用。
·Servlet API 類--為了編譯Struts自身,或者應(yīng)用程序使用了Struts,那么你需要包含Servlet API和JSP API類文件的jar。如果已經(jīng)安裝了Apusic,那么APUSIC_HOME/lib目錄下的apusic.jar就為你所需要的文件。
·JDBC 2.0可選包--Struts支持JDBC可選的實(shí)現(xiàn)javax.sql.DataSource。安裝了Apusic就已經(jīng)包含了這個(gè)包。
·XML解析器--Struts需要兼容Java API for XML Parsing (JAXP)的XML解析器。Apusic 內(nèi)置的XML解析器支持SAX2 和DOM Level 2 應(yīng)用編程接口,支持命名空間, 提供對(duì)XML高效的處理。
通過(guò)上面的列表,我們知道了要安裝Struts所需要的先決條件。如果只是想在Apusic上使用Struts,那么步驟就非常簡(jiǎn)單:下載并安裝Apusic即可!
安裝Struts
首先下載Struts的二進(jìn)制發(fā)布版,然后確定你已經(jīng)安裝好了Apusic服務(wù)器。
把下載的Struts發(fā)布版解壓到一個(gè)確定的目錄,包含如下的內(nèi)容:
·lib/struts.jar--這個(gè)jar文件包含了所有的Struts Java類。這個(gè)文件應(yīng)該拷貝到web應(yīng)用的WEB-INF/lib目錄下。如果你的多個(gè)web應(yīng)用都使用了Struts,就可以考慮把struts.jar放到一個(gè)共享的地方。例如同一個(gè)企業(yè)應(yīng)用ear中包含的多個(gè)web應(yīng)用都使用了Struts,可以把struts.jar解開(kāi)以目錄的形式直接ear應(yīng)用的根目錄下。
·lib/struts*.tld--標(biāo)記庫(kù)描述文件,用來(lái)描述Struts中使用的自定義標(biāo)記。這些文件應(yīng)該被拷貝到web應(yīng)用的WEB-INF目錄下。
·webapps/struts-blank.war--這是一個(gè)簡(jiǎn)單的war的文件。可以作為構(gòu)建你自己的基于Struts的Web應(yīng)用的一個(gè)起點(diǎn)。
·webapps/struts-documentation.war--這是一個(gè)war文件,包含了所有的Struts文檔。可以把這個(gè)應(yīng)用部署到Apusic上。
·webapps/struts-example.war--這是一個(gè)范例web應(yīng)用,使用了很多Struts特性??梢园堰@個(gè)應(yīng)用部署到Apusic上運(yùn)行。
·webapps/struts-exercise-taglib.war--這個(gè)應(yīng)用包含了測(cè)試頁(yè)面,用來(lái)測(cè)試Struts中定義的標(biāo)記庫(kù)。
·webapps/struts-template.war--這個(gè)web應(yīng)用介紹和示范了Struts模版標(biāo)記。
·webapps/struts-upload.war--這個(gè)web應(yīng)用展示了一個(gè)簡(jiǎn)單的文件上傳的例子。
如果你在Web應(yīng)用中使用Struts,需要以下幾個(gè)步驟:
1. 拷貝lib/struts.jar文件到web應(yīng)用的WEB-INF/lib目錄下。
2. 拷貝所有的lib/struts*.tld文件到web應(yīng)用的WEB-INF目錄下。
3. 修改web應(yīng)用的WEB-INF/web.xml文件。增加<servlet>標(biāo)簽來(lái)定義"控制servlet"和<servlet-mapping>標(biāo)簽來(lái)建立這個(gè)Servlet的請(qǐng)求URL映射??梢詤⒖挤独龖?yīng)用中WEB-INF/web.xml的語(yǔ)法。
4. 修改web應(yīng)用的WEB-INF/web.xml文件,增加標(biāo)記庫(kù)描述:
<taglib>
<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-template.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-template.tld</taglib-location>
</taglib>
5. 創(chuàng)建WEB-INF/struts-config.xml文件,定義動(dòng)作映射和其他應(yīng)用相關(guān)的特性??梢詤⒖挤独龖?yīng)用中WEB-INF/ struts-config.xml的語(yǔ)法。
6. 在每一個(gè)需要使用Struts標(biāo)記庫(kù)的JSP頁(yè)面的開(kāi)始處增加標(biāo)記庫(kù)聲明,宣告這個(gè)頁(yè)面將使用到的Struts標(biāo)記庫(kù)。例如:
<@ taglib uri="/WEB-INF/struts-bean.tld" prefix="struts-bean" %>
<@ taglib uri="/WEB-INF/struts-html.tld" prefix="struts-html" %>
<@ taglib uri="/WEB-INF/struts-logic.tld" prefix="struts-logic" %>
<@ taglib uri="/WEB-INF/struts-template.tld" prefix="struts-template" %>
7. 當(dāng)編譯應(yīng)用的Java類時(shí),確定struts.jar在CLASSPATH中。
運(yùn)行范例程序
webapps/struts-example.war為Struts的范例程序。首先運(yùn)行部署工具,新建一個(gè)空的ear目錄,然后把struts-example.war作為一個(gè)web模塊添加到這個(gè)ear中。
·XSLT處理器--如果你希望編譯Struts源代碼,那么就需要下載并安裝XSLT處理器。APUSIC_HOME/lib/ apxml.jar中已經(jīng)包含了XSLT處理器。
?