I_CmsPublishEventListener是发布监听器的接口,定义自己的发布监听器需要实现这个接口。
public class EventListener implements I_CmsPublishEventListener {
@Override
public void onFinish(CmsPublishJobRunning publishJob) {
//发布的资源
List<CmsResource> list = publishJob.getPublishList().getFileList();
}
……
}
在EventListener 类中重写接口中的方法,实现自己想要的功能。
I_CmsModuleAction是模块的Action接口,添加类ModuleAction
public class ModuleAction implements I_CmsModuleAction {
@Override
public void initialize(CmsObject adminCms,
CmsConfigurationManager configurationManager, CmsModule module) {
// 注册监听器
OpenCms.getPublishManager().addPublishListener(new EventListener());
}
……
}
当opencms系统启动是模块会调用initialize方法,完成监听器的注册。但在这之前需要在模块中配置,在编辑模块中,
配置操作java类这一项(ModuleAction类的包括包名的路径)。
附:
如果你想在监听器类中使用到CmsObject的对象,有一种修改opencms源码的方法。如下:
监听器类中 onEnqueue 方法是把发布资源放到发布队列中的方法
@Override
public void onEnqueue(CmsPublishJobBase publishJob) {
CmsObject = publishJob.getCmsObject();
}
但是在CmsPublishJobBase 中并不包含getCmsObject();方法。可以修改CmsPublishJobBase类源码,在 CmsPublishJobBase 类中添加一个getCmsObject();方法。
public CmsObject getCmsObject(){
return m_publishJob.getCmsObject();
}
将编译好后的CmsPublishJobBase.class文件,导入到Opencms模块中,在tomcat中WEB-INF\classes\下的.class文件会优先于jar包中的类。所以opencms会执行修改后的CmsPublishJobBase类
分享到:
相关推荐
1. **初始化流程**: i_jetty的启动过程涉及服务器实例化、配置设置、连接器添加以及处理器注册等多个步骤,这些都在源码的初始化函数中体现。 2. **请求处理链路**: 从Connector接收请求到Handler处理,再到Servlet...
"Exp_i_Trend" 是一个基于MT5平台的EA,它的设计目的是利用内置的 "i_Trend" 振荡器来生成交易信号,从而实现自动交易。 **i_Trend 振荡器** i_Trend 是MT5平台自带的一款技术指标,它属于振荡器类型,用于判断...
工作原理上,keyclone_v1.9i_24jul2009a会在操作系统底层运行,监听键盘事件,并将这些事件转化为可读的字符流。它通过钩子技术(hooking)来实现这一目标,即在操作系统中设置一个钩子,当键盘事件发生时,钩子函数...
这个话题主要聚焦于如何在Java中为计算器设置监听器,以便响应用户的输入和操作。监听器是Java Swing或JavaFX UI库中的关键组件,它们用于捕捉和处理用户与组件交互的各种事件。以下是关于"计算器---如何设置监听器...
I2C(Inter-Integrated Circuit)是一种由飞利浦(现为恩智浦半导体)在1982年推出的两线式串行接口协议,专为低速设备间的通信而设计,如微控制器、传感器、时钟、LCD显示器、存储器等。这个协议允许在一个系统内...
【JavaWeb 高级:过滤器与监听器详解】 在JavaWeb开发中,过滤器(Filter)和监听器(Listener)是两种非常重要的组件,它们能够帮助我们实现更精细的控制和管理应用程序的行为。本篇将详细介绍过滤器的原理、使用...
Java EE(Java Platform, Enterprise Edition)是用于构建企业级分布式应用程序的框架,它提供了一系列标准接口和组件模型,包括上下文、监听器和过滤器。这些概念是Java EE开发中的核心组成部分,对于理解和优化Web...
Java监听器的实现和原理详解 Java监听器是一种非常重要的设计模式,在Java中广泛应用于事件驱动编程。监听器模式的主要思想是将事件源和事件处理器分离,使得事件源可以独立于事件处理器,提高了系统的灵活性和可...
### 如何配置Oracle监听器 在Oracle数据库管理与维护中,正确配置监听器是确保数据库服务正常运行的关键步骤之一。监听器的主要职责是接收客户端连接请求,并将其分发到相应的数据库实例。如果监听器配置不当,则会...
- **Monitor**:监视器监听SPI总线,记录并报告协议事件。 - **Environment**:环境将所有组件组合在一起,提供配置和控制验证环境的方法。 5. **源码分析**:源码文件提供了实现这些组件的SystemVerilog代码,...
监听器模式是Java设计模式中的一种行为型模式,主要用于监听某些事件的发生,并在事件发生时自动执行预定义的操作。在实际开发中,监听器模式可以用于多种场景,如UI事件处理、事件广播、异步通知等。 在监听器模式...
java过滤器和监听器的使用 1.1. 安装流程设计器插件(Graphical Process Designer) 1, jBPM4.4包含了一个图形化设计流程的工具(GPD),它是eclipse插件,是用来设计jPDL的图形化流程的,支持的版本为Eclipse3.5。...
### Java监听器添加:四种监听器(内部、外部、内部匿名、自身) #### 一、引言 在Java中,监听器(Listener)是事件处理机制的重要组成部分,它主要用于响应用户或其他组件产生的事件。根据实现方式的不同,可以...
在嵌入式系统和物联网(IoT)领域,I2C(Inter-Integrated Circuit)是一种广泛应用的通信协议,用于在微控制器(MCU)和其他电子组件之间进行低速、短距离的数据传输。`i2c_i2cslave_`标题表明我们将讨论的是I2C协议中的...
Oracle监听器是Oracle数据库系统的重要组成部分,它负责管理和控制数据库实例与客户端应用程序之间的网络通信。在Oracle数据库环境中,监听器是运行在服务器端的一个后台进程,它的主要职责是监听来自客户端的连接...
在Java Swing中,有多种类型的监听器,例如动作监听器(ActionListener)、鼠标监听器(MouseListener)、键盘监听器(KeyListener)和窗口监听器(WindowListener)等。例如,如果我们想要在用户点击按钮时执行某些...
I2C(Inter-Integrated Circuit)是一种在微控制器和各种电子设备之间进行低速通信的两线制串行总线,由Philips(现为NXP Semiconductors)于1982年开发。它允许连接的设备共享数据,如传感器、显示驱动器、时钟和...
在IT行业中,Web开发是至关重要的领域,而`JSP(JavaServer Pages)`、`Servlet`、`JSTL(JavaServer Pages Standard Tag Library)`、`EL(Expression Language)`以及`过滤器(Filter)`和`监听器(Listener)`是...
本文将深入探讨如何使用Verilog实现I2C主控制器,基于提供的"i2c_master.tar.gz"压缩包中的"i2c_master.v"文件。 I2C(Inter-Integrated Circuit)是由飞利浦(现NXP半导体)开发的一种串行通信协议,主要用于设备...
3. `i2c_receiver.vhd`: 数据接收器模块,监听SDA线上的数据并解码。 4. `i2c_clock_generator.vhd`: 时钟发生器模块,生成与I2C协议兼容的时钟信号。 5. `i2c_bus_interface.vhd`: 总线接口模块,处理电平转换和...