2.3. 复查已丢弃和不被支持的功能的列表
在您移植应用程序前,您应该意识到以前版本的 JBoss EAP 里的一些功能已被丢弃且不会被支持了。关于完整的列表,请参考客户门户 https://access.redhat.com/site/documentation/JBoss_Enterprise_Application_Platform/ 上的《JBoss EAP 发行注记》里的『不被支持的功能』章节。
下面是不被支持的功能的简短概述。
- 服务器启动的 -b 命令行参数
- 在以前的版本里,JBoss EAP 自动使用启动参数
-b
指定的地址而不是 IP 地址。在 JBoss EAP 6 里,服务器的<inet-address>
配置会寻找用匹配的 IP 地址配置的网络接口。这虽可以用于127.0.0.1
,却不能用于127.*.*.*
。如果您用-b
参数启动 JBoss EAP 6 服务器并绑定127.*.*.*
IP 地址,您必须首先将服务器配置文件里的<inet-address>
修改为<loopback-address>
。关于如何用管理 CLI 配置服务器的信息,请参考客户门户 https://access.redhat.com/site/documentation/JBoss_Enterprise_Application_Platform/ 里《JBoss EAP 管理和配置指南》的『管理 CLI 的操作』章节。 - EJB 依赖关系
- 在以前的 JBoss EAP 版本里,服务的 EJB 依赖关系,以及其他 EJB,都可以用
jboss.xml
部署描述符文件里的<depends>
标签来指定。例如:在 JBoss EAP 6 里,您必须使用<depends>jboss.j2ee:jndiName=com/myorg/app/Foo,service=EJB</depends> <depends>jboss.mq.destination:service=Queue,name=queue/HelloworldQueue</depends>
<depends>jboss.j2ee:jndiName=com/myorg/app/Foo,service=EJB</depends> <depends>jboss.mq.destination:service=Queue,name=queue/HelloworldQueue</depends>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow @EJB
注解来注入 EJB 引用及@Resource
注解来访问数据源和其他资源。例如:@EJB(lookup="java:global/MyApp/FooImpl!com.myorg.app.Foo") @Resource(mappedName = "java:/queue/HelloworldQueue")
@EJB(lookup="java:global/MyApp/FooImpl!com.myorg.app.Foo") @Resource(mappedName = "java:/queue/HelloworldQueue")
Copy to Clipboard Copied! Toggle word wrap Toggle overflow JNDI 查找也已修改,详情请参考本指南的『JNDI 的修改』章节。关于在 EJB 引用的更多信息,请参考客户门户 https://access.redhat.com/site/documentation/JBoss_Enterprise_Application_Platform/ 上的《JBoss 开发指南》里的『EJB 引用解析』章节。 - HTTPInvoker
- 在以前的 JBoss EAP 版本里,我们可以使用 HTTPInvoker 来配置 EJB、JNDI 或 JMS 以使用 HTTP 协议。JBoss EAP 6 已不支持这种做法。
- HA Singleton 部署和 BarrierController 服务
- HA Singleton 服务确保了在群集里只有一个服务实例运行。JBoss EAP 5 提供了对多重 HA Singleton 部署策略的支持,包括 HASingletonDeployer 服务、使用 HASingletonController 的 POJO 部署以及使用 BarrierController 服务的 HASingleton 部署。当群集里的不同节点启动、停止、不可用时,这些策略都依赖于 HAPartition 进行通知。在 JBoss EAP 6 里,HA Singleton 部署已经完全改变了。Singleton Deployer 只在模块化服务容器(Modular Service Container,MSC)上操作。通过 SingletonService,目标服务被安装在群集上的每个节点上,但在给定时刻只会一个节点上启动。这个方法简化了部署要求并最小化了在节点间移动 Singleton 主服务所需的时间。然而,它要求您编写自定义代码来实现相同的功能。本版本附带的 JBoss EAP quickstart 例程里由一个 HA Singleton 部署示例。关于 HA Singleton 的更多信息,请参考 第 3.2.8.2 节 “实现 HA 单点登录” 。