一直以来用jetty作ؓ(f)我的web开发配|服务器Q开始的时候和所有的初学者一样用tomcat作ؓ(f)开发服务器Q可用着用着Q感觉tomcat来繁琐以?qing)庞大。后来,用了(jin)jbossQ知道jboss使用jetty作ؓ(f)其web应用服务器,所以就开始试着使用jetty。从那开始后Qjetty成为我的开发配|服务器?jin),从最初的4.0Q到现在?.0一直在使用着?br>
喜欢jetty的原因,在于其的方便Q简单的配置文gQ简单的启动脚本Q而且在elipse或者其他ide中,q行调试Q运行都很方ѝ?br>
不想多说什么,让事实来说话吧。在开始之前,先下载j(lu)etty。目前最新的版本?.1:
http://docs.codehaus.org/display/JETTY/Downloading+and+Installing#download
以前的版本文件是比较?yu)的Q现在的版本增加?jin)很多东东,主要是很多例子应用,以?qing)源码Q经q删减只有,整个应用q是比较?yu)的Q大概也?0m多了(jin)。如果只是需要运行web应用Qƈ且只是需要jsp 2.1规范的话Q只?m多了(jin)。以?.0的时候只?m多,现在也已l增加了(jin)那么多了(jin)Q时代在q步Q没有办法?br>
jetty主要的jar为jetty-6.1.1.jarQservlet-api-2.5-6.1.1.jarQjetty-util-6.1.1.jar。启动的jar 为start.jar。还有jsp规范的jar。jsp2.1,好像已经减了(jin)不少的jar?jin),只?个文件core-3.1.1.jarQant-1.6.5.jarQjsp-2.1.jarQjsp-api-2.1.jar。core是用eclipse的jdtQ进行jsp~译?br>
jetty的主要配|文件ؓ(f)etc/jetty.xmlQ当然你可以自己指定别的文g。在start.jar中有个start.config文g是默认的环境配置Q以?qing)指定默认的配置文g。可以手工替换?br>
启动jetty很简单,在命令行下面java -jar start.jar
如果需要指定start.configQ用java -DSTART=start.config -jar start.jart
配置web 应用也非常的单:(x)
更改jetty.xmlp?jin),增加web应用的方式包括,直接攄应用在webapps下面Q或者配|以下的context
<New id="Mywork" class="org.mortbay.jetty.webapp.WebAppContext">
<Arg><Ref id="contexts"/></Arg>
<!-- l对路径Q可以指定相对\径,增加 <SystemProperty name="jetty.home" default="."/> p-->
<Arg>D:\\project\\work\\m2project\\esoft\\esoft-mywork-jsf\\src\\main\\webapp</Arg>
<Arg>/mywork</Arg>
<Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Set>
<Set name="virtualHosts">
<Array type="java.lang.String">
<Item>localhost</Item>
</Array>
</Set>
</New>
要想改变原先的webappsd用,改变下面的配|?br>
<Call class="org.mortbay.jetty.webapp.WebAppContext" name="addWebApplications">
<Arg><Ref id="contexts"/></Arg>
<Arg><SystemProperty name="jetty.home" default="."/>/webapps</Arg>
<Arg><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Arg>
<Arg type="boolean">True</Arg> <!-- extract -->
<Arg type="boolean">False</Arg> <!-- parent priority class loading -->
</Call>
默认的web.xml配置文g为webdefault.xml
如果想配|相应的web参数Q可以更改其应用?br>
默认的端口ؓ(f)8080,如果想修改,更改Qjetty.port属?br>
<Call name="addConnector">
<Arg>
<New class="org.mortbay.jetty.nio.SelectChannelConnector">
<Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
<Set name="maxIdleTime">30000</Set>
<Set name="Acceptors">2</Set>
<Set name="confidentialPort">8443</Set>
</New>
</Arg>
</Call>
单的配置Q简单的启动Q下一,我会(x)介绍Q如何在eclipse中用jetty.

]]>