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接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值