XML開發環境的建立詳解

巴扎黑
發布: 2017-03-19 14:48:01
原創
1404 人瀏覽過

[導讀] 學習 xml 的最佳途經是從簡單的開發入手,大膽實踐,循序漸進。 XML 的妙處只有在開發過程中才能深入體會,離開了開發是學不好 XML 的。因此學習 XML 首先應該建立一個 XML 的開發環境。我跟大家介紹一下

學習 xml 的最佳途經是從簡單的開發入手,大膽實踐,循序漸進。 XML 的妙處只有在開發過程中才能深入體會,離開了開發是學不好 XML 的。因此學習 XML 首先應該建立一個 XML 的開發環境。我要跟大家介紹怎麼建立一個基於 java 的 XML 開發環境。因為我現在沒辦法用到 linux,所以所有的範例都是在 Windows 上做的。但這裡介紹的所有的軟體在 Linux 和 Windows 上都是可以用的,用法也都大同小異。而且除了 Sun 的 JRE 以外都是 open source 軟體,任何人都可以拿來做任何用途,甚至是商業目的的重新發行。 JRE 也是可以免費下載和使用的,但沒有原始碼。如果您有在 Linux 上使用這些軟體的經驗,希望能貢獻給大家。

建立一個 XML 的開發環境需要經過以下步驟:
1。安裝 Java runtime environment
2。安裝一個 Java 編譯器。
3。安裝一個 jsp Container。
4。安裝一個支援 XSLT 的 taglib。
5。安裝一個 XML Parser。
6。安裝一個支援 XSLT 的瀏覽器。
7。安裝一個 XML 檔案的編輯器 (可選)。


步驟1。安裝Java runtime environment
建議使用Sun 的JRE 1.3,可以從這裡下載:
http://java.sun.com/j2se/1.3/jre/download-windows.html
注意:不是JDK 1.3,我們需要的只是JRE 1.3

下載完JRE 1.3 後執行安裝程序,假設安裝在C:\JRE1.3 下。然後需要設定三個環境變數。
JAVA_HOME=C:\JRE1.3
CLASSPATH=.;C:\JRE1.3\lib\rt.jar
PATH=%PATH%;C:\JRE1.3\bin

如果是Windows 95/98/me,將環境變數的設定放在Autoexec.bat 中,然後重新啟動機器,Windows NT/2000 在「我的電腦/屬性」中設定就可以了。


步驟2:安裝一個 Java 編譯器。
推薦使用 IBM 的 jikes,一個高效率的 open source 的 Java 編譯器。 jikes 的首頁在
http://oss.software.ibm.com/developerworks/opensource/jikes/
最新的版本是1.1.3,可以從這裡下載:
http://oss. software.ibm.com/pub/jikes/jikes-1_13-mingw-win32.zip
下載後解壓縮,得到一個jikes.exe,放在任何PATH 環境變數中的目錄下,例如C:\JRE1. 3\bin

編輯一個簡單的hello world 程式試試看:
// hello.java
public class hello {
public static void main(String [] args) {
System.out.PRint("hello, world!\n");
}
}

然後編譯
jikes hello.java

如果產生了hello .class 就可以用了。


步驟3。安裝一個 JSP Container。
推薦使用 Jakarta 的 Tomcat 3.2.1。 Tomcat 3.2.1 可以從這裡下載:
http://jakarta.apache.org/builds/jakarta-tomcat/release/v3.2.1/bin/
你需要下載jakarta-tomcat-3.2.1. zip 這個檔案
如果你是在Windows NT/2000 下安裝,還有win32/i386 目錄下的jk_nt_service.zip 。

下載後解壓縮,假設放在C:\tomcat 下
然後需要設定一個環境變數
TOMCAT=C:\tomcat

為了讓Tomcat 可以使用jikes,你需要做一點點的hack,方法如下:
將tomcat 的lib 目錄下的parser.jar,jaxp.jar,webserver.jar 加入環境變數CLASSPATH,使其生效後執行以下步驟:
cd \ tomcat\src\org\apache\tomcat\context
編輯檔案WebXmlReader.java,將
// sw.addInitParam("jspCompilerPlugin", "org.apache.jasper.compiler.JikesJavaCompiler");
前的註解去掉

然後編譯
jikes WebXmlReader.java

建立一個臨時目錄,使用jar 工具(可以從JDK 中獲得) 解壓縮Tomcat 的lib 目錄下的webserver. jar
mkdir t
cd t
jar xvf ..\webserver.jar
將org\apache\tomcat\context 下的WebXmlReader*.class 替換為剛才編譯產生的WebXmlReader*.class
然後重新包裝:
jar cf webserver.jar .
使用新的webserver.jar 取代Tomcat 的webserver.jar

編輯Tomcat 的conf 目錄中的web.xml,將

外的註解去掉。

編輯 Tomcat 的 bin 目錄中的 tomcat.bat,將所有的 tools.jar 替換為 rt.jar
啟動 tomcat,運行 bin 目錄中的 startup.bat。
使用瀏覽器做測試,訪問
http://localhost:8080
如果 JSP 和 Servlet 的範例都能編譯和執行,Tomcat 就可以用了。
停止Tomcat 用shutdown.bat

