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

JSON-RPC FOR JAVA使用说明

阅读更多

概述... 4

链接... 4

作者相关链接... 4

开源项目地址... 4

工程svn下载地址... 4

示例工程下载地址... 4

支持的浏览器... 5

Java对象到JavaScript对象的对照表... 5

功能介绍... 6

自动捕获异常... 6

JavaScript中释放注册的Java服务对象... 6

级联调用功能... 7

使用... 7

Web.xml配置... 7

引入Jar... 7

AJAX服务Java类的编写... 8

自己基类的编写... 9

AJAX服务Java类的注册... 10

自己注册基类的编写... 10

JSP中的使用... 12

引入JsonRpcClient.js. 12

调用... 12

英语版本... 13


概述

继《JavaScript高级应用与实践》之后推出的json-rpc-for-java开源代码,是仅仅100行的javascript代码和不到10java文件实现的超级轻量级的通过 javaScript快速调用java对象并返回任意对象的轻量级框架,并且支持级联调用,也就是说不需要额外 JavaScript编程,就可以通过javascript调用被注册的java对象并返回java对象,如果被返回的对象还有方法,这个在javascript中返回的java对象的变量,还可以继续调用它的方法.....这就是这个轻量级json-rpc-for-java的神奇之处。

链接

作者相关链接

作者csdn博客
作者新浪600多万次点击博客
作者网站

开源项目地址

http://code.google.com/p/json-rpc-for-java/

工程svn下载地址

http://json-rpc-for-java.googlecode.com/svn/trunk/

不需要用户名和密码。

示例工程下载地址

http://json-rpc-for-java.googlecode.com/files/JsonRpcExample2008-08-05.rar

测试环境:MyEclipseJRE1.4(1.6)tomcat 5.0(6.0) 如果你要测试,可以采用相应的环境,不一定要那么高版本的环境 ,Import工程后请注意修改工程中JRE为正确的路径:

<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_i1025" style="width: 414.75pt; height: 446.25pt;" type="#_x0000_t75"><imagedata o:title="" src="file:///C:%5CDOCUME%7E1%5Cjust%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image001.png"></imagedata></shape>

支持的浏览器

IE4IE5IE6IE7IE8 FireFoxOperaSafari等等。

Java对象到JavaScript对象的对照表

Java对象

JavaScript对象

说明

java.lang.String

String

java.lang.Object

String

调用java对象的toString()后转换到JavaScript

java.util.Datejava.sql.Timestamp

String

可是为yyyy-MM-dd HH: mm:ss.000,如果时分秒都为0,则为:yyyy-MM-dd

java.lang.Boolean

Blooean

对应的值:truefalse

java.lang.Character

String

单引号的字符串,例如:‘c’

java.lang.Short

java.lang.Integer

java.lang.Long

java.lang.Float

java.lang.Double

java.math.BigDecimal

Number

JavaScript中都为数字对象,可以直接参与加、减、乘、除运算

java.util.Map

Object

例如:obj[“key1”]obj[“key3”]obj.key3,唯独没有function的方法,当然,属于Object.prototypefunction属性依然有的

java.util.List

Array

例如:a[0]a[2].getList()

也就是说List里也可以存在复合对象,这些对象依然可以有自己的方法

null

null

空对象

其他Java对象

Object

例如:obj.displayName()obj.aac001,可以有属性和方法

功能介绍

自动捕获异常

在你编写的java服务类的方法中不需要try{….}catch(Exception e){},本框架会为你捕获错误消息,但你在javascript中没有获取到正确的数据,可以调用异步对象的方法getErrMsg()获取异常消息,该方法封装在jcore.jsonrpc.common.JsonRpcObject中,也就是AJAX服务java基类中。

JavaScript中释放注册的Java服务对象

你只需要在JavaScript中调用release()就可以释放注册的Java对象资源,详细见示例工程,或者见“

http://code.google.com/p/json-rpc-for-java/wiki/Wiki32

