`
mechiland
  • 浏览: 9900 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

Buffalo 2.0-alpha1 发布

阅读更多
给那些久等的人....Buffalo 2.0-alpha1 发布!

最大的变动莫过于将站点从java.net迁移到sourceforge, 以及全新实现的buffalo protocal。效率提升30%

变动列表:

* 支持方法重载
* 重新实现协议,更好的解析和缓存,效率比1.2.x系列提升30%
* onTimeout和onException事件支持
* 更友好的错误信息显示
* 代码库迁移到sourceforge,采用subversion
* 采用maven管理项目

新的地址:http://buffalo.sourceforge.net
下载:http://sourceforge.net/project/showfiles.php?group_id=178867&package_id=206392&release_id=453305
  • 描述: buffalo benchmark
  • 大小: 25.8 KB
分享到:
评论
18 楼 iton 2007-07-23  
一直都用buffalo ,不过是旧版的。
  找个时间对buffalo2.0 深入学习
17 楼 fglbee 2007-07-12  
buffalo2.0是不是要在jdk1.5上运行。在jdk1.4可以吗?
16 楼 icefire 2007-04-12  
很少看到它的新闻,有时间学习一下!
15 楼 hbomb 2007-04-12  
好东西啊,用了一下,感觉满简单的
14 楼 piaochunzhi 2007-04-10  
有没有 项目 看看 怎么用啊 ,学习别人代码 !这样比较 好学习
13 楼 mechiland 2007-03-23  
目前buffalo 2.0已经发布到第四个alpha版本,看起来很可能是alpha系列的最后一个版本。之前报告的bug(主要集中在session管理和服务器兼容上)已经基本解决。buffalo现在已经比较稳定了,在论坛里已经有不少人将它使用在生产环境中。

目前已知的bug是在resin服务器里面有时候会丢session, 其他应用服务器应用正常。

由于用户规模比较小,bug反馈也不是很快,因此开发速度不是很快,但buffalo一直在持续改进。
12 楼 itstarting 2007-03-22  
这个框架确实简单有效,实现思路也很简洁明了。
正在组织部门同事开展学习,既是框架性的,也是思路性的。

目前主要是在学习后台部分,粗略看了一下,有两点不成熟的想法:
1、前后台交互基于xml。基于xml其实无可厚非,没必要因为json而一梆子打死,就如mechiland说的,xml更富于表达。但这个xml的定义值得商榷:目前可能方便协议的堆栈处理,但未必方便扩展,尤其在对复杂对象的操作上;
2、是否考虑在后台对请求-寻址-输出环节上适当松耦合些,为请求-(AOP式请求对象转换,optional)-寻址-AOP式请求对象转换,optional)-输出?

多学习多交流
11 楼 rasonyang 2007-03-14  
支持。希望尽快发布Buffalo 2 GA.
我们现在的框架已经采用Buffalo 1.2,比DWR确实方便很多,
希望尽快集成buffalo 2.
10 楼 jianfeng008cn 2007-03-02  
最近没什么声音了 还在继续吗?
本打算学习下的,看没声了就没实行
9 楼 chenlb 2007-03-01  
建议搞个中文版的文档
8 楼 rasonyang 2007-02-14  
一直很想说,非常感谢这个项目buffalo.
7 楼 wubg 2006-10-27  
我之前也是用buffalo.1.2版本的,就是好像是对数据型的数据,只会传出[Object]要进行手工转换,其他的都很好,现在系统上用也很稳定,不过在新的公司都是用XMLHTTP来实现,郁闷,什么东东都要自己构造
6 楼 badqiu 2006-10-25  
看了一下Buffalo,感觉不错.不过希望Buffalo2.0正式版的时候也提供server端js生成,这样对程序员比较方便
DWR用的人多,我觉得这个是主要原因
5 楼 摆渡人 2006-10-24  
我一直觉得buffalo够简单。

今天又发现一个不足之处。我在1.2版里。绑定table里看了脚本,发现无法对行与列进行符上属性。
比如我生成一个行tr.id。这里我就可是让一个行定义一个id,这样我可以在页面上对表格进行增删改。
与查询操作。
4 楼 摆渡人 2006-10-14  
我是在jsp页面上select加了个属性jselected="2".
BindFactory.bindSelect = function(elem, value) {
	//TODO: Check the data type
	if (typeof(value) != "object" || value.constructor != Array) {
		BindFactory.reportError(elem,value,"绑定到Select控件需要数组类型数据!");
	}
	// delete all the nodes.
	while (elem.childNodes.length > 0) {
		elem.removeChild(elem.childNodes[0]);
	}
	
	// bind data
	var sel = "";
	for (var i = 0; i < value.length; i++) {
		
		var option = document.createElement("OPTION");
		//option = new Option();
		var data = value[i];
		if (data == null || typeof(data) == "undefined") {
			option.value = "";
			option.text = "";
		}
		if (typeof(data) != 'object') {
			option.value = data;
			option.text = data;
		} else {
			option.value = data[elem.getAttribute("jvalue")];
			option.text = data[elem.getAttribute("jtext")];	
			if(data.length >= 3 && data[elem.getAttribute("jselected")] == "selected"){
				//alert("is select option");
				sel = data[elem.getAttribute("jvalue")];
				//option.selected = true;
			}
		}
		elem.options.add(option);
	}
		/*
                     我在用上面的改法option.selected = true;就是不会预选。
                         后来我只能改为下面的等全部option加载完之后,则可以预选。
                        不知道为何
                   */
		for(var b = 0; b < value.length; b++){
			if(elem.options[b].value == sel){
				elem.options[b].selected = true;
				break;
			}
		}
	
}


另外:想问两个问题,请指教,谢谢。
1。请问用了buffalo之后,在页面里有大量的javascript暴露出来呢。该如何解决是好呢,加密?
   有没有办法,在写代码时编辑器里可以看到规则源的脚本,当发布应用时,用户打开页面:查看源文件,里是显示乱码或者说加密过了脚本呢。

2。想问有关burlap的用法,看代码不是很明白。
在下面代码中那传入类里的输入流的数据应是在脚本里组串好,然后burlap在返回里会把流自动转化为相应的XML字符串,然后把解析输出的XML的任务交给脚本去解析吗。。。
..........
		try {
			_service = Class.forName(serviceClazz).newInstance();
			
			if (_service instanceof BuffaloService) {
				//System.out.println(_service);  
				((BuffaloService) _service).init(getServletContext(), request);
			}
			_skeleton = new BurlapSkeleton(_service);
		} catch (Exception ex) {
			throw new ServletException(ex);
		}
		InputStream is = request.getInputStream();
		OutputStream os = response.getOutputStream();

		BurlapInput in = new BurlapInput(is);
		BurlapOutput out = new BurlapOutput(os) {
			public void startReply() throws IOException {
				print("<?xml version=\"1.0\" encoding=\"utf-8\"?><burlap:reply xmlns:burlap=\"http://www.amowa.net/buffalo/\">");
			}
		};

		try {
			_skeleton.invoke(in, out);
		} catch (Throwable e) {
			throw new ServletException(e);
		}
................
3 楼 mechiland 2006-10-10  
已接受。

初步实现方式判断在data中有没有selected属性,如果有并且为true或者对应的字符串就会选中。
2 楼 摆渡人 2006-10-09  
我还是用旧版了。因为够用了

最近才发现有个功能少了。在select里动态加载,但好像不能预选某个option吧。

代码如下:
BindFactory.bindSelect = function(elem, value) {
	..................
	for (var i = 0; i < value.length; i++) {
		
		var option = document.createElement("OPTION");
		
		var data = value[i];
		if (data == null || typeof(data) == "undefined") {
			option.value = "";
			option.text = "";
		}
		if (typeof(data) != 'object') {
			option.value = data;
			option.text = data;
		} else {
			option.value = data[elem.getAttribute("jvalue")];
			option.text = data[elem.getAttribute("jtext")];	
		}
		elem.options.add(option);
	}
}

上面没有可以生成预选项
我是自已打算改一下这个脚本根据值来判断,我是想在java的类里新建数组(在加入List)时多加一个值变成new String[]{"value","text","预选"}
然后在脚里查看有没有第三个值,如果有加上elem.selected=true;

请问楼主这样子可行吗。

不知新版的buffalo有没有这功能。旧版式的没看到不知在那里。。。
1 楼 yuxie 2006-10-08  
非常期待~
我一直以为,虽然细节上也许还有些需要改进,不过buffalo仍然是所有java ajax框架中是最自然的。比起动态生成js的dwr和丑陋无比的ww ajax tag..buffalo真是做得太好了

相关推荐

Global site tag (gtag.js) - Google Analytics