菜鸟学EJB(二)——在同一个SessionBean中使用@Remote和@Local
不废话。直接进入正题:
在Jboss4及曾经的版本号中,例如以下代码能够成功部署:
package com.tjb.ejb;import javax.ejb.Local;
import javax.ejb.Remote;
import javax.ejb.Stateless;@Stateless
@Remote
@Local
public class UserManagerBean implements UserManager {public void saveUser(User user) {System.out.println("User对象已被保存");}}
从代码能够看出。UserManagerBean对接口UserManager 同一时候声明了远程和本地两种公布方式。这样的方式在Jboss4及曾经的版本号中是被同意的,可是Jboss5以后的版本号则觉得这是错误的(详细从哪个版本号開始改的,这里就不追究了)。假设将上面的代码部署到Jboss5中,会出现下面的错误提示:
java.lang.RuntimeException: @Remote and @Local may not both be specified on the same interface "interface
com.lzq.ejb.UserManager" for EJB "UserManagerBean" per EJB3 Spec 4.6.6, Bullet 5.4 [EJBTHREE-751]at org.jboss.ejb3.proxy.factory.ProxyFactoryHelper.getLocalAndBusinessLocalInterfaces(ProxyFactoryHelper.java:233)at org.jboss.ejb3.proxy.factory.ProxyFactoryHelper.getLocalBusinessInterfaces(ProxyFactoryHelper.java:550)at org.jboss.ejb3.session.SessionContainer.resolveBusinessInterfaces(SessionContainer.java:192)at org.jboss.ejb3.EJBContainer.instantiated(EJBContainer.java:1564)at org.jboss.ejb3.session.SessionContainer.instantiated(SessionContainer.java:182)at org.jboss.ejb3.Ejb3Deployment.deployElement(Ejb3Deployment.java:726)... 33 more
依据第一句话就能看出来。是由于不同意对同一个接口同一时候声明Remote和Local两种公布方式,因此。在Jboss5中要实现这样的功能,就须要实现两个接口。代码例如以下:
package com.tgb.ejb;import javax.ejb.Local;
import javax.ejb.Remote;
import javax.ejb.Stateless;@Stateless
@Remote(value=UserManagerRemote.class)
@Local(value=UserManagerLocal.class)
public class UserManagerBean implements UserManagerLocal,UserManagerRemote {@Overridepublic void saveUser(User user) {System.out.println("Use对象已被保存"); }}
假设两个接口中的方法同样。重写一个就可以。
结论:在Jboss4及曾经的版本号。能够在一个SessionBean中对同一个接口同一时候声明Remote和Local两种公布方式;而在Jboss5以后的版本号中则不同意这样的方式。假设要在一个SessionBean中同一时候使用Remote和Local方式。则必须实现两个接口。并指明哪个接口用哪种方式。推荐使用另外一种。由于不论什么版本号的Jboss都支持此方式。
菜鸟学EJB(二)——在同一个SessionBean中使用@Remote和@Local相关推荐
- 教妹学Java(二十):一文带你彻底了解 Java 中的注释,干货了
你好呀,我是沉默王二,一枚颜值与才华俱在的程序员.本篇教程通过我和三妹对话的形式来谈一谈"Java 中的注释". 教妹学 Java,没见过这么有趣的标题吧?"语不惊人死不 ...
- 菜鸟学Linux 第031篇笔记 script,控制,while,function
菜鸟学Linux 第031篇笔记 script,控制,while,function 一.脚本需求: 说明:此脚本能于同一个repo文件中创建之个yum源的指向: 1.接受一个文件名作为参数,此文件存放 ...
- 菜鸟学Kubernetes(K8s)系列——(七)关于Kubernetes底层工作原理
菜鸟学Kubernetes(K8s)系列--(七)关于Kubernetes底层工作原理 Kubernetes系列文章 主要内容 菜鸟学Kubernetes(K8s)系列--(一)关于Pod和Names ...
- 菜鸟学算法一基础知识篇
菜鸟学算法<一>知识准备篇 刚刚上任,急着给兄弟们一点见面礼,嘿嘿 前言:论坛上有关算法分析的文章不少,也不少精品 但对于刚学CARACK来说,只是叹为观止 原因如下: 1.论坛高手如云, ...
- python语言入门教程-菜鸟学Python入门教程大盘点|7个多月的心血总结
原标题:菜鸟学Python入门教程大盘点|7个多月的心血总结 阅读本文大概需要5分钟 菜鸟学python已经写了70几篇,入门的教程已经快写完了,我把入门的文章整理了一下,下面是入门篇的一些总结,也是 ...
- 菜鸟学Linux 第034篇笔记 vmlinuz, initrd, modules, script
菜鸟学Linux 第034篇笔记 vmlinuz, initrd, modules, script 内核两部分 核心 /boot/vmlinuz-version 内核模块 /lib/modules/ ...
- 菜鸟学Linux 第095篇笔记 MySQL 5.6主从复制
菜鸟学Linux 第095篇笔记 MySQL 5.6主从复制 内容总览 主从服务器复制过滤 MySQL 5.6 简单主从模式配置步骤 mysql-proxy 主从服务器复制过滤 主服务器配置 基于数据 ...
- python入门教程(非常详细)-菜鸟学Python入门教程大盘点|7个多月的心血总结
原标题:菜鸟学Python入门教程大盘点|7个多月的心血总结 阅读本文大概需要5分钟 菜鸟学python已经写了70几篇,入门的教程已经快写完了,我把入门的文章整理了一下,下面是入门篇的一些总结,也是 ...
- 动手学Docker-第二弹-基本操作
动手学Docker-第二弹-基本操作 Docker三大基本概念 镜像Image 容器Container 仓库Repository Docker Registry Docker Registry 公开服 ...
最新文章
- Facebook如何预测广告点击:剖析经典论文GBDT+LR
- 管理你的代码——Git学习(一)
- 给服务器端下拉asp:DropDownList 绑定改变事件,Ajax绑定下拉
- Smarty模板技术学习
- 高性能网站建设指南——网站优化的14条建议
- jQuery的hide() 、show() 、toggle()
- 产教融合,共塑未来”,CIE 2018 中国 IT 教育博鳌论坛盛大落幕
- oracle安装很慢,oracle11g安装后电脑启动很慢怎么解决
- Phoenix Framework 1.4.7,自动化测试平台
- java序列化 反序列化_Java序列化– Java序列化
- win10系统回收站隐藏的方法
- ubuntu+python2.7+tensorflow-gpu安装
- 嵌入式linux dlna,DLNA 编译
- 云计算与大数据复习题
- HTML——表格合并
- 判断日期是否为周末 java_如何用Java检查给定的日期是否代表周末
- 三菱modbusRTU通讯实例_三菱PLC的无线通讯实例
- 云服务器搭建好,出现 拒绝了我们的连接请求。
- 5.4 文本分析与加密
- 九度OJ题目1163:素数
热门文章
- sql统计表中各类型金额_产品经理市场需求旺盛的10大基础技能——第1篇读透SQL...
- python dataframe 选取字段 特别慢_从parqu读取dask dataframe列重命名速度较慢(er)
- 恢复html的初始选定状态,jQuery实现点击旋转,再点击恢复初始状态动画效果示例...
- 600分左右的计算机院校,600分左右的985大学 性价比最高的学校
- 二级计算机环境,计算机环境变量_二级计算机关于变量的问题
- php radio用法,JavaScript_JQuery radio(单选按钮)操作方法汇总,随着Jquery的作用越来越大,使 - phpStudy...
- php codeigniter cookie,PHP 使用CodeIgniter删除、设置Cookie的简单示例
- android 获取sim卡信息list_提醒:手机要设置SIM卡密码!如何设置?有何用处?攻略来了...
- filter过滤后重新添加_Kibana基本使用---使用Flight Dashboard过滤数据
- python水仙花数的编程讲解_《scratch编程+数学》课程:找寻水仙花数