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