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

来源:互联网 发布:免费彩票计划软件 编辑:程序博客网 时间:2024/04/29 08:41

目前好像开源的项目里面还没有关于ajax-jsf结合的比较好的方案。

用标签库封装的最终目标应该是实现工业级的组件重用。模板语言里面在开发的时候不需要接触到复杂javascript代码。参考了两个php模板得ajax-tag项目ajaxac和xajax,都封装的非常干净。

    /**
     * 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();
?>


   
        AjaxAC Sample Application: ArithmeJax
        loadJsCore(true) ?>

       
            #a, #b { width : 40px; }
            #ans { width : 100px; }
       
   
   
       

ArithmeJax

       


            ArithmeJax is simple Ajax application used to perform server-side arithmetic.
       

       


               
  • Source code for this file

  •            
  • Source code for ArithMeJax application

  •            
  • Generated application JS code

  •        

       


           
           
           
            =
           
           
       


        attachWidgets(array('f'        => 'f',
                                       'loperand' => 'a',
                                       'roperand' => 'b',
                                       'operator' => 'op',
                                       'answer'   => 'ans')) ?>

        loadJsApp(true) ?>

   

// 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");
?>


 
  xajax Multiplier
  printJavascript(); ?>
 
 
   *
   =
  
  
 



眼下最重要的工作是总结BestPractice和Design Pattern,以及避免Anti-pattern.



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=475792