关于Tomcat调用Weblogic容器Ejb T3协议
Tomcat调用Weblogic的T3协议!!!
简略介绍下二者:
(一):概括介绍这两种服务器WebLogic是美国bea公司出品的一个application
server,确切的说是一个基于Javaee架构的中间件,纯java开发的,最新版本WebLogic
Server9.0是迄今为止发布的最卓越的BEA应用服务器。BEA
WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java
Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。完全遵循J2EE 1.4规范。
Tomcat服务器是一个免费的开源的Web 应用服务器,是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun
和其他一些公司及个人共同开发而成。因为Tomcat技术先进、性能稳定,运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且很重要的是她免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。而且由于开源,它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
(二) :相同点
- WebLogic和Tomcat都是基于java的基础架构来满足实时处理需求,不同的版本与jdk版本兼容和有所不同;因为都是要和前台交互,所以他们都基于sun公司的servlet来实现的。
(三):不同点
- 功能性:
WebLogic更加强大。weblogic是j2ee的应用服务器(application server),包括ejb ,jsp,servlet,jms等等,全能型的。是商业软件里排名第一的容器(JSP、servlet、EJB等),并提供其他如JAVA编辑等工具,是一个综合的开发及运行环境。
WebLogic应该是J2EE Container(Web Container + EJB Container + XXX规范)!
Tomcat只能算Web Container,是官方指定的JSP&Servlet容器。只实现了JSP/Servlet的相关规范,不支持EJB(硬伤啊)!不过Tomcat配合jboss和apache可以实现j2ee应用服务器功能
一般来说考虑stucts等架构tomcat就可以了,但如果考虑EJB的话,WebLogic是比较好的选择。
简略介绍二者之后,进入正题。
- Tomcat的应用远没有Weblogic的广泛,本身没有实现ejb,esb等规范,如果要在Tomcat中调用Weblogic项目的t3协议的接口,不做其他一些操作是无法调用成功的。T3协议是weblogic容器内部使用的一种数据交互协议,tomcat并不支持。
该如何解决这个问题,有三种思路:
1,在tomcat中模拟出weblogic运行的环境出来,具体的措施就是添加一个weblogic组件,即手动将weblogic目录下server/lib里的所有jar打成一个Jar包,习惯命名wlfullclient.jar.然后将该jar包扔进Tomcat项目下WEB-INF/lib文件夹中,自动添加该包到项目的classpath。
需要注意的是并非随便一个版本的weblogic wlfullclient.jar都可以与tomcat兼容,这两者之间存在最佳适配的版本,
根据我的项目经验:我使用的tomcat版本是7.0.62, weblogic版本是wlserver_8.3 jdk版本是1.6,这样的版本搭配运行起来没有问题。
如果这三个版本,其中某一个或高或低,都不能形成一个很好的版本兼容,最终的结果就是无法运行。
总结一个版本搭配的原则:以JDK的版本为基础参照,JDK 1.6版可对应Tomcat 6.0 7.0 ,weblogic版本 8.3到10.3之间的版本;
记住一个原则 高版本的jdk要对应较高版本的Tomcat 和weblogic,低版本jdk对应低版本omcat 和weblogic。
2,换一种思路,既然二者不能直接用T3协议进行数据交互,那么是否考虑使用第三方的组件,来撮合二者的数据交互呢,显然是可以的。
Web Service刚好对不同容器之间进行数据交互,进行很好的协调。
Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。
Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件, 就可相互交换数据或集成。依据Web Service规范实施的应用之间, 无论它们所使用的语言、 平台或内部协议是什么,都可以相互交换数据。
这种方案相较上一种方案,操作起来复杂一点,但由于Web Service本身奉行简单操作,所以使用起来,并不困难。一旦熟练使用webservice,基本可以解决所有不同容器,不同环境,任何协议的数据交互问题了。
3,第三种,既然Tomcat无法实现ejb,无法用t3协议进行交互,那么是否可以考虑更换到weblogic容器,这种方法最笨,最大动干戈,但也是最具有拓展性,一劳永逸的做法。当然这要根据自己项目的情况而定,可以更换,优先选择更换容器,不能更换,那就先考虑第一种,再考虑第二种方案。***本篇博客,先以介绍思路为主。后面另开博客,讲解这个过程中出现的异常,以及如何解决,附上相关jar和代码!!!***
关于Tomcat调用Weblogic容器Ejb T3协议相关推荐
- Weblogic12c T3 协议安全漏洞分析【CVE-2020-14645 CVE-2020-2883 CVE-2020-14645】
给个关注?宝儿! 给个关注?宝儿! 给个关注?宝儿! 关注公众号:b1gpig信息安全,文章推送不错过 ## 前言 WebLogic是美国Oracle公司出品的一个application server ...
- 通过 T3 协议使用 WebLogic RMI
http://edocs.weblogicfans.net/wls/docs92/rmi/rmi_t3.html 通过 T3 协议使用 WebLogic RMI 以下部分提供有关通过 T3 协议使用 ...
- 关于weblogic的t3协议
问题描述:分行自使用BBIP以来,一直都是通过打一个tar都测试环境投产部署来进行测试,流程极其繁琐,光重启应用就得5分钟,现致力于解决此问题,通过在本地编写单元测试进行调试,但行内系统开发不像普通的 ...
- weblogic T3协议(附python脚本)
前言 前段时间总结了weblogic历年来的rce漏洞,并编写了poc,这些漏洞中有好几个都要用到T3协议来发送序列化数据,所以需要用python来模拟实现t3协议,当然t3协议脚本,github上就 ...
- weblogic t3 协议利用与防御
weblogic t3 协议利用与防御 原创 360-CERT [360CERT](javascript:void(0)
- tomcat(5)servlet容器
[0]README 0.0)本文部分文字描述转自:"深入剖析tomcat",旨在学习 tomcat(5)servlet容器 的基础知识: 0.1)intro to servlet容 ...
- tomcat(5)servlet容器(lastest version)
[0]README 0.0)本文部分文字描述转自:"深入剖析tomcat",旨在学习 tomcat(5)servlet容器 的基础知识: 0.1)intro to servlet容 ...
- 基于weblogic 的EJB 学习笔记-JSP教程,资料/其它
http://www.west263.com/www/info/14655-1.htm ejb 学习笔记 1.ejb 基础知识 (1) 无状态会话bean 不保存客户机的会话状态 优点 ...
- ejb能调用另一个ejb吗_EJB 3词汇表
ejb能调用另一个ejb吗 版本1.1.2,最新更新17.07.2006. 这是EJB 3中引入的新术语和概念的基本词汇表.该词汇表使诸如(IoC),按异常配置,POJO,POJI,依赖注入,可嵌入对 ...
最新文章
- eclipse+ADT 进行android应用签名打包详解
- 豆瓣读书评分 8.7 以上! 这 40 本 Python 畅销书包邮送
- 《MySQL 8.0.22执行器源码分析(2)解读函数 ExecuteIteratorQuery》
- 表示数值的字符串(有限状态自动机与搜索)
- MFC中五个初始类的作用
- cocos2d-x3.10 适配 IPV6
- 苹果 iPhone/iPad 第三方键盘为何没语音听写功能?真相了
- 从实战进阶系列之DNF脚本实战
- 输电线缺陷检测 计算机工程与设计,工业CT检测与计算机深度学习
- Project软件安装包下载project安装教程
- 电脑连接android手机测试,Android系统手机通过USB连接电脑上网
- perl中tr的用法
- Docker六大优势,云中部署模式、以及视频demo
- JSON.parse报错: Unexpected identifier
- Alcatel-Lucent 命令记录
- python写微信小程序源码示例_python实现微信小程序用户登录、模板推送
- 京东智能客服言犀意图体系搭建和意图识别技术介绍
- python的pandas库下载_pandas库下载安装-Pandas for python下载v0.25.0最新版-西西软件下载...
- ORACLE UGA与CGA
- ios 客户端IPV6网络超时等相关问题