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

android应用如何嵌入独立的ijetty的servlet容器

阅读更多

1、下载ijetty的源码包,内部分为server和UI两部分,server部分是核心包,需要独立打包编译为jar,供UI部分使用,而UI包即使我们改造的部分,去掉原有的界面,只需要保留启动服务的部分即可。

2、server部分编译出:i-jetty-server-3.1.jar;

3、总共对外依赖的包需要如下这些:


其中,xmlParserAPIs-2.6.2.jar和xpp3-1.1.4.jar因为某些原因会导致出错,故可以剔除出去,并不影响ijetty的运行。为了简介,这些类可以解压后重新打包到一起,至少jetty的部分可以这么做。

4、web工程需要编译成android可以解析的dex格式zip包,需要注意的是,第三方的lib需要剔除不需要的,尤其是servlet-api-2.5.jar,因为容器中已经包含一个了。

打包命令举例:

dx.bat --dex --output=E:\demo\classes.zip E:\demo\WEB-INF\classes E:\demo\WEB-INF\lib

 

5、把classes.zip包放到lib下,删除原先的jar包,class下的类需要保留,然后打成war包:

jar cvf ppweb.war *.*

 

6、把ppweb放到jetty目录下的webapps下即可,重启程序即可访问了。

 

7、基于ijetty的web需要注意,对外部context的引用需要用android系统的,不能用原先web工程那种方式获取。

 

8、集成ijetty最重要的是用到IJettyservice这个类,以及Ijetty中定义的一些环境常量,用默认值即可很好运行。注意Ijetty中的如下代码:

static {
		__JETTY_DIR = new File(Environment.getExternalStorageDirectory(),
				"jetty");
		// Ensure parsing is not validating - does not work with android
		System.setProperty("org.eclipse.jetty.xml.XmlParser.Validating",
				"false");

		// Bridge Jetty logging to Android logging
		System.setProperty("org.eclipse.jetty.util.log.class",
				"org.mortbay.ijetty.AndroidLog");
		org.eclipse.jetty.util.log.Log.setLog(new AndroidLog());
	}

 跳过的xml的验证,否则运行不起来。

 

  • 大小: 44.6 KB
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    servlet基础与servlet容器模型

    Servlet容器通过实现Servlet API来与Servlet交互,提供了Web应用部署、安全控制、会话管理等高级功能。 Servlet容器模型通常包含以下组件: 1. **Web应用**:一组相关的资源(HTML、CSS、JavaScript、图片、...

    一个简单的servlet容器

    Servlet容器是Web应用程序的核心组成部分,它负责管理和执行Servlet,Servlet是一种Java编程接口,用于扩展服务器的功能。本主题将深入探讨“一个简单的Servlet容器”的实现,参考自《深入剖析Tomcat》这本书的第二...

    servlet容器工作原理

    Servlet容器,如Tomcat,是Java Web应用的基础组成部分之一。本文旨在深入探讨Tomcat中的Servlet容器工作原理,重点解释Servlet容器如何加载和管理Servlet,以及如何处理HTTP请求。通过了解`javax.servlet.Servlet`...

    简单的Servlet容器

    Servlet容器,如Tomcat,是Java Web应用程序的核心组成部分,它为Servlet提供运行环境。Tomcat是一个开源、轻量级的Servlet容器,由Apache软件基金会维护。本项目基于《深入剖析Tomcat》一书中的第二章代码,进行了...

    SpringBoot之配置嵌入式Servlet容器.pdf

    嵌入式Servlet容器是SpringBoot中的重要组件,能够将Web服务器(例如Tomcat、Jetty或Undertow)嵌入到应用程序的内部运行,使得部署更为简单便捷。接下来我们将根据给定的文件内容,深入探讨SpringBoot配置嵌入式...

    简单的servlet容器实现

    在本示例中,我们看到一个简化的Servlet容器的实现,这个容器仅用于理解基本概念,而非生产环境中的实际应用。 首先,让我们分析代码结构。`HttpServer1` 类是一个基础的服务器端点,它监听指定的端口(在这个例子...

    Servlet 容器工作原理解析

    首先,Servlet容器,如Tomcat,是一个独立的产品,它遵循Java EE(J2EE)规范中的Servlet API,为Servlet提供了一个标准化的执行环境。Servlet与Servlet容器的关系类似于枪和子弹,Servlet容器为Servlet提供了运行...

    android服务端jsp+servlet+mysql

    在IT行业中,构建Android应用程序与后端服务器交互是常见的需求,这里我们主要关注"android服务端jsp+servlet+mysql"这个主题。这个组合涉及到Android客户端、Java Web服务端以及数据库管理,下面将详细阐述这三个...

    Android studio 通过以servlet搭建的服务器访问 PC端 mysql数据库(一)服务端源代码

    在本教程中,我们将探讨如何使用Android Studio开发一个应用程序,该程序通过Servlet连接到PC上的MySQL数据库。Servlet是一种Java技术,常用于构建Web应用程序,它充当客户端(如Android应用)和服务器之间的中间层...

    Jetty 9 Servlet容器

    Jetty 9是一款轻量级、高性能且开源的Servlet容器,它主要负责处理基于Java Servlet规范的应用程序。作为Java服务的一部分,Jetty9为开发者提供了高效、稳定且灵活的平台来部署和运行Web应用程序。 首先,Jetty 9...

    Servlet容器工作原理讲解

    Servlet容器是Java Web开发中不可或缺的一部分,主要用于运行Servlet和JSP应用。Servlet是Java平台上的一个标准接口,用于处理来自Web服务器的HTTP请求并生成响应。在这个讲解中,我们将深入探讨Servlet容器的工作...

    android+servlet服务器

    2. Tomcat服务器:Apache Tomcat是一个开源的Servlet容器,它实现了Servlet和JavaServer Pages(JSP)规范,是部署Servlet应用的常用选择。 3. 登录验证:Servlet可以接收Android客户端发送的登录请求,校验用户名和...

    servletapi.zip_android_android server_android servlet api

    开发者可以通过将这个库添加到Android项目的依赖中,然后就可以在Android应用中编写Servlet,处理网络请求。这个库可能包含了以下关键组件: 1. `Servlet`接口:这是所有Servlet的基础,定义了服务HTTP请求的方法,...

    android 客户端服务器 servlet

    配置文件可能包括web.xml,这是Servlet容器(如Tomcat)的部署描述符,用于配置Servlet的映射、初始化参数等。数据库脚本则用于创建和初始化MySQL数据库的表结构。 总的来说,这个项目涉及了Android客户端与服务器...

    JAVA WEB中Servlet和Servlet容器的区别

    Servlet 容器是 Servlet 的运行环境,Servlet 只是一个应用程序,光有 Servlet 是无法运行起来的,需要有一个 Servlet 容器来运行它。 在 Java Web 开发中,Servlet 容器是必不可少的组件,它提供了一个环境,让 ...

    Servlet容器模型

    Servlet容器模型的大致描述,个人觉得比较适合初学者学习和使用~

    Android Servlet WEB http

    Tomcat、Jetty等Servlet容器负责运行这些Servlet,处理来自Android客户端的请求。 总结,Android通过Servlet和HTTP与Web服务器进行通信,实现数据的交换。这个过程中涉及Android客户端的HTTP请求构建、服务器端...

    以Android端为客户端和servlet为服务端的实时通讯(登录注册)

    在构建一个以Android客户端和Servlet服务端的实时通讯系统时,我们主要涉及到以下几个关键知识点: 1. **Android客户端开发**:Android是Google主导的开源移动操作系统,主要用于智能手机和平板电脑。在实现登录...

    jetty轻量级servlet容器

    Jetty 是一个用 Java 实现、开源、基于标准的,并且具有丰富功能的 Http 服务器和...Jetty 可以用来作为一个传统的 Web 服务器,也可以作为一个动态的内容服务器,并且 Jetty 可以非常容易的嵌入到 Java 应用程序当中。

Global site tag (gtag.js) - Google Analytics