OSGi中的ServletContext

Posted jhcelue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OSGi中的ServletContext相关的知识,希望对你有一定的参考价值。

在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.JspApplication[email protected]5e8368
[2014-07-22 11:09:27,683] SG-UAP : INFO Config:149 - ---------------------------------------------------------

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


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














以上是关于OSGi中的ServletContext的主要内容,如果未能解决你的问题,请参考以下文章

OSGI容器中的Scala?

OSGi 中的 Java 类加载器使用

OSGI中的service依赖关系管理

OSGI 环境中的依赖注入

OSGI Bundle 中的 Android Activity

osgi+camel+karaf运行环境搭建