目前好像开源的项目里面还没有关于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();
?>
loadJsCore(true) ?>
ArithmeJax
ArithmeJax is simple Ajax application used to perform server-side arithmetic.
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");
?>
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
printJavascript(); ?>
*
=
眼下最重要的工作是总结BestPractice和Design Pattern,以及避免Anti-pattern.
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=475792