`
ww2
  • 浏览: 416014 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

开始为exoplatform实现ajax-jsf组件。

阅读更多

目前好像开源的项目里面还没有关于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

    【标题】"jboss-ajax4jsf-1.1.1-src" 是一个开源项目,主要涉及Ajax4jsf框架的源代码版本,版本号为1.1.1。Ajax4jsf是针对JavaServer Faces (JSF) 技术的一个扩展,它允许开发者在JSF应用中无缝集成Ajax功能,提升...

    ajax4jsf-demo

    **Ajax4JSF-Demo 知识点详解**...综上所述,"ajax4jsf-demo"项目为学习和掌握Ajax4JSF库提供了一个实用的起点,通过深入研究和实践,开发者可以将Ajax4JSF的强大力量应用到自己的JSF项目中,提升应用的用户体验和效率。

    ajax4jsf实例

    Ajax4JSF 是一个开源项目,它为JavaServer Faces (JSF) 提供了Ajax功能的扩展。这个框架允许开发者在JSF应用中轻松实现异步数据更新,提升用户界面的交互性和响应性,无需深入学习复杂的JavaScript或Ajax技术。 ###...

    JSF第一步--JSF+Spring+ Hibernate+AJAX编程实践 试读

    在"JSF第一步--JSF+Spring+Hibernate+AJAX编程实践 试读"这本书中,读者可以期待学习如何设置这些技术的集成环境,创建JSF组件,配置Spring容器,理解Hibernate的映射和查询机制,以及如何在JSF中使用AJAX进行异步...

    ajax4jsf-1.1.1.jar.zip

    "ajax4jsf-1.1.1.jar" 是Ajax4JSF库的核心组件,它包含了一组预定义的UI组件和行为,以及用于处理Ajax请求和响应的底层实现。开发者可以将这个JAR文件添加到他们的项目类路径中,以便利用Ajax4JSF的功能。这个JAR...

    AnyFo - JSF 九阴真经

    在 JSF 中,页面间跳转可以通过多种方式实现,例如使用 h:commandLink、h:commandButton 等组件来实现页面跳转。AnyFo - JSF 九陰真經提供了详细的示例代码和解释,帮助开发者快速掌握页面间跳转的技术。 2.2 通过...

    Ajax4jsf 用户手册

    该框架使得在JSF环境中实现Ajax功能变得更加简单,无需编写JavaScript代码,而是通过一组组件和API来实现。 ### 1. **开始使用Ajax4jsf** - **环境需求**:首先,你需要一个支持Ajax4jsf的Java版本以及JavaServer ...

    seam+jsf+richfaces+ajax4jsf 电子书

    Ajax4jsf是另一个为JSF添加Ajax功能的库,由Apache软件基金会维护。它提供了一组预定义的JSF组件和行为,使得开发者可以在不离开JSF的框架下实现异步数据交换和页面部分更新。Ajax4jsf简化了Ajax集成,降低了开发...

    ajax4jsf.zip

    总结来说,“ajax4jsf.zip”这个压缩包为开发者提供了开始使用Ajax4JSF所需的一切资源,使他们能够快速地在JSF项目中实现Ajax功能,提升应用的用户体验。通过深入理解和熟练运用Ajax4JSF,开发者可以创建出更加动态...

    ajax4jsf使用中文手册

    Ajax4JSF通过扩展JSF的UIComponent、UICommand和RenderKit接口,为JSF组件添加了Ajax支持。开发者可以使用内置的Ajax事件,如`preRenderView`、`valueChange`等,或者自定义事件,来触发Ajax请求。 ### 4. Ajax4JSF...

    ajax 4jsf用户指南中文版

    - **组件库**:Ajax4jsf提供了一系列内置的JSF标签库,用于简化Ajax功能的实现。 - **a4j:ajaxListener**:用于监听Ajax事件。 - **a4j:region**:定义区域内的元素响应Ajax事件。 - **a4j:page**:控制整个页面...

    ajax4jsf-1.0.6.jarajax4jsf-1.0.6.jar

    ajax4jsf-1.0.6.jarajax4jsf-1.0.6.jarajax4jsf-1.0.6.jar

    ajax4jsf-1.1.0.jar

    ajax4jsf.jar是在jsf中封装应用ajax功能的包,其优点是不用编写ajax的代码

    JSF全套(JSF入门教+ LIB+ Ajax4JSF使用手册 )

    4. **Ajax4JSF使用手册**:Ajax4JSF是JSF的一个扩展,它为JSF添加了Ajax功能,允许部分页面更新,提升用户体验。学习Ajax4JSF,你将掌握如何在JSF应用中集成Ajax,创建异步交互,以及使用其提供的各种Ajax组件,如`...

    ajax4jsf中文用户指南

    Ajax4JSF(Ajax for JavaServer Faces)是一个开源框架,专为JavaServer Faces(JSF)应用程序添加Ajax功能。这个框架使得开发者无需编写JavaScript代码就能实现丰富的用户界面和交互性。Ajax4JSF充分利用JSF的优势...

    JSF.rar_0 猜迷-jsf_JSF

    Beans可以绑定到UI组件,从而实现数据的双向绑定,简化了用户输入的处理。 在事件处理方面,JSF支持两种类型的事件:组件级事件和应用程序级事件。组件级事件通常与用户交互有关,如按钮点击;应用程序级事件则可以...

    Spring-Jbpm-JSF-Example.pdf

    根据给定的文件信息,我们可以总结出以下关于“Spring-Jbpm-JSF-Example”的关键IT知识点: ### 1. **项目概述** 标题与描述提到的“Spring-Jbpm-JSF-Example.pdf”是一个示例项目,展示了如何将Spring框架、Jbpm...

    ajax4jsf中文教程

    2. 开始使用Ajax4jsf 环境需求 下载Ajax4jsf 安装 简单的 AJAX Echo 项目 JSP 页面 数据 Bean faces-config.xml Web.xml 部署 3. Ajax4jsf 框架的基本概念 介绍 结构概览 如何做... 发送一个AJAX 请求 ...

    Ajax4JSF用户指南

    该框架使开发者无需编写JavaScript代码就能实现Ajax交互,同时充分利用JSF的优势,如生命周期管理、验证、转换以及组件的灵活性。Ajax4JSF的设计目标是无缝集成到JSF生命周期中,提供Action和Value Change监听器、...

Global site tag (gtag.js) - Google Analytics