(Portal 开发读书笔记) PortletContext

简介:

 PortletContext 接口提供了一大堆方法用于访问Portlet的环境,包括Portlet应用和Portlet容器。这里,Portlet应用本质上是一个web应用,所以它委托servlet容器帮它所有的组件

 

 
 
  1. public abstract interface PortletContext 
  2.   public abstract String getServerInfo(); 
  3.  
  4.   public abstract PortletRequestDispatcher getRequestDispatcher(String paramString); 
  5.  
  6.   public abstract PortletRequestDispatcher getNamedDispatcher(String paramString); 
  7.  
  8.   public abstract InputStream getResourceAsStream(String paramString); 
  9.  
  10.   public abstract int getMajorVersion(); 
  11.  
  12.   public abstract int getMinorVersion(); 
  13.  
  14. //根据文件名获取这个文件名对应的文件的MIME类型
  15.   public abstract String getMimeType(String paramString); 
  16.  
  17.   public abstract String getRealPath(String paramString); 
  18.  
  19.   public abstract Set<String> getResourcePaths(String paramString); 
  20.  
  21.   public abstract URL getResource(String paramString) 
  22.     throws MalformedURLException; 
  23.  
  24.   public abstract Object getAttribute(String paramString); 
  25.  
  26.   public abstract Enumeration<String> getAttributeNames(); 
  27.  
  28. //这些参数配置在web.xml中的<context-param>中,并且一个Portlet应用中的所有Portlet都可以share
  29. 、//但是在portlet.xml中的<init-param>,则只有对应的某个Portlet可以用。
     
  30.   public abstract String getInitParameter(String paramString); 
  31.  
  32.   public abstract Enumeration<String> getInitParameterNames(); 
  33.  
  34.   public abstract void log(String paramString); 
  35.  
  36.   public abstract void log(String paramString, Throwable paramThrowable); 
  37.  
  38. //这几个用于添加/删除portletContext上的属性,这些属性只要在这个Portlet应用里面的任何资源(servlet,jsp,class都可以用)
     
  39.   public abstract void removeAttribute(String paramString); 
  40.  
  41.   public abstract void setAttribute(String paramString, Object paramObject); 
  42.  
  43.   public abstract String getPortletContextName(); 
  44.  
    //这些运行时选项是Portlet容器相关的选项,他们的值也配置在portlet.xml中
  45. //比如:
    <container-runtime-option>      <name>com.ibm.portal.public.session</name>      <value>true</value>    </container-runtime-option>
  46.   public abstract Enumeration<String> getContainerRuntimeOptions(); 

 

PortletContext 和 ServletContext

这两个作用域上的所有变量都是相互可见的,并且这些变量都适用于ServletContext的几个监听器方法:

ServletContextListener

ServletContextAttributeListener

 

他们彼此也是“唇亡齿寒”的关系,一个被servlet容器摧毁,则另外一个也被portlet容器摧毁





本文转自 charles_wang888 51CTO博客,原文链接:http://blog.51cto.com/supercharles888/843974,如需转载请自行联系原作者

目录
相关文章
|
10月前
|
JavaScript 数据可视化 前端开发
《面向三维GIS的Cesium开发与应用》读书笔记
《面向三维GIS的Cesium开发与应用》读书笔记
|
安全 测试技术 数据安全/隐私保护
软件安全开发生命周期读书笔记
分阶段: 0. 教育和意识       1.微软成功的原因在于管理层支持和教育与培训.       2.工程师必须对基本的安全弱点、常见的安全漏洞类型、基本的安全设计有所了解。
1434 0
|
6月前
|
存储 安全 编译器
[笔记]读书笔记 C++设计新思维《一》基于策略的类设计(下)
[笔记]读书笔记 C++设计新思维《一》基于策略的类设计(下)
|
6月前
|
存储 算法 Java
[笔记]读书笔记 C++设计新思维《二》技术(Techniques)(二)
[笔记]读书笔记 C++设计新思维《二》技术(Techniques)(二)
|
6月前
|
安全 Java C++
[笔记]读书笔记 C++设计新思维《一》基于策略的类设计(上)
[笔记]读书笔记 C++设计新思维《一》基于策略的类设计