在Windows NT/2000 下,可以把tomcat 安裝為一個service,方法如下:
將Tomcat 的conf 目錄下的wrapper.properties 拷出來並編輯。將其中的兩個變數
wrapper.tomcat_home
wrapper.java_home
分別設定為 TOMCAT 和 JRE 的安裝路徑,將所有的 tools.jar 替換為 rt.jar。
然後執行
jk_nt_service -I Tomcat wrapper.properties
其中 Tomcat 是我們安裝的 service 的名稱。
進入控制台啟動 Tomcat service。 Tomcat service安裝後設定為手動啟動,你可以修改 Tomcat service 的屬性使其成為自動啟動。

刪除 Tomcat service 用:
jk_nt_service -R Tomcat


步驟4。安裝一個支援 XSLT 的 taglib。
建議使用Jakarta Taglibs 中做XSLT 的XSL Taglib
其頁面在http://jakarta.apache.org/taglibs/doc/xsl-doc/intro.html
從該頁面下載XSL Taglib的snapshot。你也可以下載全部的 Jakarta Taglibs,Jakarta Taglibs 的範圍很廣,但這裡我們要用到的只是其中的 XSL Taglib。

下載完後解壓縮,將其中的 xsl-examples.war 和 xsl-doc.war 這兩個檔案拷到 Tomcat 的 webapps 目錄下,然後重新啟動 Tomcat。使用瀏覽器存取
http://localhost:8080/xsl-examples/
執行頁面中的 Apply.jsp,如果沒有出錯,顯示了一個有很多表格的頁面,XSL Taglib 就可以用了。
XSL Taglib 的文檔也裝好了,在
http://localhost:8080/xsl-doc/

你可以從這個例子出發,一步一步地開始寫你自己的XML處理程序。例如你可以在Tomcat 的server.xml 中加入一個新的Context
docBase="path-to-your-work-directory"
crossContext="false "
debug="0"
reloadable="true" >

其中的path-to-your-work-directory 是你的開發目錄。將 Tomcat 的 webapps/xsl-examples 目錄下的內容原封不動的拷到你的開發目錄,以這個程式為參考開始寫你自己的 XML 處理程序。

關於如何使用JSP 做XML 開發可以參考Sun 的whitepaper ,在:http://java.sun.com/products/jsp/pdf/JSPXML.pdf
講的基本上就是我上面告訴你的這種方法。


步驟5。安裝一個 XML Parser。
做完了步驟3 和 步驟4,你已經有了兩個可用的 XML Parser 了,那就是 Tomcat 本身使用的 Sun 的 JAXP 和 XSL Taglib 使用的 xml.apache.org 的 Xerces。 JAXP 包含兩個檔案 parser.jar 和 jaxp.jar,Xerces 只有一個檔案 xerces.jar,這幾個檔案可以從 Tomcat 的目錄下找到。
建議使用 Xerecs 這個 XML Parser,因為它目前已經可以支援 XML Schema,而且它是 open source 軟體。但這完全是出於個人喜好,Sun 的 XML Parser 也是非常出色的。決定使用哪個 XML Parser 後將其檔案加入 CLASSPATH 中。但不要同時使用兩個 XML Parser。 CLASSPATH 生效後你就可以在你的 Java 程式中使用 JDOM 和 SAX 的 API 處理 XML 檔案了。

關於 JDOM 和 SAX 適用的場合和用法的例子可以從這裡找到:http://developerlife.com


步驟6。安裝一個支援 XSLT 的瀏覽器。
這一步並不是必須的,因為我們現在已經可以在 Server 端使用 XSL Taglib 將 XML 檔案轉換為 HTML 格式後發給 Browser,所以實際上你可以使用任何你喜歡的瀏覽器。但是安裝一個支援 XSLT 的瀏覽器可以方便我們的學習。雖然現在我們需要在 Server 端做 XSLT,但將來支援 XSLT 的瀏覽器流行了之後我們甚至連這一步驟都可以省掉,直接把 XML 和 XSL 檔案發給瀏覽器就行了。這樣就可以大幅減輕 Server 端的負擔,因為做 XSLT 可不是一件輕鬆的工作。

推薦使用 Mozilla 0.8。說到這裡,你可能又要問了,為什麼不使用 IE 4/5 呢? IE 4/5 不是也可以做 XSLT 嗎?除了個人喜好以外,我可以舉出 3 個使用 Mozilla 的理由:
首先 Mozilla 支援的 XSLT 版本比 IE 4/5 要新,IE 4/5 支援的 XSLT 不是正式版本,而是一個草稿。即:http://www.w3.org/TR/WD-xsl ,而 Mozilla 支援的 XSLT 是 XSLT 的正式版本。即:http://www.w3.org/1999/XSL/Transform 。
其次 Mozilla 中的 XML 應用不僅包含 XSLT,還包含 RDF,XUL,SVG,MathML 等等,所以 Mozilla 對 XML 的支援從廣度和深度上都要超過 IE 4/5。
第三 XML FAQ 的作者對 Mozilla 推崇有加,認為 Mozilla 對 XML 的支援在穩健性上比 IE 4/5 好得多。

