在OSGi中,不能的bundle分属不同的装载器(Class Loader), 在J2EE 应用中,不同BUNDLE 中的JSP 所相应的ServletContext对象不同,这与通常情况下的应用是不一样的。

一个样例例如以下,分别訪问bundle a和bundle b, 打印出訪问时的ServletContext 属性參数(attributes):

Bundle a:

[2014-07-22 11:08:21,335] SG-UAP : INFO Config:331 - ---------------------------------------------------------

[2014-07-22 11:08:21,336] SG-UAP : INFO Config:336 - javax.servlet.context.tempdir=D:\NR\workpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\mx_test\proxytemp\hc_20238918

[2014-07-22 11:08:21,336] SG-UAP : INFO Config:336 - __CONFIG_GLOBAL_CONFIG__={UPLOADMODE=file, THEMEPATH=~/mx/resources/themes, DEBUGMODE=true, COMPRESSMODE=false, THEME=aero,ERRORTYPE=friendly, actionScope=GLOBAL, ENABLE_WEBLET_I18N=true, UPLOAD_LIMIT_TYPES=exe,bat}

[2014-07-22 11:08:21,343] SG-UAP : INFO Config:338 - ---------------------------------------------------------



Bundle b:

[2014-07-22 11:09:27,681] SG-UAP : INFO Config:142 - ---------------------------------------------------------

[2014-07-22 11:09:27,682] SG-UAP : INFO Config:147 - javax.servlet.context.tempdir=D:\NR\workpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\mx_test\proxytemp\hc_6240380

[2014-07-22 11:09:27,682] SG-UAP : INFO Config:147 - org.apache.jasper.runtime.JspApplicationContextImpl=org.apache.jasper.runtime.JspApplicationContextImpl@5e8368

[2014-07-22 11:09:27,683] SG-UAP : INFO Config:149 - ---------------------------------------------------------



能够看到,两个bundle中的ServletContext内容不一样,servlet context暂时文件夹也不一样。

原Application级的变量读、存储可使用静态类实现。

OSGi中的ServletContext的更多相关文章

  1. OSGI中的service依赖关系管理

    众所周知.对于高动态高可扩展的应用,OSGI是一个很好的平台.可是.也因此添加了复杂性.开发中对service的依赖变得复杂. 这也是service的关系管理成为OSGI中一个很重要的部分,我们来看看 ...

  2. Spring quartz中取得ServletContext

    在开发javaWeb定时任务的时候,有些处理要取得应用的相对路径,这就需要用到ServletContext取得到这个路径 解决思路是在web应用启动时,把ServletContext提前注入到Sche ...

  3. java中获取ServletContext常见方法

    http://blog.sina.com.cn/s/blog_3fe961ae0100wjnf.html 1.在javax.servlet.Filter中直接获取 ServletContext con ...

  4. java类中获取ServletContext的方法

    起因是我想要获取一个相对路径,需要用到servletContext的getRealPath()方法,于是上网搜索,找到两种方法来获取ServletContext. 方法1:第一种方法是这样的: Ser ...

  5. Java EE javax.servlet中的ServletContext接口

    ServletContext接口 public interface ServletContext (https://docs.oracle.com/javaee/7/api/javax/servlet ...

  6. servlet中的ServletContext对象

    ServletContext官方叫Servlet上下文.服务器会为每一个Web应用创建一个ServletContext对象.这个对象全局唯一,而且Web应用 中的所有Servlet都共享这个对象(在整 ...

  7. spring中得到servletContext对象方法

    1.spring得到servletContext,这个和session没有什么关系,上下文可以说是一个session容器,一个上下文可以有多个会话session 在web.xml中有以下配置后.加入s ...

  8. Java中获取ServletContext的方法

    Servlet: this.getServletContext() this.getServletConfig().getServletContext() request.getSession().g ...

  9. 在Struts2中使用ValueStack、ActionContext、ServletContext、request、session等 .

    笔者不知道该用哪个词来形容ValueStack.ActionContext等可以在Struts2中用来存放数据的类.这些类使用的范围不同,得到的方法也不同,下面就来一一介绍. 声明:本文参考Strut ...

随机推荐

  1. 如何为Android上的产品设计一款合适的图标

    如 果你已经完成了你的app,你一定会马上向其它人宣布这件事情.但是你需要注意一个很重要的问题,那就是app的图标.你的图标可能在项目启动之 前就已经设计好了,但我不喜欢这样,如果app没有完成实际上 ...

  2. IMA文件如何打开,winimage使用方

    一般先用UltraISO打开一个系统的镜像文件(.iso).其中有些文件(尤其是.ima,img)比如下面雨林木风Ghost系统盘的这个IMA文件,我们先提取到桌面 用WinImage打开这个文件即可 ...

  3. Oracle体系结构四(学习笔记)

  4. vue 源码 断点调试

    1.添加sourceMap sourceMap: true 2.npm run dev 会生成vue.js.map 3.断点调试 <!DOCTYPE html> <html> ...

  5. 23、java 通过System.getProperties()获取系统参数

    1.java的System.getProperty()方法可以获取的值 java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor. ...

  6. Q1:Valid Parentheses

    Question: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine i ...

  7. 【laravel5.4】git上clone项目到本地,配置和运行 项目报错:../vendor/aotuload.php不存在

    1.一般我们直接使用git clone 将git的项目克隆下来,在本地git库和云上git库建立关联关系 2.vendor[扩展]文件夹是不会上传的,那么下载下来直接运行项目,会报错: D:phpSt ...

  8. 通过配置CPU参数 worker_cpu_affinity 提升nginx性能

    简介 Nginx默认没有开启利用多核cpu,我们可以通过增加worker_cpu_affinity配置参数来充分利用多核cpu的性能.cpu是任务处理,计算最关键的资源,cpu核越多,性能就越好. 规 ...

  9. 职业-把工作当作职业 or 事业?

    有这么一种说法,工作态度可以分为两种:一种是把工作当作职业,另一种是把工作当成事业.态度折射品质,态度影响成败. 把工作当作一份职业的人,以职业交换薪水,完全是为工作而工作,工作是为了糊口养家,上班是 ...

  10. 教程 | 一文入门Python数据分析库Pandas

    首先要给那些不熟悉 Pandas 的人简单介绍一下,Pandas 是 Python 生态系统中最流行的数据分析库.它能够完成许多任务,包括: 读/写不同格式的数据 选择数据的子集 跨行/列计算 寻找并 ...