2023年11月28日发(作者:)安装和删除删除portal软件方法:

1) 删除注册表HKEY_LOCAL_MACHINE->Software->IBM->Websphere Portal Server

2) 把C:Program FilesIBMWebspherePortalServer删除就可以了

l 安装时还提示删除C:IBM下的一些软件,让安装软件自动处理就可以了

2. Portlet概念

与servlets类似,portlets是部署在容器内用来生成动态内容的web组件。从技术角度讲portlet是一个实现了t接口的类,它被打包成war文件格式部署到portlet容器里。

Portlets在以下方面与servlets相似:

1. portlets由特定的容器管理。

2. portlets生成动态内容。

3. portlet的生命周期由容器管理。

4. portlets通过请求/响应模式与web客户端交互。



Portlets在以下方面与servlets相异:

1. portlets只能生成标记段,而不是整个文档。

2. portlets没有可供直接访问的URL地址。不过你还是能够让别人通过URL访问到portlet,你可以把包含该portlet的页面的URL发给他。

3. portlets不能随意地生成内容,这是因为portlet生成的内容最终要成为portal页面的一部分。如果portal服务器要求的是html/text类型,那么所有的portlets都应生成html/text类型的内容。再比方说,如果portal服务器要求的是WML类型,那么所有的portlets都应生成WML类型的内容。



portlets还提供了一些附加的功能:

1. 设置参数的持久化存储:portlets提供了一个PortletPreferences对象用来保存用户的设置参数。这些参数被存入一个持久化数据库,这样服务器重启后数据依然有效。开发者不必关心这些数据存储的具体实现机制。

2. 请求处理:portlets提供了更为细粒度的请求处理。对于用户在portlet上动作时向该portlet发出的请求(一种称为活跃期的状态),或者因用户在其它portlet上动作而引发的刷新页面请求,Portal服务器提供了两种不同的回调方法来处理。

3. Portlet模式:portlets用模式的概念来表示用户在做什么。在使用mail应用的时候,你可能会用它来读信、写信或检查信件――这些都是mail应用的预定功能,Portlets通常以VIEW模式提供这些功能。但还有一些活动,像指定刷新时间或(重新)设置用户名和密码,这些活动允许用户定制应用的行为,因此它们用的是EDIT模式。Mail应用的帮助功能用的是HELP模式。

3. RAD工具使用

RAD在线运行使用方法:

1) 创建服务器:指向安装的portal。若portal非本机,就要填portal的IP地址。

2) 启动服务器:不要在RAD外面启动portal。

3) 添加项目:右键portal服务器,选择”添加和除去项目”

4) 启动项目:右键项目,选择“启动”

5) 察看portlet: 右键portal服务器,选择”打开门户网站”



4. 简单开发

4.1.项目目录结构

/根目录

/images图像文件

/WEB-INF最重要目

录,包括:lib子目录、classes子目录、、

/META-INF 存储meta文件 和java2安全文件(可选)

/jspJSP文件目录。该目录可以任意指定。IBM RAS自动分配的目录名:/WebContent/$JSP_FOLDER/jsp/$Markup/ 下

4.2.打包和部署

IBM RAD会自动打包的。在生成portlet项目同时生成EAR项目,WAR文件就在EAR项目下。

手工打包方法如下:

1) 生成WAR

jar -cf images WEB-INF

把images和WEB-INF目录打包成一个文件()

2) 更新WAR

jar -uf WEB-INF/

只有修改了



t视图

Portlet共有四种视图,view、edit、configure和help,开发人员可以设计分别在这四个页面中实现不同的功能,自然view是主要的显示页面,用户看到最多的就是这个视图中的内容,help顾名思义当然最好往里面添加的是帮助信息,edit和configure可以对portlet中自定义的一些参数进行设置,决定view视图中的显示内容和效果,这些都是需要开发人员设计的。

4.4.简单的Portlet例子

4.4.1. 标准Portlet (JSR 168)类

文件内容如下:

import .*;

public class HelloWorld extends PortletAdapter {

public void init (PortletConfig portletConfig)

throws UnavailableException

{ (portletConfig); }



public void doView(PortletRequest request, PortletResponse response)

throws PortletException, IOException

{

tentType("text/html"); PortletContext context = getPortletConfig().getPortletContext();

uestDispatcher("/jsp/").include( request, response);

}

}

这里,/jsp/就是该portlet的页面。

DoView()处理页面显示。

该类没用到IBM Portlet,是一个标准portlet (JSR 168).



4.4.2. IBM Portlet类

package s.v4;

import t.*;

import .*;



public class HelloJSP extends PortletAdapter {

public void init(PortletConfig portletConfig) throws UnavailableException { (portletConfig); }



public void doView(PortletRequest request, PortletResponse response)

throws PortletException, IOException

{

PortletContext context = getPortletConfig().getContext();

e("/jsp/", request, response);

}

}



t认证



4.6.一个页面多个Portlet



t之间的协作