	<listener>
		<name>dropListener</name>
		<listenerclass>
			org.richfaces.event.DropListener
		</listenerclass>
		<componentclass>
			org.richfaces.event.DropSource
		</componentclass>
		<eventclass>
			org.richfaces.event.DropEvent
		</eventclass>
		<taghandler generate="false">
			<classname>
				org.richfaces.taglib.DropListenerHandler
			</classname>
		</taghandler>
	</listener>

	<listener>
		<name>dragListener</name>
		<listenerclass>
			org.richfaces.event.DragListener
		</listenerclass>
		<componentclass>
			org.richfaces.component.Draggable
		</componentclass>
		<eventclass>
			org.richfaces.event.DragEvent
		</eventclass>
		<taghandler generate="false">
			<classname>
				org.richfaces.taglib.DragListenerHandler
			</classname>
		</taghandler>
	</listener>


	<listener>
		<name>changeExpandListener</name>
		<listenerclass>
			org.richfaces.event.NodeExpandedListener
		</listenerclass>
		<componentclass>
			org.richfaces.event.TreeListenerEventsProducer
		</componentclass>
		<eventclass>
			org.richfaces.event.NodeExpandedEvent
		</eventclass>
		<taghandler generate="true">
			<classname>
				org.richfaces.taglib.ChangeExpandListenerTagHandler
			</classname>
		</taghandler>
		<tag generate="true">
			<classname>
				org.richfaces.taglib.ChangeExpandListenerTag
			</classname>
		</tag>
	</listener>
	<listener>
		<name>nodeSelectListener</name>
		<listenerclass>
			org.richfaces.event.NodeSelectedListener
		</listenerclass>
		<componentclass>
			org.richfaces.event.TreeListenerEventsProducer
		</componentclass>
		<eventclass>
			org.richfaces.event.NodeSelectedEvent
		</eventclass>
		<taghandler generate="true">
			<classname>
				org.richfaces.taglib.NodeSelectListenerTagHandler
			</classname>
		</taghandler>
		<tag generate="true">
			<classname>
				org.richfaces.taglib.NodeSelectListenerTag
			</classname>
		</tag>
	</listener>