OK,說了這麼多,現在轉到正題上來,如何使 Mozilla 0.8 支援 XSLT?
首先,從這裡下載Mozilla 0.8:http://www.mozilla.org/releases/
最新的是0.8.1 版,但這個版本安裝了支援XSLT 的模組後無法運行,所以目前還只能用老一點但是比較慢的0.8 版。
如果你不想再要其它諸如 SVG/MathML 的功能的話,最方便的方法是使用做好的 .exe 檔案安裝。
安裝完畢後,啟動 Mozilla,造訪這個頁面:http://www.mozilla.org/projects/xslt/
頁面裡有一個 Install 按鈕,點擊這個按鈕就可以安裝實作 XSLT 功能的 TransforMiiX 模組。
重新啟動 Mozilla,造訪上面提到的那個頁面。點擊上面 simple example 的連結。如果看到的結果與點擊 look like 連結看到的結果相同,那麼你的 Mozilla 就已經能夠支援 XSLT 了。

關於如何設定 Mozilla 0.8 支援 Java Plug-in 請參考我發在 XML 版的另一篇文章:基於 Mozilla 的 XML 用戶端解決方案,這裡就不多說了。


步驟7。安裝一個 XML 檔案的編輯器。
這一步就更不是必須的了。你聽過現在還有人用 vi 做 HTML 頁面嗎?我就見過這樣的人,那就是於明儉老師。在於老師的個人主頁上有樣一句醒目的話:Just vim it ! 實際上你可以使用任何你喜歡的編輯器來編輯XML 文件,但是為了方便那些習慣使用WYSIWYG 編輯器的朋友,我還是推薦幾個比較好的XML 編輯器:
1。 XML Spy:一個功能很全的 XML 編輯器,有試用版可以下載。
http://www.xmlspy.com/
2。 EditML Pro:另一個功能比較全的 XML 編輯器。
http://www.editml.com
3。 PSGML for Emacs:Emacs,我就不用說什麼了吧?
http://www.lysator.liu.se/projects/about_psgml.html



這裡只是為了錦上添花再介紹一些其它的知識,使用這些知識我們可以建造一個更為強大的開發環境。

步驟8。安裝一個比較好的 JSP Framework
推薦使用 Struts。 Struts 是 Jakarta 專案的子項目,目的是開發一個基於 MVC 設計模式的 JSP Framework。在 Struts 的框架內做開發可以有效分離 Web 應用的表示層和實作層,提高程式碼的可重複使用性。基於 MVC 設計模式的開發也就是所謂的 Model 2 開發模式。目前該專案已接近完成,最新的版本是 1.0-beta-1。

關於什麼是 MVC 設計模式可以參考機械工業出版社的《設計模式》這本書。關於Struts 的用法,可以參考我翻譯的《Struts 使用者指南》,在文章統合裡:http://www.linuxforum.net/doc/strutsuserguide.html

從這裡下載Jakarta Struts:
http://jakarta.apache.org/builds/jakarta-struts/release/v1.0-b1/
你需要下載jakarta-struts-1.0-b1.zip 這個檔案。
將其解壓縮,然後將其中的 struts-example.war,struts-documentation.war 這兩個檔案拷到 Tomcat 的 webapps 目錄下,然後重新啟動 Tomcat。使用瀏覽器存取
http://localhost:8080/struts-example/
執行頁面裡的 MailReader 程序,如果能正確註冊就可以用了。
Struts 的文件也裝好了,在
http://localhost:8080/struts-documentation/

關於如何在自己的開發目錄中使用Struts,請參考Struts 所帶的文件. Java 版有一些關於 Struts 的討論,使用論壇的搜尋功能可以找到。


步驟9。建立與 Apache 的連線
這已經是老生長談了,我介紹最簡單的方法,使用 mod_jk 建立與 Apache 的連線。
假設你已經安裝好了Apache,從這裡下載mod_jk:
http://jakarta.apache.org/builds/jakarta-tomcat/release/v3.2.1/bin/win32/i386/
你需要下載mod_jk.zip 這個檔。
將其解壓縮,得到一個 mod_jk.dll,拷到 Apache 安裝目錄下的 modules 目錄中。
修改Apache 的設定檔httpd.conf,加入以下兩行:
Include C:/tomcat/conf/mod_jk.conf-auto
JkMount /*.do ajp12
其中「C:/ tomcat」是Tomcat 的安裝目錄。
將index.jsp 加到DirectoryIndex 中,即:
DirectoryIndex index.html index.jsp
如果ServerName 前面有註釋,打開ServerName 前面的註釋,將其設為localhost,即:
ServerName localhost

重新啟動Apache,造訪這個頁面:
http://localhost/examples/
如果能列出jsp 和servlet 目錄,Tomcat 和Apache 的連線就建好了。                        

以上是XML開發環境的建立詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!