源:http://blog.csdn.net/explorers/archive/2005/08/15/454769.aspx
http://www.eclipseworld.org/bbs/read.php?tid=680&fpage=1&toread=&page=1
現(xiàn)在eclipse越來越好用了,隨著sun jdk5.0的補(bǔ)丁4的推出,eclipse3.1也正式發(fā)布,
二者結(jié)合,速度比以前快了很多。而wtp0.7 m5版本放出也有了一段時(shí)間,這個(gè)月月
底可能wtp0.7會有release了。現(xiàn)在二者都基本成熟,用eclipse+wtp開發(fā)JSP是很方便
的,但是關(guān)于wtp插件的配置和使用方面的文章卻不多。很多人覺得wtp太麻煩,
配不好不能用,本人一直用wtp開發(fā)jsp,常有朋友問相關(guān)的問題,所以寫了這篇文章
用來介紹WTP的配置和開發(fā)JSP的步驟。
這里介紹的主要是jdk5.0b4 + eclipse3.1 + wtp0.7m5環(huán)境下的配置和開發(fā),
其他版本有細(xì)微的差異,但是主要的過程是相同的。
1. 下載安裝
這是當(dāng)然的第一步啦,這里是連接:
http://www.eclipse.org/webtools/index.html
2. 配置
有很多項(xiàng)需要配置,羅列如下:
1) 配置java-buildpath
2) 配置JDK
TOMCAT運(yùn)行的時(shí)候需要JDK,eclipse自動找到的是jre,如下圖:
3) 配置xml 和 internet 緩存
在web應(yīng)用中通常有很多的xml文件,默認(rèn)情況下wtp會去驗(yàn)證這些xml文件,
這就需要有這些xml文件的定義dtd或者xsd文件。
wtp默認(rèn)的會自動去下載,下載下來之后可以緩存之后供以后使用。
所以首先我們要打開緩存功能。見下圖,把disable cashing的勾去掉即可。
也可以把常用的xml文件的定義文件配置在xmlcatalog里邊,
這樣進(jìn)行xml驗(yàn)證的時(shí)候會自動使用這些文件,見下圖:
實(shí)在不行,只有把xml自動驗(yàn)證去掉了,見Validation選項(xiàng)。
4) 配置tomcat服務(wù)器
現(xiàn)在我們來配置tomcat,其他服務(wù)器的配置大致相同,如下圖所示:
輸入tomcat的路徑和JDK
3 開發(fā)一個(gè)JSP
首先new一個(gè)dynamic web project,在確定之后會提示是否進(jìn)入j2ee
perspective,選擇否,進(jìn)入java perspective,如下圖:
(說明:如果是以前的版本,在new的時(shí)候可能找不到dynamic web
project,而是有一個(gè)Flexible project,那就先建一個(gè)Flexible project,
然后在這個(gè)project下建立就可以找到dynamic web project了!)
注意:第一次運(yùn)行的時(shí)候,由于wtp需要驗(yàn)證web.xml這個(gè)文件,所以
會去下載web.xml驗(yàn)證要用到的dtd或者xsd,所以速度比較慢,
耐心等待,等所需要的文件全部下載下來之后以后就ok了。
工程建好之后,在下面創(chuàng)建java class和一個(gè)jsp文件,如下圖,
注意目錄結(jié)構(gòu):
上面圖中的java類和jsp都創(chuàng)建好了,現(xiàn)在我們在tomcat中測試這個(gè)jsp
頁面,右擊 webtests這個(gè)項(xiàng)目,在菜單中有一項(xiàng)run on server,點(diǎn)擊
后出來選擇服務(wù)器的對話框,選擇我們建立的tomcat服務(wù)器,然后添加
項(xiàng)目,finish。wtp會在eclipse內(nèi)打開一個(gè)瀏覽器打開這個(gè)項(xiàng)目。
注意到wtp自動新建并打開的工程servers,這個(gè)工程是在tomcat下
測試jsp頁面所必須要有的,而且必須是打開的狀態(tài),否則無法進(jìn)行jsp
測試。
4. 常見問題的解決
1) no server錯(cuò)誤
這個(gè)錯(cuò)誤在一些版本的wtp里邊,就是一個(gè)紅叉叉的對話框,說no
server,此時(shí)請確認(rèn)打開了servers這個(gè)工程。
2) 類未定義錯(cuò)誤
如果你在web project中使用了一些外部的jar,比如說log4j之類,你
可能在工程的classpath中已經(jīng)添加了這個(gè)jar,但是運(yùn)行時(shí)還會找不到類,
這是因?yàn)檫@個(gè)jar沒有被copy到工程的部署目錄的 WEB-INF/lib目錄下,
顯示 Navigator視圖, 如下圖。".deployables" 是一個(gè)web project
被部署到的地方。把用到的jar 拷貝到lib下即可。
(另一個(gè)解決辦法是把jar拷貝到 /webtests/WebContent/WEB-INF/lib
目錄下,但是這樣做有一個(gè)缺點(diǎn),在你想要查看你用到的包中類的源碼
會比較麻煩。我的做法是把常用的包配置到user library中,設(shè)定好源碼,
再加入到工程的classpath中。如果把jar拷到
/webtests/WebContent/WEB-INF/lib目錄下,那么這個(gè)時(shí)候webtests
這個(gè)工程的classpath中就有兩份同樣的包,在查看源碼的時(shí)候都要選擇,
而且會以 /WEB-INF/lib下的包為優(yōu)先,這可能跟classpath中的順序有關(guān),
但是不方便。所以直接把jar拷到 .deployables目錄下,可以解決這個(gè)
問題。希望以后版本的wtp中能解決這樣的問題,如果能夠自動的把
classpath中設(shè)置的所有jar都拷到 .deployables目錄下就方便了。)
3) context錯(cuò)誤
有的時(shí)候會出現(xiàn)context錯(cuò)誤,大致有兩種,一種是context重復(fù)錯(cuò)誤,
這種情況下,tomcat無法啟動。
在servers工程里,把server.xml中重復(fù)的context條目手工刪除即可。
另一種錯(cuò)誤是" no context"錯(cuò)誤,這個(gè)時(shí)候tomcat可以啟動,但是瀏
覽器里邊會說找不到頁面,這就是說server.xml中沒有這個(gè)context,解決
的辦法是在servers explorer視圖中把server 刪除,然后重新添加這個(gè)web
應(yīng)用,有時(shí)這樣還不能解決可以重新配置server。