2008-08-25
Eclipse + Lomboz + Tomcat =Jsp/Servlet
原文地址:http://www.sudu.cn/info/html/edu/jsp/20071227/51714.html
這裡說明一下,我寫的幾乎都是和 http://blog.csdn.net/dawave 上的那三篇出色的文章相同的,在這裡感謝dawave的辛勤勞動,我在這把他寫下來也是想自己作個總結,不知道有沒有侵權的意思,假如不妥還請告訴我,我可不想落個罵名
不廢話了,進入正題。
首先必須要有的軟體:
1、jdk :http://java.sun.com/j2se/1.4.2/download.html
2、eclipse plaform sdk :http://www.eclipse.org/downloads/index.php
3、lomboz :http://forge.objectweb.org/project/download.php?group_id=97&file_id=2302
4、emf runtime :http://www.eclipse.org/emf/
5、tomcat :http://jakarta.apache.org/site/binindex.cgi
我用的各軟體版本如下:
jdk v1.4.2_05
eclipse v3.0.1
lomboz v3.0.1
emf runtime v2.0.1
tomcat v5.0.28
以上的各個軟體除了jdk需要安裝外其他直接解壓縮就能夠安裝了。其中lomboz需要emf的支援,而lomboz和emf runtime是直接解壓縮到eclipse的目錄下的,注意解壓的目錄結構要和eclipse的相同。現在假設各個軟體的安裝位置是:
jdk: c:/java
eclipse: d:/eclipse
tomcat:c:/tomcat
先確保tomcat能夠單獨運行正常,這個我不廢話了。
安裝好後要配置環境變數,需要添加和修改的如下(這是我機器上的配置):
java_home:"c:/java"
tomcat_home:"c:/tomcat"
classpath:".;c:/java/lib/dt.jar;c:/java/lib/tools.jar" 最前面的.一定要加上,代表目前的目錄
path:"%systemroot%/system32;%systemroot%;%systemroot%/system32/wbem;c:/java/bin"
以上搞定,啟動eclipse,進入windows->preferences,應該能夠在左邊看到lomboz的選項,假如沒有的話,原因一般就是沒有解壓正確或沒安裝emf runtime。按照如下配置,修改後要記住點擊apply按鈕。
build path,把source and output folder改為folers選項。
lomboz preferences,把jdk tool.jar改為您機器的tool.jar位置。
server
definitions,把server type改為tomcat v5.0.x,然後在properties選項卡裡的application
server directory 改為tomcat的安裝路徑,classpath variable同樣。
轉換到server classpath,這裡把$tomcat_home$/common/lib下的那些jar加進來,這是我另一篇文章裡看到的,其實不加這些也是能啟動並執行,不知道有什麼不同。
轉換到project classpath,按照dawave的說法,必須加入jasper-runtime.jar,否則無法調試jsp。
以上是整個研發環境的配置,下面就是對project的配置。
new->project->lomboz j2ee project,輸入工程的名稱,這裡能夠修改工程的位置,我就不改了,現在假設工程名為test,輸入後點next。
第二步的東西不用改,點next,直接來到第三步,這裡在web modules裡加入工程名稱,就是將來的工程目錄名。
轉換到targeted servers,把tomcat v5.0.x加到列表中,然後點finish完成
建立工程後在eclipse的package explorer裡能夠看到建立的工程,在上面右鍵->properties->java build path
1、把allow output folders for source folders選上。
2、將default output folder改為該工程web-inf下的classes目錄,這是tomcat預設放class文檔的地方。
3、將j2src下的output folder改成他自己。
現在整個工程已配置好了,我們能夠開始進行jsp調試的配置了。
為了簡便我直接使用工程自動產生的index.jsp。
我們需要做的就是在$tomcat_home$/conf/catalina/localhost下建立一個xml文檔,文檔名不限,裡面的內容如下:
<context
path="/test" docbase="d:/eclipse/workspace/test/test" reloadable="true"
debug="0" workdir="d:/eclipse/workspace/test/j2src"/>
實際使用時需要對上面的目錄名進行必要的修改。
在eclipse裡把tomcat啟動起來,這個在lomboz j2ee view面板裡完成,選中項目後,點齒輪啟動伺服器。
因為我們調試jsp實際就是調試他產生的servlet,所以要首先運行一次jsp,就是在瀏覽器裡把這個jsp開啟,在瀏覽器裡輸入http://localhost:8080/test,運行結果如:
運行後能夠回到eclipse了,在package explorer裡重新整理工程,就能夠看到j2src下有東西了,把目錄展開,index_jsp.java就是index.jsp產生的servlet,雙擊開啟他,您就能夠在這裡面配置斷點了,再在瀏覽器裡把原來的頁面重新整理,沒有顯示了,但工作列的eclipse一閃一閃的,轉換過去,servlet已停在斷點處了。
嗯,很強大的研發環境,剛開始用,已喜歡上她了。
下面是我自己碰到的一些問題(我怕又碰到記不住怎麼弄,就寫下來):
1、tomcat無法在eclipse裡啟動。
因為我用的都是網上的最新版本,這個問題似乎是必然的,解決方案在dawave那找到了:
開啟d:/eclipse/plugins/com.objectlearn.jdt.j2ee_3.0.1/servers目錄下的tomcat50x.server文檔,找到
-djava.endorsed.dirs="${serverrootdirectory}/bin;${serverrootdirectory}/common/endorsed"
將前面的${serverrootdirectory}/bin去掉,一共有兩個地方。
即改為-djava.endorsed.dirs="${serverrootdirectory}/common/endorsed"
原文在http://forge.objectweb.org/forum/forum.php?thread_id=1028&forum_id=360
2、建立的那個xml文檔沒有作用
就是在瀏覽器裡輸入http://localhost:8080/test後提示:
-------------------------------------------------------------------
type status report
message /test
description the requested resource (/test) is not available.
-------------------------------------------------------------------
這個問題鬱悶了我好久,我覺得說到底就是那個xml文檔的格式問題。
<context
path="/test" docbase="d:/eclipse/workspace/test/test" reloadable="true"
debug="0" workdir="d:/eclipse/workspace/test/j2src"/>
這一行裡最前
面的context一定要區分大小寫,雖然我在網上看到不少人就寫為全部大寫,但我只要一改成那樣就不行了,更有docbase、workdir也應該注
意大小寫。後來我想,既然別人的大寫能夠,我的卻不行,會不會是tomcat對xml文檔中的關鍵字是否大小寫敏感有個選項開關呢,唉,沒有仔細研究過,
不知道的太多。
寫完了,從沒寫過那麼長的東西,感謝任何網上無私的把自己的經驗奉獻出來的高手們,特別是dawave的美文,我可是研究那幾篇好久,唉,自己水平太低了
我要繼續我的jsp之旅了