`
summerkai
  • 浏览: 93405 次
  • 性别: Icon_minigender_2
  • 来自: 农村
社区版块
存档分类
最新评论

tapestry4.1中的Autocompleter的用法-转

阅读更多
用tapestry4.1中的dojo的Autocompleter组件时,
HTML代码:
  1. <html jwcid="@Shell" title="test" debugEnabled="true">
  2. <head>
  3. <!---->head>
  4. <body jwcid="@Body">
  5. <span jwcid="@Autocompleter" model="ognl:model" value="ognl:select"/>
  6. <!---->body>
  7. <!---->html>
页面类如下,
Java代码 复制代码
  1. import java.util.ArrayList;   
  2. import java.util.Arrays;   
  3. import java.util.Date;   
  4. import java.util.List;   
  5.   
  6. import org.apache.tapestry.dojo.form.DefaultAutocompleteModel;   
  7. import org.apache.tapestry.dojo.form.IAutocompleteModel;   
  8. import org.apache.tapestry.event.PageBeginRenderListener;   
  9. import org.apache.tapestry.event.PageEvent;   
  10. import org.apache.tapestry.html.BasePage;   
  11.   
  12. public abstract class AutoCompleter extends BasePage implements PageBeginRenderListener   
  13. {   
  14.     public Date date = null;   
  15.     public IAutocompleteModel model = null;   
  16.     public void pageBeginRender(PageEvent arg0) {   
  17.         setText("TEXT");   
  18.         setDate(new Date());   
  19.     }      
  20.     public IAutocompleteModel getModel() {   
  21.         if (model == null) {   
  22.             List values = new ArrayList();   
  23.                
  24.             SimpleBean s1 = new SimpleBean(new Integer(1), "Simple 1"100);   
  25.             SimpleBean s2 = new SimpleBean(new Integer(2), "Simple 2"200);   
  26.             SimpleBean s3 = new SimpleBean(new Integer(3), "Simple 3"300);   
  27.                
  28.             values.add(s1);   
  29.             values.add(s2);   
  30.             values.add(s3);   
  31.                
  32.             model = new DefaultAutocompleteModel(values, "id""label");   
  33.         }   
  34.         return model;   
  35.       }   
  36.     public abstract void setText(String text);   
  37.     public abstract String getText();   
  38.     public abstract SimpleBean getSelect();   
  39.     public void formSubmit()   
  40.     {   
  41.         System.out.println(getDate());   
  42.         System.out.println(getSelect().getValue());        
  43.     }   
  44.     public void setDate(Date d)   
  45.     {   
  46.         if(date == null)   
  47.         {   
  48.             this.date = new java.util.Date();    
  49.         }   
  50.         else  
  51.         {   
  52.             this.date = d;   
  53.         }   
  54.     }   
  55.     public abstract Date getDate();   
  56.        
  57. }  
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;

import org.apache.tapestry.dojo.form.DefaultAutocompleteModel;
import org.apache.tapestry.dojo.form.IAutocompleteModel;
import org.apache.tapestry.event.PageBeginRenderListener;
import org.apache.tapestry.event.PageEvent;
import org.apache.tapestry.html.BasePage;

public abstract class AutoCompleter extends BasePage implements PageBeginRenderListener
{
	public Date date = null;
	public IAutocompleteModel model = null;
	public void pageBeginRender(PageEvent arg0) {
		setText("TEXT");
		setDate(new Date());
	}	
	public IAutocompleteModel getModel() {
	    if (model == null) {
	    	List values = new ArrayList();
	        
	        SimpleBean s1 = new SimpleBean(new Integer(1), "Simple 1", 100);
	        SimpleBean s2 = new SimpleBean(new Integer(2), "Simple 2", 200);
	        SimpleBean s3 = new SimpleBean(new Integer(3), "Simple 3", 300);
	        
	        values.add(s1);
	        values.add(s2);
	        values.add(s3);
	        
	        model = new DefaultAutocompleteModel(values, "id", "label");
	    }
	    return model;
	  }
	public abstract void setText(String text);
	public abstract String getText();
	public abstract SimpleBean getSelect();
	public void formSubmit()
	{
		System.out.println(getDate());
		System.out.println(getSelect().getValue());		
	}
	public void setDate(Date d)
	{
		if(date == null)
		{
			this.date = new java.util.Date(); 
		}
		else
		{
			this.date = d;
		}
	}
	public abstract Date getDate();
	
}

Java代码 复制代码
  1. package autoCompleter.test;   
  2.   
  3.   
  4. public class SimpleBean   
  5. {   
  6.   
  7.     private Integer _id;   
  8.        
  9.     private String _label;   
  10.        
  11.     private int _value;   
  12.        
  13.     public SimpleBean(Integer id, String label, int value)   
  14.     {   
  15.         _id = id;   
  16.         _label = label;   
  17.         _value = value;   
  18.     }   
  19.        
  20.     /**  
  21.      * @return the id  
  22.      */  
  23.     public Integer getId()   
  24.     {   
  25.         return _id;   
  26.     }   
  27.        
  28.     /**  
  29.      * @return the label  
  30.      */  
  31.     public String getLabel()   
  32.     {   
  33.         return _label;   
  34.     }   
  35.        
  36.     /**  
  37.      * Returns the value stored.  
  38.      *   
  39.      * @return The value stored.  
  40.      */  
  41.     public int getValue()   
  42.     {   
  43.         return _value;   
  44.     }   
  45.   
  46.     /**   
  47.      * {@inheritDoc}  
  48.      */  
  49.     @Override  
  50.     public int hashCode()   
  51.     {   
  52.         final int PRIME = 31;   
  53.         int result = 1;   
  54.         result = PRIME * result + ((_id == null) ? 0 : _id.hashCode());   
  55.         return result;   
  56.     }   
  57.        
  58.     /**   
  59.      * {@inheritDoc}  
  60.      */  
  61.     @Override  
  62.     public boolean equals(Object obj)   
  63.     {   
  64.         if (this == obj) return true;   
  65.         if (obj == nullreturn false;   
  66.         if (getClass() != obj.getClass()) return false;   
  67.         final SimpleBean other = (SimpleBean) obj;   
  68.         if (_id == null) {   
  69.             if (other._id != nullreturn false;   
  70.         } else if (!_id.equals(other._id)) return false;   
  71.         return true;   
  72.     }   
  73. }  
分享到:
评论

相关推荐

    tapestry-bin-5.1.0.5

    8. **tapestry-hibernate-NOTICE.txt, tapestry-hibernate-core-NOTICE.txt, tapestry-ioc-NOTICE.txt**:与对应的LICENSE文件类似,这些NOTICE文件列出了在Tapestry的这些特定模块中使用到的第三方组件和它们的版权...

    tapestry-ioc-5.0.3-src

    在"tapestry-ioc-5.0.3-src"这个压缩包中,我们可能找到Tapestry IOC框架的源代码,这对于开发者深入理解其工作原理和定制功能非常有价值。 1. **依赖注入(DI)**:Tapestry IOC的核心概念就是DI,它允许对象在...

    (Tapestry)An infrastructure for Fault-Tolerant Wide-area Location and Routing.ppt

    在Tapestry中,每个节点都有一个唯一的标识,这个标识是通过哈希函数计算得出的,使得节点可以在网络中找到彼此并进行通信。这种设计允许系统在节点加入、离开或失效时自动调整,从而实现容错性。 路由机制是...

    tapestry教程资料文档合集

    Tapestry5最新中文教程.doc 作者 Renat Zubairov & Igor Drobiazko译者 沙晓兰 发布于 2008年7月2日 下午9时30分 社区 Java 主题 Web框架 ----------------------------------------- Tapestry5.1实例教程.pdf ...

    Tapestry5和jQuery集成tapestry5-jquery.zip

    Tapestry5和jQuery集成.使用jQuery以极少的兼容问题完全替换Prototype 和 Scriptaculous库 标签:tapestry5

    tapestry-clojure-5.4-beta-3.zip

    android-priority-jobqueue.zip,一种专为android编写的作业队列,用于方便地调度在后台运行的作业(任务),提高用户体验和应用程序稳定性。一种专为android编写的作业队列,用于方便地调度在后台运行的作业(任务)...

    tapestry-project-4.1.5

    了解这些库的用途和用法,对于理解Tapestry 如何整合和利用这些资源至关重要。 接下来,"tapestry-project-4.1.5"很可能包含了一个完整的Tapestry 应用示例。这个项目通常会包含源代码、配置文件、测试案例等,是...

    tapestry5 build web application-alexander

    《Tapestry 5:构建Web应用程序》是关于Tapestry 5框架的一本权威指南。Tapestry 5是一个强大的Java Web应用框架,由Apache软件基金会开发并维护,它致力于提供一种更高效、更优雅的方式来构建动态、交互式的Web应用...

    apache-tapestry-5.3.8-bin.zip

    11. **Tapestry Hibernate**:`tapestry-hibernate-5.3.8.jar`是Tapestry与Hibernate集成的库,提供了在Tapestry应用中使用Hibernate的相关工具和服务。 通过这个发行包,开发者可以快速搭建Tapestry环境,开发基于...

    apache-tapestry-5.3.7-bin.zip

    `tapestry-jpa-5.3.7.jar`和`tapestry-hibernate-5.3.7.jar`则与持久层集成有关,它们支持JPA(Java Persistence API)和Hibernate ORM框架,使开发者能够轻松地在Tapestry应用中处理数据库操作。 总的来说,Apache...

    优化大使tapestry-bin-5.0.18.zip

    LICENSE和NOTICE文件将解释在Tapestry项目中如何合法地使用Spring框架。 综上所述,"tapestry-bin-5.0.18.zip" 包含的是一套完整的Tapestry框架的组件,每个部分都有其特定的功能,并且都遵循特定的开源许可协议。...

    tapestry-bin-5.0.14.zip

    - “tapestry-hibernate”是Tapestry与Hibernate集成的模块,使开发者能够方便地在Tapestry应用中使用Hibernate进行对象关系映射(ORM)操作。 - “tapestry-ioc”是Tapestry的依赖注入(IOC)容器,它简化了服务和...

    Tapestry-3-Getting Started.doc

    通过本教程的学习,开发者可以掌握使用 Tapestry 3 开发 Web 应用的基本技能,并能够独立完成一个简单的 Web 应用开发任务。随着对 Tapestry 框架的深入理解,开发者还可以进一步探索其更多高级特性和应用场景。

    Tapestry4.1.2 入门-介绍

    要开始使用Tapestry,首先需要将解压后的Tapestry库目录中的jar包复制到WEB-INF/lib目录,并删除重复的依赖,例如commons-logging.jar、javassist.jar和ognl-2.6.11.jar。接着,在web.xml配置文件中添加Tapestry的...

    tapestry官方中文文档

    在Tapestry中,大多数的编程都是声明式的,这意味着开发者可以使用XML或注解来定义页面和组件的行为,而不是编写大量的Java代码。这降低了代码的复杂性,提高了可读性和维护性。 4. **页面和组件生命周期**: ...

    tapestry-with-all-funtionlity

    使用命令行创建挂毯项目的步骤创建挂毯示例应用程序的步骤 =&gt; STEP-1在你的系统中安装 maven。 您必须有 Maven 才能从挂毯创建示例项目。 STEP-2一旦你安装了 maven 然后运行这个命令 =&gt;&gt; mvn archetype:generate -...

    tapestry 5.3中文教程

    - 在 `src/main/tapestry/` 目录下,找到 `MyApp.java` 文件,修改类中的方法来处理页面请求。 **2. 数据操作** - **添加数据**: - 使用 Tapestry 的 `Form` 组件来收集用户输入。 - 通过 `@Persist` 注解保存...

    tapestry-spring-5.2.6.jar

    tapestry-spring-5.2.6.jar,java spring框架依赖,可以直接使用

Global site tag (gtag.js) - Google Analytics