`
earls
  • 浏览: 69881 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Jetty 6.1.5的配置

阅读更多
       Jetty以其高效、小巧、可嵌入式等优点深得人心,让我一看就喜欢上了。尤其是启动速度Tomcat 6简直望尘莫及,于是卸载了Tomcat安装了Jetty。大家有兴趣也可以比较一下。
       现在Jetty最新版本是6.1.5,目前还没有可用的Eclipse插件,但我们可以自己搞定。
       打开Eclipse在Run中新建一个Java Application,Project就用自己的web项目,MainClass填上org.mortbay.xml.XmlConfiguration,然后打开Arguments,在Program arguments中填上etc/jetty.xml当然这个配置文件自己可以改的,具体可以看下文介绍。现在已经配置好了,只需要运行/调试这个Application就可以相应的运行/调试自己的web项目。
       打开jetty安装目录下的etc/jetty.xml文件,会发现这个配置文件有点似曾相识。最外层节点是Configure,它定义了一个Server对象,这就是我们的Jetty服务器了。
      下面的代码定义了一个线程池,并将其提供给Server使用。
xml 代码
 
  1. <Set name="ThreadPool">  
  2.   <New class="org.mortbay.thread.BoundedThreadPool">  
  3.      <Set name="minThreads">10</Set>  
  4.      <Set name="maxThreads">250</Set>  
  5.      <Set name="lowThreads">25</Set>  
  6.   </New>  
  7. </Set>  

       <Set>标签用来设置属性,类似spring中的<property>标签。内嵌<New>标签初始化一个新实例,并将引用赋值给Server的threadPool属性。对比如下Spring代码:
xml 代码
 
  1. <property name="threadPool">    
  2.    <bean class="org.mortbay.thread.BoundedThreadPool">    
  3.     <property name="minThreads" value="10" />    
  4.     <property name="maxThreads" value="250" />    
  5.     <property name="lowThreads" value="25" />    
  6.   </bean>    
  7. </property>    
往下的代码有一个<Call  name="addConnector">标签,这是反射调用addConnector方法,<Arg>标签定义了方法使用的参数。<Array type="org.mortbay.jetty.Handler">标签定义了一个org.mortbay.jetty.Handler数组,<Item>标签则定义了数组中的每一项。<Ref>标签则引用一个已经定义的实例对象。很简单吧,这种IOC方式和spring异曲同工。
       下面来重点介绍一下有关Web项目的配置。
       <New id="Contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection"/>这段代码定义了一个上下文处理器的集合和下文的
xml 代码
 
  1. <Call name="addLifeCycle">  
  2.   <Arg>  
  3.     <New class="org.mortbay.jetty.deployer.ContextDeployer">  
  4.       <Set name="contexts"><Ref id="Contexts"/></Set>  
  5.       <Set name="configurationDir"><SystemProperty name="jetty.home" default="."/>/contexts</Set>  
  6.       <Set name="scanInterval">1</Set>  
  7.     </New>  
  8.   </Arg>  
  9. </Call>  
配套使用,目的就是不断扫描$jetty.home/context目录下的xml配置文件,因此我们可以把自己的web应用的上下文配置放到这个目录下,就可以自动部署web应用。
       另外一段代码扫描$jetty.home//webapps下的目录和war文件,并自动部署之: 
xml 代码
 
  1. <Call name="addLifeCycle">  
  2.   <Arg>  
  3.     <New class="org.mortbay.jetty.deployer.WebAppDeployer">  
  4.       <Set name="contexts"><Ref id="Contexts"/></Set>  
  5.       <Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set>  
  6.       <Set name="parentLoaderPriority">false</Set>  
  7.       <Set name="extract">true</Set>  
  8.       <Set name="allowDuplicates">false</Set>  
  9.       <Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Set>  
  10.     </New>  
  11.   </Arg>  
  12. </Call>  
看完上面的我们基本就可以写自己的配置文件了,由于采用Eclipse启动Jetty,所以/contexts和/webapps目录对我来说没有用,干掉。另外添加自己的Handler来处理web应用。我定义的启动wicket的jetty-wicket.xml代码如下:
xml 代码
 
  1. <Set name="handler">  
  2.   <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">  
  3.     <Set name="handlers">  
  4.       <Array type="org.mortbay.jetty.Handler">  
  5.         <Item>  
  6.           <New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>  
  7.         </Item>  
  8.         <Item>  
  9.       <New class="org.mortbay.jetty.webapp.WebAppContext">  
  10.         <Set name="contextPath">/</Set>  
  11.         <Set name="resourceBase">d:/Workspace/wanged_wicket_app/web/</Set>  
  12.         <Call name="addServlet">  
  13.           <Arg>org.mortbay.jetty.servlet.DefaultServlet</Arg>  
  14.           <Arg>/</Arg>  
  15.         </Call>  
  16.       </New>  
  17.     </Item>  
  18.       </Array>  
  19.     </Set>  
  20.   </New>  
  21. </Set>   
这样一来,启动时就不需要加载多余的web应用了。
分享到:
评论
1 楼 rojazz1999 2007-08-14  
Good!!!

相关推荐

    Jetty9 配置使用HTTPS证书

    配置Jetty9服务器使用HTTPS证书的过程涉及多个步骤,包括申请证书、转换证书格式、以及配置Jetty服务器本身。以下详细描述这些步骤。 首先,申请证书部分通常需要借助第三方服务商,如阿里云、腾讯云等,这些服务商...

    Jetty配置支持https

    ### Jetty配置支持HTTPS及受信网站证书生成详解 #### 一、概述 在现代Web应用开发中,HTTPS协议已经成为标配。它不仅提供了安全的数据传输通道,还增强了用户对网站的信任度。对于使用Jetty服务器的项目来说,配置...

    jetty在eclipse中配置

    本教程将详细介绍如何在Eclipse中配置Jetty,以便于便捷地调试和运行Web应用。 首先,确保你已经安装了Eclipse IDE和Jetty服务器。你可以从Jetty官网下载适合你Java版本的Jetty发布包,并解压到本地文件系统。 1. ...

    Java Eclipse ee集合jetty和配置

    Eclipse EE 集合 Jetty 和配置 Eclipse 是一个功能强大且流行的集成开发环境(Integrated Development Environment,IDE),提供了许多插件和工具来支持各种编程语言和技术。其中,Eclipse EE(Enterprise Edition...

    maven-jetty-plugin-6.1.5.jar

    maven-jetty-plugin-6.1.5.jar

    jetty-util-6.1.5.jar

    "jetty-util-6.1.5.jar"是Jetty项目的一个工具包,包含了用于Jetty服务器运行时所需的各种实用工具和类。 这个特定版本的Jetty Util库(6.1.5)提供了以下关键功能和知识点: 1. **线程池管理**:Jetty利用其内置...

    apache+jetty负载配置案例

    本配置案例主要探讨如何将Apache与Jetty结合,实现负载均衡,以提高服务器性能和可用性。 一、Apache + Jetty 负载均衡原理 负载均衡是一种技术,通过分散网络流量到多个服务器,避免单个服务器过载,从而提高服务...

    自己构建微服务(springmvc+内嵌jetty+maven 环境配置)

    标题 "自己构建微服务(springmvc+内嵌jetty+maven 环境配置)" 提供了关于如何在Java环境中创建微服务的信息。这通常涉及使用Spring MVC作为控制器层,内嵌Jetty作为Web服务器,以及Maven作为项目管理工具。下面将...

    简单jetty配置

    本文将详细介绍如何进行简单的Jetty配置,包括解析`jetty.xml`、`pom.xml`和`jetty-env.xml`这三个关键配置文件。 首先,我们来看`jetty.xml`文件。这是Jetty的主配置文件,它定义了服务器的行为,如端口设置、...

    jetty启动器资源配置文件

    ### Jetty启动器资源配置文件详解 #### 一、概述 Jetty是一款开源的Servlet容器,由Eclipse基金会维护。它支持最新的Java EE标准,并且具备轻量级、高性能等特点,适用于开发测试环境以及生产环境中的Web应用...

    tomcate和jetty虚拟目录配置方法

    下面我们将详细探讨Tomcat和Jetty的虚拟目录配置方法。 ### Tomcat虚拟目录配置 #### 1. 配置`server.xml` Tomcat的虚拟目录主要通过修改`conf/server.xml`文件来实现。在`&lt;Host&gt;`元素下添加`&lt;Context&gt;`元素来定义...

    jetty反相代理配置

    在Jetty中配置反向代理,我们需要以下步骤: 1. 添加依赖:确保你的项目已经包含了Jetty的proxy模块。在Maven项目中,可以在pom.xml文件中添加如下依赖: ```xml &lt;groupId&gt;org.eclipse.jetty &lt;artifactId&gt;...

    Jetty 配置 SSL

    在`jetty-distribution`的`etc/jetty.xml`或`jetty-base`的`start.d/ssl.ini`中添加以下配置(用实际的密码和路径替换): ```xml &lt;!-- SSL Connector --&gt; &lt;New class="org.eclipse.jetty.server.ssl....

    JETTY启动文件配置方法.txt

    JETTY启动文件配置方法.txt

    jetty的xml文件配置说明.pdf

    ### Jetty XML配置详解 Jetty是一款开源的高性能嵌入式Web服务器,广泛应用于Java Web应用的开发与部署。在Jetty中,XML配置是一种重要的配置方式,它提供了灵活且强大的配置机制,允许开发者通过XML文件来定义和...

    jetty9.4.11+jetty在idea上的配置教程

    在本文中,我们将深入探讨如何在IntelliJ IDEA(简称IDEA)这个流行的Java集成开发环境中配置Jetty 9.4.11版本。首先,我们需要解决Jetty资源下载慢的问题,然后详细介绍在IDEA中配置Jetty的步骤。 **解决Jetty资源...

Global site tag (gtag.js) - Google Analytics