部署web应用

配置了部署模块的Jetty服务器实例能够在webapps目录下热部署web应用。在webapps目录下标准的War包和jetty的配置文件能够被热部署进服务器需要符合下述规则:

  • example/目录会被自动部署,如果该目录下含有WEB-INF/子目录的话,会作为一个web应用,要不然作为一个静态内容目录。他的访问路径是/example(也就是说,http://localhost:8080/example/),除非你目录名叫ROOT(大小写敏感),这时的访问路径为/。如果目录名称以".d"结尾的话,该目录会被作为配置目录处理。
  • WAR包被命名为example.war会被部署成访问路径为/example(也就是说,http://localhost:8080/example/)的web应用。如果WAR名字为ROOT(大小写敏感),这时的访问路径为/。如果example.war和example/同时存在,仅仅War包会被生效(因为同名的目录会被作为War包的解压缩目录覆盖)。
  • 通过XML可以进行访问路径的配置,该XML文件必须包含上下文路径配置,如果同时存在和war包同名的xml文件,优先使用XML作为该应用的配置。

如果你有一个Web应用,你可以直接拷贝到webapps目录下进行热部署。

Jetty的Demo演示程序

在demo-base/webapps目录下包含以下可部署的和配置文件 :

ROOT/

这是一个静态内容目录,访问路径为/,里面包含有Jetty的Demo程序的欢迎页面。

test.xml

这是一个配置和部署test.war的web应用的配置文件,里面配置访问路径的配置和加载额外的配置文件路径,比如设置test.d目录。

test.war

这是一个被test.xml配置的一个web应用。

test.d

该目录包含额外的配置,被test.xml使用并且注入到test.war应用的配置中。

async-rest.war

一个eBay的REST风格的异步web应用,自动部署后的访问路径是/async-test。

test-jaas.war

使用JAAS安全验证框架的一个web应用程序。

test-jaas.xml

一个关于test-jaas.war的上下文配置的文件。额外的配置包含启动LoginService进行授权和认证。

test-jndi.war

展示使用JNDI的web应用Demo程序。

test-jndi.xml

配置test-jndi.war上下文的文件. 额外的配置包含定义在命名空间被web应用引用的对象。

test-spec.war

该Demo程序展示使用注解,fragments, ServletContainerInitializers和其他Servlet3.0/3.1特性 。

test-spec.xml

配置test-spec.war上下文路径的配置文件。 额外的配置包括启动一些在命名空间中需要被引用的注解。

xref-proxy.war

一个使用透明的代理从Eclipse网站的jetty的src下的xref目录服务 。

example-moved.xml
  展示怎样使用MovedContextHandler来重定向到另外一个路径的web应用Demo程序。

在Jetty中使用Maven

Jetty从Maven成立以后就一直存在于Maven的中央仓库,这些年来就存在了几个不同的Maven坐标,当年Jetty在SourceForge和Codehaus社区时,使用的groupId是 org.mortbay.jetty. 在Jetty7时加入Eclipse基金会后使用了新的groupId。POM如下所示:

<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-project</artifactId>
<version>${project.version}</version>
</dependency>

Jetty开发(2)的更多相关文章

  1. Jetty使用教程(四:21-22)—Jetty开发指南

    二十一.嵌入式开发 21.1 Jetty嵌入式开发HelloWorld 本章节将提供一些教程,通过Jetty API快速开发嵌入式代码 21.1.1 下载Jetty的jar包 Jetty目前已经把所有 ...

  2. IntelliJ IDEA: maven & jetty 开发 java web

    之前使用eclipse + maven + jetty开发java web应用,本着no zuo no gain的想法, 折腾了一下Intellj idea下开发环境的搭建,顺带学习了maven re ...

  3. eclipse集成jetty开发web项目(不采用maven方式)

    以前开发过程部署项目都是采用tomcat,偶然发现jetty,所以试了下,挺方便的,直切主题. 1.下载jetty,楼主使用的jetty8,地址http://download.eclipse.org/ ...

  4. Jetty 开发指南: 嵌入式开发之HelloWorld

    Jetty 嵌入式之 HelloWorld 本节提供一个教程,演示如何快速开发针对Jetty API的嵌入式代码. 1. 下载 Jar 包 Jetty被分解为许多jar和依赖项,通过选择最小的jar集 ...

  5. Jetty 开发指南:Jetty 内嵌开发

    Jetty的口号是“不要在Jetty中部署你的应用程序,在你的应用程序中部署Jetty!” 这意味着,作为将应用程序捆绑为要部署在Jetty中的标准WAR的替代方案,Jetty旨在成为一个软件组件,可 ...

  6. Jetty使用教程(四:24-27)—Jetty开发指南

    二十四.处理器(Handler ) 24.1 编写一个常用的Handler Jetty的Handler组件用来处理接收到的请求. 很多使用者不需要编写Jetty的Handler ,而是通过使用Serv ...

  7. Jetty使用教程(四:23)—Jetty开发指南

    二十三.Maven和Jetty 这一章节将说明如何通过Maven管理Jetty和使用Jetty的Maven插件. 23.1 使用Maven Apache Maven是一个款软件项目管理工具.基于项目对 ...

  8. Eclipse / Intellij Idea配置Git+Maven+Jetty开发环境

    作者:鹿丸不会多项式 出处:http://www.cnblogs.com/hechao123  转载请先与我联系. 最近公司给加配了Mac,本想着花一个小时的时间搭好开发环境,最后全部弄好却用了一上午 ...

  9. web基础----->jersey整合jetty开发restful应用(一)

    这里介绍一个jersey与jetty整合开发restful应用的知识.将过去和羁绊全部丢弃,不要吝惜那为了梦想流下的泪水. jersey与jetty的整合 一.创建一个maven项目,pom.xml的 ...

  10. 使用Jersey和Jetty开发RESTful Web service

    Jersey RESTful 框架是开源的RESTful框架, 实现了JAX-RS (JSR 311 & JSR 339) 规范,是JAX-RS的参考实现,并且提供了更多的特性和工具,简化了R ...

随机推荐

  1. ural 1180 Stone Game

    http://acm.timus.ru/problem.aspx?space=1&num=1180 #include <cstdio> #include <cstring&g ...

  2. Android中的自动朗读(TTS)

    Android的自动朗读支持主要是通过TextToSpeech来完成,该类提供了如下一个构造器TextToSpeech(Context context,TextToSpeech.OnInitListe ...

  3. Windows内存小结(有好多图,比较清楚)

    以前写过一篇理解程序内存, 当时主要是针对用户态,下面再稍微深入一点: 我们以32位程序为例(不启用AWE), 总共4G虚拟空间,其中低2G属于用户态, 高2G属于操作系统内核, 每个程序都有自己的低 ...

  4. BZOJ3402: [Usaco2009 Open]Hide and Seek 捉迷藏

    3402: [Usaco2009 Open]Hide and Seek 捉迷藏 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 51  Solved: 4 ...

  5. Ubuntu 14.04 64位安装Android Studio 和 genymotion (上)

    先说下,Ubuntu 上安装Android Studio真是一路坑阿,一路坑阿,加上天  朝 防火墙挡着,折腾了快一天才弄好阿 找了n多教程,md不是抄的就是转的,而且都没说清楚具体咋装阿,一个图一个 ...

  6. windows server2012域服务器降级的方法

    最近在一个新的网络环境里建立windows域服务器,准备建立主.备两台域服务器.在一台新服务器上面安装了windows2012R2并配置了DC服务.域和林的级别设置为Windows2012R2级别.在 ...

  7. iOS - 排序的队列中插入数值

    http://stackoverflow.com/questions/8180115/nsmutablearray-add-object-with-order 用Selector http://sta ...

  8. (转)重置Mac OS X管理员密码

    忘记Mac管理员密码怎么办?别担心,办法总会有的. [方法一] 开机按住option,选择Recovery HD(Snow Leopard插入光盘开机按住C) Snow Leopard系统:进入后在上 ...

  9. Objective-C基础学习笔记——对象初始化

    obj中创建新对象有两种方式:[classname new]和[[classname alloc] init].两种方法等价,Cocoa惯例是使用alloc和init. 1.分配对象: allocat ...

  10. 关于git的文件内容冲突解决

    虽然以前我很怕git冲突,包括以前的版本控制器SVN上的冲突,但是昨天我决定好好的面对它,不去怕它,下面是我的解决过程... 话说一天的早上,我和同事(称为A)都同步了网络上的代码,然而A在中途提交了 ...