目前好像开源的项目里面还没有关于ajax-jsf结合的比较好的方案。
用标签库封装的最终目标应该是实现工业级的组件重用。模板语言里面在开发的时候不需要接触到复杂javascript代码。参考了两个php模板得ajax-tag项目ajaxac和xajax,都封装的非常干净。
<?php
/**
* Copyright 2005 Zervaas Enterprises (www.zervaas.com.au)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
require_once('ArithmeJax.class.php');
$ajax = new ArithmeJax();
$ajax->handleRequest();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html>
<head>
<title>AjaxAC Sample Application: ArithmeJax</title>
<?= $ajax->loadJsCore(true) ?>
<style type="text/css">
#a, #b { width : 40px; }
#ans { width : 100px; }
</style>
</head>
<body>
<h1>ArithmeJax</h1>
<p>
ArithmeJax is simple Ajax application used to perform server-side arithmetic.
</p>
<ul>
<li><a href="index.phps">Source code for this file</a></li>
<li><a href="ArithmeJax.class.phps">Source code for ArithMeJax application</a></li>
<li><a href="index.php/jsapp">Generated application JS code</a></li>
</ul>
<form method="get" id="f">
<input type="text" name="a" id="a" />
<select name="op" id="op">
<?php foreach ($ajax->validOperators as $op) { ?>
<option value="<?= $op ?>"><?= $op ?></option>
<?php } ?>
</select>
<input type="text" name="b" id="b" />
=
<input type="text" name="ans" id="ans" readonly="readonly" />
<input type="submit" value="Calculate" />
</form>
<?= $ajax->attachWidgets(array('f' => 'f',
'loperand' => 'a',
'roperand' => 'b',
'operator' => 'op',
'answer' => 'ans')) ?>
<?= $ajax->loadJsApp(true) ?>
</body>
</html>
<?php
// multiply.php, multiply.common.php, multiply.server.php
// demonstrate a very basic xajax implementation with separate server and
// client files
// using xajax version 0.1 beta4
// http://xajax.sourceforge.net
require("multiply.common.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>xajax Multiplier</title>
<?php $xajax->printJavascript(); ?>
</head>
<body>
<input type="text" name="x" id="x" value="2" size="3" /> *
<input type="text" name="y" id="y" value="3" size="3" /> =
<input type="text" name="z" id="z" value="" size="3" />
<input type="button" value="Calculate" onclick="xajax_multiply(document.getElementById('x').value,document.getElementById('y').value);return false;" />
</body>
</html>
眼下最重要的工作是总结BestPractice和Design Pattern,以及避免Anti-pattern.
分享到:
相关推荐
【标题】"jboss-ajax4jsf-1.1.1-src" 是一个开源项目,主要涉及Ajax4jsf框架的源代码版本,版本号为1.1.1。Ajax4jsf是针对JavaServer Faces (JSF) 技术的一个扩展,它允许开发者在JSF应用中无缝集成Ajax功能,提升...
**Ajax4JSF-Demo 知识点详解**...综上所述,"ajax4jsf-demo"项目为学习和掌握Ajax4JSF库提供了一个实用的起点,通过深入研究和实践,开发者可以将Ajax4JSF的强大力量应用到自己的JSF项目中,提升应用的用户体验和效率。
Ajax4JSF 是一个开源项目,它为JavaServer Faces (JSF) 提供了Ajax功能的扩展。这个框架允许开发者在JSF应用中轻松实现异步数据更新,提升用户界面的交互性和响应性,无需深入学习复杂的JavaScript或Ajax技术。 ###...
在"JSF第一步--JSF+Spring+Hibernate+AJAX编程实践 试读"这本书中,读者可以期待学习如何设置这些技术的集成环境,创建JSF组件,配置Spring容器,理解Hibernate的映射和查询机制,以及如何在JSF中使用AJAX进行异步...
"ajax4jsf-1.1.1.jar" 是Ajax4JSF库的核心组件,它包含了一组预定义的UI组件和行为,以及用于处理Ajax请求和响应的底层实现。开发者可以将这个JAR文件添加到他们的项目类路径中,以便利用Ajax4JSF的功能。这个JAR...
在 JSF 中,页面间跳转可以通过多种方式实现,例如使用 h:commandLink、h:commandButton 等组件来实现页面跳转。AnyFo - JSF 九陰真經提供了详细的示例代码和解释,帮助开发者快速掌握页面间跳转的技术。 2.2 通过...
该框架使得在JSF环境中实现Ajax功能变得更加简单,无需编写JavaScript代码,而是通过一组组件和API来实现。 ### 1. **开始使用Ajax4jsf** - **环境需求**:首先,你需要一个支持Ajax4jsf的Java版本以及JavaServer ...
Ajax4jsf是另一个为JSF添加Ajax功能的库,由Apache软件基金会维护。它提供了一组预定义的JSF组件和行为,使得开发者可以在不离开JSF的框架下实现异步数据交换和页面部分更新。Ajax4jsf简化了Ajax集成,降低了开发...
总结来说,“ajax4jsf.zip”这个压缩包为开发者提供了开始使用Ajax4JSF所需的一切资源,使他们能够快速地在JSF项目中实现Ajax功能,提升应用的用户体验。通过深入理解和熟练运用Ajax4JSF,开发者可以创建出更加动态...
Ajax4JSF通过扩展JSF的UIComponent、UICommand和RenderKit接口,为JSF组件添加了Ajax支持。开发者可以使用内置的Ajax事件,如`preRenderView`、`valueChange`等,或者自定义事件,来触发Ajax请求。 ### 4. Ajax4JSF...
- **组件库**:Ajax4jsf提供了一系列内置的JSF标签库,用于简化Ajax功能的实现。 - **a4j:ajaxListener**:用于监听Ajax事件。 - **a4j:region**:定义区域内的元素响应Ajax事件。 - **a4j:page**:控制整个页面...
ajax4jsf-1.0.6.jarajax4jsf-1.0.6.jarajax4jsf-1.0.6.jar
ajax4jsf.jar是在jsf中封装应用ajax功能的包,其优点是不用编写ajax的代码
4. **Ajax4JSF使用手册**:Ajax4JSF是JSF的一个扩展,它为JSF添加了Ajax功能,允许部分页面更新,提升用户体验。学习Ajax4JSF,你将掌握如何在JSF应用中集成Ajax,创建异步交互,以及使用其提供的各种Ajax组件,如`...
Ajax4JSF(Ajax for JavaServer Faces)是一个开源框架,专为JavaServer Faces(JSF)应用程序添加Ajax功能。这个框架使得开发者无需编写JavaScript代码就能实现丰富的用户界面和交互性。Ajax4JSF充分利用JSF的优势...
Beans可以绑定到UI组件,从而实现数据的双向绑定,简化了用户输入的处理。 在事件处理方面,JSF支持两种类型的事件:组件级事件和应用程序级事件。组件级事件通常与用户交互有关,如按钮点击;应用程序级事件则可以...
根据给定的文件信息,我们可以总结出以下关于“Spring-Jbpm-JSF-Example”的关键IT知识点: ### 1. **项目概述** 标题与描述提到的“Spring-Jbpm-JSF-Example.pdf”是一个示例项目,展示了如何将Spring框架、Jbpm...
2. 开始使用Ajax4jsf 环境需求 下载Ajax4jsf 安装 简单的 AJAX Echo 项目 JSP 页面 数据 Bean faces-config.xml Web.xml 部署 3. Ajax4jsf 框架的基本概念 介绍 结构概览 如何做... 发送一个AJAX 请求 ...
该框架使开发者无需编写JavaScript代码就能实现Ajax交互,同时充分利用JSF的优势,如生命周期管理、验证、转换以及组件的灵活性。Ajax4JSF的设计目标是无缝集成到JSF生命周期中,提供Action和Value Change监听器、...