一个tapestry4.1的事件监听例子。其主要是通过注释语言@绑定页面,指定某个页面元素ID 如<div id="test">并指定监听事件events="loaded "详看以下代码 。应用tapestry版本号为tapestry-framework-4.1.1-20061126.014659-1.jar
Home.html
<
shell
jwcid
="@Shell"
title
="Home"
>
< body jwcid ="@Body" >
< div id ="test" >
< h1 >
鼠标放在此层上会请求事件
</ h1 >
</ div >
</ body >
</ shell >
< body jwcid ="@Body" >
< div id ="test" >
< h1 >
鼠标放在此层上会请求事件
</ h1 >
</ div >
</ body >
</ shell >
Home.page
<?
xml version="1.0" encoding="UTF-8"
?>
<! DOCTYPE page-specification PUBLIC
"-//Apache Software Foundation//Tapestry Specification 4.0//EN"
"http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd" >
<!-- generated by Spindle, http://spindle.sourceforge.net -->
< page-specification class ="com.neusoft.dcd.webapp.action.system.Login" >
</ page-specification >
<! DOCTYPE page-specification PUBLIC
"-//Apache Software Foundation//Tapestry Specification 4.0//EN"
"http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd" >
<!-- generated by Spindle, http://spindle.sourceforge.net -->
< page-specification class ="com.neusoft.dcd.webapp.action.system.Login" >
</ page-specification >
Login.java
package
com.neusoft.dcd.webapp.action.system;
import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.annotations.EventListener;
import org.apache.tapestry.event.PageBeginRenderListener;
import org.apache.tapestry.event.PageEvent;
import com.neusoft.dcd.webapp.action.BasePage;
public abstract class Login extends BasePage implements PageBeginRenderListener ... {
public void pageBeginRender(PageEvent arg0) ...{
System.out.println("页面开始:");
}
@EventListener(elements = "test", events = "onmouseover")
public void watchText(IRequestCycle cycle)
...{
System.out.println("ss");
}
}
import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.annotations.EventListener;
import org.apache.tapestry.event.PageBeginRenderListener;
import org.apache.tapestry.event.PageEvent;
import com.neusoft.dcd.webapp.action.BasePage;
public abstract class Login extends BasePage implements PageBeginRenderListener ... {
public void pageBeginRender(PageEvent arg0) ...{
System.out.println("页面开始:");
}
@EventListener(elements = "test", events = "onmouseover")
public void watchText(IRequestCycle cycle)
...{
System.out.println("ss");
}
}