Portlet中的操作事件和消息事件

2024-01-15 13:48
文章标签 操作 事件 消息 portlet

本文主要是介绍Portlet中的操作事件和消息事件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在Portlet API中有三种类型的事件:

  • 操作事件:Portlet容器收到一个HTTP请求时产生,通常关链一个行为,如用户点击一个链接。
  • 消息事件:一个Portlet向另一个Portlet发送消息时产生
  • 窗体事件:当用户改变Portlet窗体状态时产生

在下面的示例中,我们将会用到其中的操作事件和消息事件。

1.1 操作事件

当Portlet容器收到一个关联PortletAction 的HTTP请求时,一个操作事件将被发送到相应的Porlet。操作事件通常与HTML窗体中的HTTP链接或按钮关联,使开发人员能够针对用户的不同选择实现不同的操作。Portlet事件可以携带任何信息,这些信息是操作事件的一部分,将被传送到操作侦听器。

PortletAction对象必须被实现,它将与URL链接并经由ActionEvent传递。Portlet API还提供了一个带缺省参数的DefaultPortletAction对象。可以使用基于DefaultPortletAction的PortletAction,或者实现自己的PortletAction。涉及PortletAction的URI可以通过PortletURI类和它的addAction()方法创建。

如果Portlet希望能够收到操作事件,Portlet类必须实现ActionListener接口。

1.2 消息事件

如果多个Porlet是同一个Porlet应用的成员,并且位于同一个页面内,消息事件可以从一个Portlet发送到其他的Portlet。另外,DefaultPortletMessage可以跨越Portlet应用程序,发送给同一页面的其他Portlet。当一个Portlet的改变将影响另一个时,消息事件将非常有用。

PortletMessage类型的对象必须实现,它将经由MessageEvent发送。当一个Portlet向另一个发送消息时,MessageEvent 将被Porlet容器发送。

如果要接收消息事件,在接收消息的Portlet类中必须实现MessageListener接口

这篇关于Portlet中的操作事件和消息事件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/609108

相关文章

禁止平板,iPad长按弹出默认菜单事件

通过监控按下抬起时间差来禁止弹出事件,把以下代码写在要禁止的页面的页面加载事件里面即可     var date;document.addEventListener('touchstart', event => {date = new Date().getTime();});document.addEventListener('touchend', event => {if (new

ActiveMQ—消息特性(延迟和定时消息投递)

ActiveMQ消息特性:延迟和定时消息投递(Delay and Schedule Message Delivery) 转自:http://blog.csdn.net/kimmking/article/details/8443872 有时候我们不希望消息马上被broker投递出去,而是想要消息60秒以后发给消费者,或者我们想让消息没隔一定时间投递一次,一共投递指定的次数。。。 类似

动手学深度学习【数据操作+数据预处理】

import osos.makedirs(os.path.join('.', 'data'), exist_ok=True)data_file = os.path.join('.', 'data', 'house_tiny.csv')with open(data_file, 'w') as f:f.write('NumRooms,Alley,Price\n') # 列名f.write('NA

线程的四种操作

所属专栏:Java学习        1. 线程的开启 start和run的区别: run:描述了线程要执行的任务,也可以称为线程的入口 start:调用系统函数,真正的在系统内核中创建线程(创建PCB,加入到链表中),此处的start会根据不同的系统,分别调用不同的api,创建好之后的线程,再单独去执行run(所以说,start的本质是调用系统api,系统的api

Java IO 操作——个人理解

之前一直Java的IO操作一知半解。今天看到一个便文章觉得很有道理( 原文章),记录一下。 首先,理解Java的IO操作到底操作的什么内容,过程又是怎么样子。          数据来源的操作: 来源有文件,网络数据。使用File类和Sockets等。这里操作的是数据本身,1,0结构。    File file = new File("path");   字

FreeRTOS内部机制学习03(事件组内部机制)

文章目录 事件组使用的场景事件组的核心以及Set事件API做的事情事件组的特殊之处事件组为什么不关闭中断xEventGroupSetBitsFromISR内部是怎么做的? 事件组使用的场景 学校组织秋游,组长在等待: 张三:我到了 李四:我到了 王五:我到了 组长说:好,大家都到齐了,出发! 秋游回来第二天就要提交一篇心得报告,组长在焦急等待:张三、李四、王五谁先写好就交谁的

MySQL——表操作

目录 一、创建表 二、查看表 2.1 查看表中某成员的数据 2.2 查看整个表中的表成员 2.3 查看创建表时的句柄 三、修改表 alter 3.1 重命名 rename 3.2 新增一列 add 3.3 更改列属性 modify 3.4 更改列名称 change 3.5 删除某列 上一篇博客介绍了库的操作,接下来来看一下表的相关操作。 一、创建表 create

【经验交流】修复系统事件查看器启动不能时出现的4201错误

方法1,取得『%SystemRoot%\LogFiles』文件夹和『%SystemRoot%\System32\wbem』文件夹的权限(包括这两个文件夹的所有子文件夹的权限),简单点说,就是使你当前的帐户拥有这两个文件夹以及它们的子文件夹的绝对控制权限。这是最简单的方法,不少老外说,这样一弄,倒是解决了问题。不过对我的系统,没用; 方法2,以不带网络的安全模式启动,运行命令行,输入“ne

BT天堂网站挂马事件后续:“大灰狼”远控木马分析及幕后真凶调查

9月初安全团队披露bt天堂网站挂马事件,该网站被利用IE神洞CVE-2014-6332挂马,如果用户没有打补丁或开启安全软件防护,电脑会自动下载执行大灰狼远控木马程序。 鉴于bt天堂电影下载网站访问量巨大,此次挂马事件受害者甚众,安全团队专门针对该木马进行严密监控,并对其幕后真凶进行了深入调查。 一、“大灰狼”的伪装 以下是10月30日一天内大灰狼远控的木马样本截图,可以看到该木马变种数量不

封装MySQL操作时Where条件语句的组织

在对数据库进行封装的过程中,条件语句应该是相对难以处理的,毕竟条件语句太过于多样性。 条件语句大致分为以下几种: 1、单一条件,比如:where id = 1; 2、多个条件,相互间关系统一。比如:where id > 10 and age > 20 and score < 60; 3、多个条件,相互间关系不统一。比如:where (id > 10 OR age > 20) AND sco