java – 如何将ejb2无状态会话bean迁移到ejb3零碎?
作者:互联网
EJB3规范指出EJB2和EJB3可以在单个应用程序中共存.
我希望将EJB2无状态会话bean迁移到EJB3无状态会话bean.
这个问题根本与JPA无关(这是将来要进行的单独工作)
我正在安装和修补EJB3功能包的websphere 6.1上运行,并且配置文件得到了增强(ejb3示例应用确认它可以正常工作)
我需要对我的代码,web.xml,application.xml,ejb-jar.xml和其他特定于websphere的绑定进行哪些更改才能将SINGLE ejb从2转换为3?
解决方法:
随着我的进展,我将有机会回答我自己的问题.
这是我如何度过难关的
以下xml文件曾经有过doctypes,但现在必须有名称空间:
myApp.ear / META-INF / application.xml中
<application version="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/application_5.xsd">
myApp.ear / web.war中/ WEB-INF / web.xml中
<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">
myApp.ear / ejb.jar / META-INF / ejb-jar.xml中
<ejb-jar id="ejb-jar_ID" version="3.0"
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/ejb-jar_3_0.xsd">
对web.xml进行了以下更改
> taglib元素现在位于jsp-config元素下
>已从过滤器元素中删除了display-name元素
和servlet元素
删除myApp.ear / ejb.jar / META-INF / ibm-ejb-jar-bnd.xmi
JNDI查找
更改所有本地ejb jndi查找以使用ejblocal:[classname]
我还从ejb-jar.xml映射中删除了我的jdbc资源引用,而是使用全局查找
我遇到的安全问题是因为我删除了ibm-application-bnd.xmi,它将用户和组绑定到角色/
标签:java,migration,java-ee,ejb-3-0,ejb-2-x 来源: https://codeday.me/bug/20190710/1423870.html