级联调用功能

不明白的地方请结合示例工程进行理解。

1Java中注册复合对象myjsonrpc

2JSP JavaScript中获取该对象:var myjsonrpc = JsonRpcClient().myjsonrpc;

3、调用被注册的java对象的方法getMyObj,返回复合的java对象TestDomain

var oDomain = myjsonrpc. getMyObj();

// 继续调用该返回的java对象的方法

alert(oDomain. toXml())

或者:alert(myjsonrpc. getList()[1].toXml());

如果toXml返回的还是一个复合的Java对象,你可以继续在JavaScript中继续调用,而不需要额外的编程。

使用

Web.xml配置

需要在web.xml中加入下面的配置“

  1. <servlet>
  2. <servlet-name>JSONRPCServlet</servlet-name>
  3. <servlet-class>
  4. jcore.jsonrpc.servlet.JSONRPCServlet
  5. </servlet-class>
  6. <load-on-startup>2</load-on-startup>
  7. </servlet>
  8. <servlet-mapping>
  9. <servlet-name>JSONRPCServlet</servlet-name>
  10. <url-pattern>/JRPC</url-pattern>
  11. </servlet-mapping>

引入Jar

需要在工程中引入:JSON-RPC.jarcommons-logging.jarcommons-logging-api.jar,其中后面两个jar在示例工程中的JsonRpcExample\webapp\WEB-INF\lib\ 下。示例工程下载地址:

http://json-rpc-for-java.googlecode.com/files/JsonRpcExample2008-08-05.rar

而,JSON-RPC.jar,你也可以引入源代码重新进行打包。

AJAX服务Java类的编写

必须继承与jcore.jsonrpc.common.JsonRpcObject并实现接口java.io.Serializable。例如示例工程中的AJAX服务Java类:

package test;

import java.io.Serializable;

import java.util.ArrayList;

import java.util.Date;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import jcore.jsonrpc.common.JsonRpcObject;

