论坛首页 Java企业应用论坛

使用jetty配置 开发web应用

浏览 9717 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-04-09  
   
    一直以来使用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 代码
 
  1. <New id="Mywork" class="org.mortbay.jetty.webapp.WebAppContext">  
  2.       <Arg><Ref id="contexts"/>Arg>  
  3.         
  4.       <Arg>D:\\project\\work\\m2project\\esoft\\esoft-mywork-jsf\\src\\main\\webappArg>  
  5.       <Arg>/myworkArg>  
  6.       <Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xmlSet>  
  7.       <Set name="virtualHosts">  
  8.         <Array type="java.lang.String">  
  9.           <Item>localhostItem>  
  10.         <Array>  
  11.       <Set>  
  12.         
  13.     <New>  


要想改变原先的webapps主应用,改变下面的配置

<!---->
xml 代码
 
  1. <Call class="org.mortbay.jetty.webapp.WebAppContext" name="addWebApplications">  
  2.       <Arg><Ref id="contexts"/>Arg>  
  3.       <Arg><SystemProperty name="jetty.home" default="."/>/webappsArg>  
  4.       <Arg><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xmlArg>  
  5.       <Arg type="boolean">TrueArg>    
  6.       <Arg type="boolean">FalseArg>   
  7.  Call>  


默认的web.xml配置文件为webdefault.xml
如果想配置相应的web参数,可以更改其应用。

默认的端口为8080,如果想修改,更改:jetty.port属性
<!---->
xml 代码
 
  1. <Call name="addConnector">  
  2.   <Arg>  
  3.       <New class="org.mortbay.jetty.nio.SelectChannelConnector">  
  4.         <Set name="port"><SystemProperty name="jetty.port" default="8080"/>Set>  
  5.         <Set name="maxIdleTime">30000Set>  
  6.         <Set name="Acceptors">2Set>  
  7.         <Set name="confidentialPort">8443Set>  
  8.       New>  
  9.   Arg>  
  10. Call>  




简单的配置,简单的启动,下一篇,我会介绍,如何在eclipse中使用jetty.

 
   发表时间:2007-04-18  
我用的是jetty的plugin,但是web工程里配置logging,想把ibatis执行的sql语句打到控制台上,却打不出来。但是tomcat却可以。这个不知道你试过没有?
0 请登录后投票
   发表时间:2007-04-18  
没有碰到这种情况,一直用log4j打印信息,基本上都能出来
0 请登录后投票
   发表时间:2007-07-11  
你好,请教个问题。我的工程目录是这样的:D:\jetty-6.1.4rc1\webapps\rm\src\main\webapp\WEB-INF

“rm”是我的工程目录名。如果不用eclipse部署工程,该怎么配置Jetty呢?
我知道应该改这里:
<Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set>

我改成:
<Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps/rm/src/main/webapp</Set>
可是不行:
HTTP ERROR: 404
NOT_FOUND
RequestURI=/login!input.do

Powered by jetty://

请问这里的路径怎么写啊?这里先谢过了。哦,对了,这个工程通过eclipse部署是可以的,只要把webapp root di指定到“src/main/webapp”这个目录就可以了。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics