- 浏览: 7348903 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
前面总结关于Hessian的开发WebService的方法,在Caucho公司开发的有两种实现远程访问调用方式:Hessian和Burlap。
Burlap 简介
Burlap也是有caucho提供,它和hessian的不同在于,它是基于XML-RPC协议的。
1、是基于什么协议实现的?
基于XML-RPC协议实现。
2、怎么发起请求?
根据Burlap提供的API。
3、怎么将请求转化为符合协议的格式的?
将请求信息转化为符合协议的XML格式,转化为流进行传输。
4、使用什么传输协议传输?
Http协议。
5、响应端基于什么机制来接收请求?
监听Http请求。
6、怎么将流还原为传输格式的?
根据XML-RPC协议进行还原。
7、处理完毕后怎么回应?
返回结果写入XML中,由Burlap返回至调用端。
声明服务端接口:
package com.easyway.caucho.burlap.ws; import java.util.List; /** * 声明服务端相关的服务 * @author longgangbai * */ public interface IBurlapService { public String getUserName(); public List<String> getList(); public void setGreeting(String greeting); public String hello(); }
实现服务端的服务代码示例如下:
package com.easyway.caucho.burlap.ws; import java.util.ArrayList; import java.util.List; import com.caucho.burlap.server.BurlapServlet; /** * * 在Burlap中服务端的必须继承BurlapServlet 类同时实现相关的服务的接口 * * @author longgangbai * */ public class BurlapWS extends BurlapServlet implements IBurlapService{ private String _greeting = "Hello, world"; /** * */ public void setGreeting(String greeting) { _greeting = greeting; } /** * */ public String hello() { return _greeting; } /** * */ public List<String> getList() { List<String> strList=new ArrayList<String>(); strList.add("a"); strList.add("c"); strList.add("b"); strList.add("d"); strList.add("e"); strList.add("g"); strList.add("h"); strList.add("j"); strList.add("k"); strList.add("l"); strList.add("q"); return strList; } /** * */ public String getUserName() { return _greeting; } }
客户端访问代码如下:
package com.easyway.caucho.burlap.ws; import java.net.MalformedURLException; import com.caucho.burlap.client.BurlapProxyFactory; /** * Burlap客户端测试代码 * @author longgangbai * */ public class BurlapServiceWSClient { public static void main(String[] args) { String url = "http://localhost:8080/BurlapWS/remoting/burlapWs"; BurlapProxyFactory factory = new BurlapProxyFactory(); IBurlapService basic; try { basic = (IBurlapService) factory.create(IBurlapService.class, url); System.out.println("hello(): " + basic.getUserName()); System.out.println("getList(): " + basic.getUserName()); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
web.xml配置如下:
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <servlet> <servlet-name>burlapWs</servlet-name> <servlet-class>com.easyway.caucho.burlap.ws.BurlapWS</servlet-class> </servlet> <servlet-mapping> <servlet-name>burlapWs</servlet-name> <url-pattern>/remoting/burlapWs</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
发表评论
-
【转】Django resources
2014-01-23 14:35 10835Django resources This page li ... -
使用国内镜像源来加速python pypi包的安装
2014-01-16 11:16 197871pipy国内镜像目前有: http://pypi.d ... -
[转 ]vagrant使用简介
2014-01-10 13:53 257771> 简介: vagrant提供了易于配置,重复性 ... -
[转]在Java中调用Python
2014-01-07 13:08 9226在执行之前都需要把jython对应的包加载进去,这个是必须的 ... -
[转]Eclipse配置PyDev插件
2014-01-02 14:25 2844安装python解释器 安装PyDev: 首 ... -
RestFuse的研究(五) Http请求的封装
2014-06-14 15:50 3666在RestFuse中封装了Http请 ... -
RestFuse的研究(四) Junit的Statement的分析
2013-12-06 11:46 1681在RestFuse提供了多种单 ... -
RestFuse的研究(三) Junit的Rule的使用和分析
2013-12-06 11:01 2242在junit中定义一些可以公用的规则(R ... -
RestFuse的研究(二) Junit的Runner的分类和模式
2013-12-06 10:40 1608在Junit4中的调用JunitCore可以采 ... -
RestFuse的研究(一) HttpJunitRunner的实现
2013-12-06 10:11 1751在RestFuse是一种针对Rest We ... -
[转]An open-source JUnit extension to test HTTP/REST APIs
2013-12-06 09:57 1107http://developer.eclipsesource ... -
TestNG简单的学习(十三)TestNG中Junit的实现
2013-12-04 09:00 3359TestNG和junit的整合 ... -
TestNG简单的学习(十二)TestNG运行
2013-12-03 09:08 51605文档来自官方地址: ... -
TestNG简单的学习(十一)TestNG学习总结
2013-12-03 09:08 14228最近一直在学习关于TestNG方面的知识,根 ... -
TestNG简单的学习(十)TestNG @Listeners 的使用
2013-12-03 09:07 8703TestNG官方网站: http://testng.or ... -
TestNG简单的学习(九)TestNG Method Interceptors 的使用
2013-12-03 09:07 2720TestNG官方网站: http://testng ... -
TestNG简单的学习(八)TestNG Annotation Transformers 的使用
2013-12-03 09:07 2817TestNG官方网站: http://testng.or ... -
TestNG简单的学习(七)TestNG编程方式运行
2013-12-02 09:22 2462TestNG官方网站: http://testng.or ... -
TestNG简单的学习(六)测试工厂注释的使用
2013-12-02 09:22 2794TestNG官方网站: http://testng.or ... -
TestNG简单的学习(五)参数化测试数据的定制
2013-12-02 09:22 2708TestNG官方网站: http://testng.or ...
相关推荐
在这个“Burlap开发学习”主题中,我们可以深入探讨这个框架的基本概念、用途、以及如何进行实际的开发工作。 Burlap是一个基于Java的开源框架,主要用于构建网络服务,尤其是RPC(远程过程调用)服务。它的设计...
标题中的“闲着没事Hessian开发WebService的总结(一)”表明这是一篇关于使用Hessian框架开发Web服务的文章,作者可能在其中分享了个人的经验和理解。Hessian是一种轻量级的远程调用协议,它允许Java和.NET之间进行...
Burlap是一个轻量级的XML RPC协议 这使得他可以移植到任何可以解析XML的语言中 比起Hessian 它的可读性更强 和其他基于Xml的远程技术(如SOAP和XML RPC)不同 它的消息结构尽可能简单 不需要额外的外部定义语言 如...
burlap-2.1.12.jar
jar包,亲测可用
代码库,用于使用和开发单代理或多代理规划和学习算法以及伴随它们的域。 该库使用高度灵活的状态/观察表示,您可以在其中使用自己的 Java 类定义状态,从而支持离散域、连续域、关系域或其他任何域。 规划和学习...
**Python库burlap简介** Python作为一种强大的、广泛使用的编程语言,拥有丰富的第三方库支持,大大简化了开发者的任务。其中,`burlap`是一个相对较小但功能实用的库,主要用于处理网络请求和响应,特别是在构建...
《RLinBURLAP:BURLAP中的原型设计算法与强化学习技术》 RLinBURLAP项目专注于在BURLAP(Behavioral Representations, Utility Learning, and Planning in Action Spaces)框架内研究和实现强化学习(Reinforcement...
通过深入学习这本《Spring2.x 开发手册》,开发者不仅可以掌握Spring的基本用法,还能理解其设计哲学,从而在实际项目中灵活运用,提升开发效率和代码质量。手册中的实例和最佳实践将帮助读者快速上手,并逐步成为...
Spring 2.5 是一个广泛使用的 Java 框架,主要设计用于简化企业级应用程序的开发。该框架的核心特点在于其依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)能力。在Spring ...
ant 使用命令行可以运行单个类 java -cp ./lib/burlap.jar:./build/jar/burlap-seed.jar main.java.HelloGridWorld java -cp ./lib/burlap.jar:./build/jar/burlap-seed.jar main.java.GridWorldDemo 转换为适用于...
目前,包含的消息用于定义 BURLAP 状态 ROS 消息。 未来,我们计划添加消息支持,以传达 ROS 生成的奖励/终止值和 BURLAP 域规范。 状态消息取自 Kevin Farrell 和 Stephen 在使用。 您可以将这些消息与 ROSJava ...
《Spring Framework中文开发参考手册》是开发者们在进行Spring框架开发时的重要参考资料,它详尽地阐述了Spring的核心特性和使用方法。Spring Framework是Java平台上的一个开源应用程序框架,以其强大的依赖注入...
《Spring 2.5 开发手册》是一本深入解析Spring框架2.5版本的专业指南,旨在帮助开发者理解和应用这一强大的Java企业级应用框架。Spring框架以其依赖注入、面向切面编程以及全面的企业服务支持,成为了Java开发中的...
14.2.3. 帮助简化开发的额外的标签 14.3. Tiles 14.3.1. 需要的资源 14.3.2. 如何集成Tiles 14.4. Velocity和FreeMarker 14.4.1. 需要的资源 14.4.2. Context 配置 14.4.3. 创建模板 14.4.4. 高级配置 ...
spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类的...
1. **Spring支持的远程访问技术**:Spring框架支持多种远程访问技术,包括RMI(Remote Method Invocation)、JAX-RPC(Java API for XML-based Remote Procedure Call)、Hessian、Burlap、XFire以及Spring自带的...
Spring是一个广泛使用的Java应用框架,它可以与SSH一起使用,实现远程调用服务(如Hessian和 Burlap)或使用Spring的JMX支持通过SSH进行远程管理。这个部分可能会讲解如何配置Spring应用以支持SSH连接,以及如何使用...