public class TestObject extends JsonRpcObject implements Serializable{

private static final long serialVersionUID = 1L;

private List myList = new ArrayList();

private Map map = new HashMap();

public TestObject()

{

myList.add("good");

myList.add(new TestDomain());

// map中也可以放入复合对象

map.put(Courier Ne

分享到:
评论

相关推荐

    JSON-RPC for Java使用说明

    在"JSON-RPC for Java使用说明.doc"文档中,你可能会找到关于如何设置和配置这些库的详细步骤,包括如何创建服务接口、如何启动服务器、如何创建客户端以及如何进行测试。此外,文档可能还会涵盖错误处理、异步调用...

    JSON-RPC for Java使用说明.doc

    JSON-RPC for Java 使用说明 JSON-RPC(JavaScript Remote Procedure Call)是一种轻量级的远程过程调用(RPC)协议,允许在不同语言和平台之间进行数据交换。以下是 JSON-RPC for Java 使用说明的知识点总结: ...

    JSON-RPC for Java.src 2.0

    1. "JSON-RPC for Java使用说明.doc":这是关于如何使用该框架的文档,通常会包含安装步骤、配置指南、API参考和示例代码等。 2. "JSON-RPC.jar":这是编译后的Java库文件,包含了JSON-RPC for Java的核心组件,可以...

    JSON-RPC for Java使用说明1

    import org.jsonrpc.JsonRpcServer; public class MyService { public String sayHello(String name) { return "Hello, " + name; } } ``` 这里,`sayHello`方法就是远程可以调用的一个方法,返回一个字符串。...

    json-rpc-for-java

    继《JavaScript高级应用与实践》之后推出的json-rpc-for-java开源代码,是仅仅100行的javascript代码和不到10个java文件实现的超级轻量级的通过 javaScript快速调用java对象并返回任意对象的轻量级框架,并且支持...

    Json-RPC for java Example

    json-rpc-for-java,是仅仅不到100行的javascript代码和不到10个java文件实现的超级轻量级的通过 javaScript快速调用java对象并返回任意对象的轻量级框架,并且支持级联调用,也就是说不需要额外 的JavaScript编程,...

    国人写的json-rpc-java的例子及jar包

    "JSON-RPC for Java使用说明.doc"是一个文档,详细解释了如何使用这个JSON-RPC Java库,对初学者来说非常有帮助。"JsonRpcClient.js"可能是一个JavaScript客户端的实现,用于与JSON-RPC Java服务端进行交互。 在...

    Json-RPC for java中文手册

    import jcore.jsonrpc.common.JsonRpcObject; public class MyTestRpc extends JsonRpcObject { public String getTestMsg() { return "噢,成功了!"; } } ``` 2. **在JavaScript中调用**:在客户端...

    java 使用json-rpc

    JSON-RPC for Java是一种基于JSON(JavaScript Object Notation)协议的远程过程调用(Remote Procedure Call)框架,它允许客户端通过网络调用服务器上的方法,实现了客户端与服务器端的轻量级通信。本文将详细解释...

    jabsorb1.3.2及json-rpc1.0含教程.rar

    json-rpc-java-1.0.tar.gz 老版的json-rpc 用jabsorb(json) for java编写AJAX应用程序.rar 从androidguy 的BLOG摘过来的简单教程。 支持一下原创:http://androidguy.blog.51cto.com/974126/215327

    JSON-RPC for Java-开源

    RPC-JSON for Java是J2EE的API,它支持客户端RPC,因此您可以轻松地从应用程序中调用Web服务。

    json-rpc-for-java:本开源作者的书)《 JavaScript高级应用与实践》之后推出的开源代码,小于100行js代码,小于10个java类,实现json rpc for java(AJAX调用java类方法);仅不到100行的javascript代码和不到10个java文件实现的超级轻量级​​的通过javaScript快速调用java对象并返回任意对象的轻量级框架,并支持级联调用,无需多余JavaScript编程,就可以通过javascript调用被注册的java对象并返回java对象,如

    json-rpc-for-java &lt;100行js代码,&lt;10个Java文件,漂亮的json rpc for java;仅不到100行的javascript代码和不到10个java文件实现的超轻量级的通过javaScript快速调用java对象并返回任意对象的轻量级框架,和...

    json 简单的例子

    继《JavaScript高级应用与实践》之后推出的json-rpc-for-java开源代码,是仅仅100行的javascript代码和不到10个java文件实现的超级轻量级的通过 javaScript快速调用java对象并返回任意对象的轻量级框架,并且支持...

    json.rar_Soap To json_java webservice json_json rpc SOAP_json we

    标题中的“json.rar_Soap To json_java webservice json_json rpc SOAP_json we”提到了几个关键点: 1. **SOAP to JSON**:SOAP(Simple Object Access Protocol)是一种基于XML的协议,用于在Web上交换结构化和...

    38个精选web开发资源

    1 Shadowbox效果.rar.gz 2 手风琴效果.rar.gz 3 日历效果.rar.gz 4 自定义窗口.rar.gz 5 图片剪切.rar.gz 6 翻页效果.rar.gz 7 相册效果.rar.gz 8 语法着色.rar.gz ... JSON-RPC for Java使用说明.rar

    XML-RPC for PHP-开源

    对于JavaScript版本的库,这意味着开发者可以在前端直接使用XML-RPC或JSONRPC,与后端PHP服务进行无缝交互,从而实现前后端分离的Web应用架构。 在实际应用中,XML-RPC常用于构建分布式系统、API接口、或者跨语言的...

    HTTP-RPC:轻量级REST for Java

    介绍HTTP-RPC是一个开放源代码框架,用于在Java中创建和使用RESTful和类似REST的Web服务。它非常轻巧,仅需要Java运行时环境和servlet容器。整个框架的大小约为100KB,使其成为需要最小占用空间的应用的理想选择。本...

Global site tag (gtag.js) - Google Analytics