【0】README

0.1)本文是对 一个简单的servlet容器 的补充;

【1】Servlet容器

1.1)通过一个简单的servlet容器这篇博文,我们看到:其中的核心代码是 类加载器, 然而,在我follow 其代码,分别在命令行 和 Eclipse 执行时,得到了不同的执行结果; 参见我的提问 对于URLClassLoader,Eclipse执行正确,而命令行执行抛出异常 这个问题描述;

1.2)抛出异常的原因: 显然是 类加载器没有找到要加载类所在的dir, 然而,正如你所见,我在 URLClassLoader的源代码中已经 指定了加载路径;

try {// create a URLClassLoader, 创建类载入器(类加载器是干货代码 )URL[] urls = new URL[1];URLStreamHandler streamHandler = null;File classPath = new File(Constants.WEB_ROOT);// the forming of repository is taken from the createClassLoader method in// org.apache.catalina.startup.ClassLoaderFactoryString repository = (new URL("file", null, classPath.getCanonicalPath() + File.separator)).toString() ;// file:E:\bench-cluster\cloud-data-preprocess\HowTomcatWorks\webroot\// the code for forming the URL is taken from the addRepository method in// org.apache.catalina.loader.StandardClassLoader class.urls[0] = new URL(null, repository, streamHandler);// urls[0] = file:E:/bench-cluster/cloud-data-preprocess/HowTomcatWorks/webroot/loader = new URLClassLoader(urls);}

1.3)解决方法:正如你在 “一个简单的servlet容器” 这篇博文中所见,我需要再 命令行运行该程序时,手动添加 类加载路径到 classpath, 这样才能执行成功,否则失败。


Attention)我纳闷的地方在于:明明在上述代码中,我已经在 URLClassLoader的类构造器中指明了 类加载路径,为什么我还要在命令行手动设置类加载路径到 classpath,那岂不是我在URLClassLoader 中指明的 类加载路径是 invalid ? 也就是上述我在技术问题中所提出的问题,但是这个问题一直没有人来解答。

对Servlet容器的补充相关推荐

  1. tomcat(5)servlet容器

    [0]README 0.0)本文部分文字描述转自:"深入剖析tomcat",旨在学习 tomcat(5)servlet容器 的基础知识: 0.1)intro to servlet容 ...

  2. tomcat(2)一个简单的servlet容器

    [0]README 0.1)本文部分文字转自 "深入剖析Tomcat",旨在学习  一个简单的servlet容器  的基础知识: 0.2)for complete source c ...

  3. tomcat(5)servlet容器(lastest version)

    [0]README 0.0)本文部分文字描述转自:"深入剖析tomcat",旨在学习 tomcat(5)servlet容器 的基础知识: 0.1)intro to servlet容 ...

  4. 【spring boot2】第8篇:spring boot 中的 servlet 容器及如何使用war包部署

    嵌入式 servlet 容器 在 spring boot 之前的web开发,我们都是把我们的应用部署到 Tomcat 等servelt容器,这些容器一般都会在我们的应用服务器上安装好环境,但是 spr ...

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

    1.概述 文章目录 1.概述 2.如何修改SpringBoot的默认配置 3.定制和修改Servlet容器的相关配置 4.注册Servlet三大组件 5.替换为其他嵌入式Servlet容器 6.嵌入式 ...

  6. Java使用Jetty实现嵌入式Web服务器及Servlet容器

    Jetty是一个Java实现的开源的servlet容器,它既可以像Tomcat一样作为一个完整的Web服务器和Servlet容器,同时也可以嵌入在Java应用程序中,在Java程序中调用Jetty. ...

  7. Web服务器 Web容器 Servlet容器

    WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务. WWW 是 Internet 的多媒体信息查询工具,是 Internet 上近年才发展起来的服务,也是 ...

  8. 熵增学院-Anders-剑走偏锋,了解Spring Boot内部Servlet容器

    2019独角兽企业重金招聘Python工程师标准>>> 还记得大明湖畔的servlet吗?其实Spring Boot支持内嵌的Tomcat, Jetty和Undertow服务器,多数 ...

  9. Web服务器、Servlet和Servlet容器

    Web服务器是向浏览器提供服务的程序.服务器是一种被动的程序,只有当其他计算机的浏览器向它们发出请求时才有所动作.在大多数情况下,这些动作是寻找并发送某个文档给提出请求的浏览器. Servlet是一种 ...

最新文章

  1. 【C#】MD5 小程序编写
  2. asp.net 学习的一些地址
  3. MySQL数据库Keepalived双主
  4. Linux中文件操作
  5. java_advanced_review(3)补充:利用网络套接字实现类似qq 的控制台通讯
  6. C语言目录操作 (Linux/Unix)
  7. 简单混合锁(HybridLock)
  8. 如何查看linux的资源,Linux系统资源查看(示例代码)
  9. 音视频开发(40)---麦克风阵列声源定位 GCC-PHAT
  10. java声明_Java继续声明
  11. 间通过蓝牙模块建立通讯_拥抱蓝牙mesh,幻腾用“互联”深化智能
  12. 嵌入式-----产品手册----塔吊黑匣子电气安装培训
  13. html设置网页字体大小,CSS根据用户需求设置网页字体大小
  14. Android x86 镜像 安装到 PC 机上
  15. Photoshop-置换贴图-原理
  16. Windows中texstudio的主题代码(持续更新)
  17. 计算机主板性能参数,影响电脑性能的硬件参数之主板
  18. 阿里云-云开发平台存储篇——给应用接上后端存储能力
  19. C++在终端、文件中就地覆盖输出的方法
  20. untiy游戏接入之uc_sdk(九游)

热门文章

  1. 【NOI2019】斗主地【期望】【组合数学】【下降幂】【插值】
  2. 2019 ICPC Asia Nanjing Regional
  3. P2852 [USACO06DEC]Milk Patterns G
  4. P3964-[TJOI2013]松鼠聚会【计算几何】
  5. P3211-[HNOI2011]XOR和路径【高斯消元】
  6. YbtOJ#20060-[NOIP2020模拟赛B组Day3]字串修改【模拟】
  7. P6772-[NOI2020]美食家【矩阵乘法,倍增】
  8. 学习手记(2018.11.30~2019.6.6)——养老时间
  9. 【结论】单元格(jzoj 1509)
  10. [XSY] 计数(DP,NTT,分治)