一直以来使用jetty作为我的web开发配置服务器,开始的时候和所有的初学者一样使用tomcat作为开发服务器,可用着用着,感觉tomcat越来 越繁琐以及庞大。后来,用了jboss,知道jboss使用jetty作为其web应用服务器,所以就开始试着使用jetty。从那开始后,jetty就 成为我的开发配置服务器了,从最初的4.0,到现在的6.0一直在使用着。
喜欢jetty的原因,在于其的方便,简单的配置文件,简单的启动脚本,而且在elipse或者其他ide中,进行调试,运行都很方便。
不想多说什么,让事实来说话吧。在开始之前,先下载jetty。目前最新的版本为6.1:
http://docs.codehaus.org/display/JETTY/Downloading+and+Installing#download
以前的版本文件是比较小的,现在的版本增加了很多东东,主要是很多例子应用,以及源码,经过删减只有,整个应用还是比较小的,大概也就10m多了。如果只 是需要运行web应用,并且只是需要jsp 2.1规范的话,只有7m多了。以前4.0的时候只有2m多,现在也已经增加了那么多了,时代在进步,没有办法。
jetty主要的jar为jetty-6.1.1.jar,servlet-api-2.5-6.1.1.jar,jetty-util- 6.1.1.jar。启动的jar 为start.jar。还有jsp规范的jar。jsp2.1,好像已经减了不少的jar了,只有4个文件core-3.1.1.jar,ant- 1.6.5.jar,jsp-2.1.jar,jsp-api-2.1.jar。core是使用eclipse的jdt,进行jsp编译。
jetty的主要配置文件为etc/jetty.xml,当然你可以自己指定别的文件。在start.jar中有个start.config文件是默认的环境配置,以及指定默认的配置文件。可以手工替换。
启动jetty很简单,在命令行下面java -jar start.jar
如果需要指定start.config,使用java -DSTART=start.config -jar start.jart
配置web 应用也非常的简单:
更改jetty.xml就行了,增加web应用的方式包括,直接放置应用在webapps下面,或者配置以下的context
<!---->
xml 代码
- <New id="Mywork" class="org.mortbay.jetty.webapp.WebAppContext">
- <Arg><Ref id="contexts"/>Arg>
-
- <Arg>D:\\project\\work\\m2project\\esoft\\esoft-mywork-jsf\\src\\main\\webappArg>
- <Arg>/myworkArg>
- <Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xmlSet>
- <Set name="virtualHosts">
- <Array type="java.lang.String">
- <Item>localhostItem>
- <Array>
- <Set>
-
- <New>
要想改变原先的webapps主应用,改变下面的配置
<!---->
xml 代码
- <Call class="org.mortbay.jetty.webapp.WebAppContext" name="addWebApplications">
- <Arg><Ref id="contexts"/>Arg>
- <Arg><SystemProperty name="jetty.home" default="."/>/webappsArg>
- <Arg><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xmlArg>
- <Arg type="boolean">TrueArg>
- <Arg type="boolean">FalseArg>
- Call>
默认的web.xml配置文件为webdefault.xml
如果想配置相应的web参数,可以更改其应用。
默认的端口为8080,如果想修改,更改:jetty.port属性
<!---->
xml 代码
- <Call name="addConnector">
- <Arg>
- <New class="org.mortbay.jetty.nio.SelectChannelConnector">
- <Set name="port"><SystemProperty name="jetty.port" default="8080"/>Set>
- <Set name="maxIdleTime">30000Set>
- <Set name="Acceptors">2Set>
- <Set name="confidentialPort">8443Set>
- New>
- Arg>
- Call>
简单的配置,简单的启动,下一篇,我会介绍,如何在eclipse中使用jetty.