使用jetty配置 开发web应用
一直以来使用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
java
<
New
id
="Mywork"
class
="org.mortbay.jetty.webapp.WebAppContext"
>
<
Arg
><
Ref
id
="contexts"
/></
Arg
>
<!--
绝对路径,能够指定相对路径,增长 <SystemProperty name="jetty.home" default="."/> 就行
-->
<
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
>
要想改变原先的webapps主应用,改变下面的配置
web
<
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配置文件为webdefault.xml
若是想配置相应的web参数,能够更改其应用。
默认的端口为8080,若是想修改,更改:jetty.port属性
api
<
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
>
简单的配置,简单的启动tomcat