首页 > 编程学习 > Buffalo ajax实例
20107 月14

Buffalo ajax实例

Buffalo是国人开发的Ajax框架,它可以使用户在js中方便的调用java代码里的方法。

后台配置方法:

  1. web.xml中配置相关servlet 如下:

            buffalo         net.buffalo.web.servlet.ApplicationServlet    

            buffalo         /buffalo/*    

  1. 需要引入的jar包为:

加入两个jar包:buffalo-2.0.jar和commons-logging-api-1.0.4.jar(下载包里有,下载地址见文章最后)。

注:若commons-logging-api-1.0.4.jar不加入,会抛出异常。

  1. 编写需要调用的业务类。 如:
  2. desktopService.java
    package oa.ajax;

/**

  • Created by IntelliJ IDEA.
  • User: wizzer
  • Date: 2010-7-15
  • Time: 16:08:22
  • To change this template use File | Settings | File Templates. */ public class desktopService { public String getInfoCount(String userId,String depId){

          return "0|1|2";
     }

    }

  1. 配置文件中配置业务类

 配置文件为:buffalo-service.properties  位置在classes下    内容如下:   desktopService=oa.ajax.desktopService    多个类则配置多个: 格式 名称=业务类全名    注意:js里则通过  desktopService来代替oa.ajax.desktopService类执行其中的业务方法    到此后台代码结束

下面为前台调用

  1. 在jsp中引入js文件:prototype.js 和 buffalo.js 文件

     

  1. 编写调用js代码

注意:helloService这个是配置文件中配置的名称

  
      var endPoint = "/buffalo"; 
      var buffalo = new Buffalo(endPoint);   
      var userId= "wizzer";
      var deptId = "HITS";

function getEventCount() {
 try {
  var buffalo = new Buffalo(endPointTop);

         buffalo.remoteCall("desktopService.getInfoCount", [userId, deptId], function(reply) {

                var str = reply.getResult();
             var ary = str.split("|");

    document.getElementById("msg").innerHTML = "(" + ary[0] + ")";
    document.getElementById("mail").innerHTML = "(" + ary[1] + ")";
    document.getElementById("wait").innerHTML = "(" + ary[2] + ")";
         });
 } catch (ex) {
 }
}

   

                 消息

 信箱
 待办
        Buffalo ajax 最新版下载地址:http://buffalo.sourceforge.net/download.html

本文地址:https://wizzer.cn/archives/232 , 转载请保留.

本文目前尚无任何评论.

发表评论