问题标签 [ejb-2.x]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
362 浏览

java - CMP 2.0 bean 自动生成的主键 WAS 6.1

是否可以将 bean 的键字段与 DB2 中的标识主键列映射?示例表:CREATE TABLE ADDRESS(ID INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY(START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 NO CYCLE CACHE 20 NO ORDER),Line1 VARCHAR(255)NOT NULL,Line2 VARCHAR(255),City VARCHAR(255) NOT NULL, Postcode VARCHAR(6) NOT NULL, Country VARCHAR(50) NOT NULL, Latitude DOUBLE, Longitude DOUBLE ) AUDIT NONE DATA CAPTURE NONE CCSID UNICODE;

ejbCreate 方法已被定制为不设置 ID 字段,但它被初始化为整数类型的默认值 - 0 所以我在第二次和对 ejbCreate 的调用之后得到 DuplicateKeyException。实现 IDENTITY 行为的最佳方法是什么?我找到了许多 JBoss 的示例,但没有找到 WAS 的示例。使用 JPA 很容易,但此时必须使用 CMP 2.0

0 投票
3 回答
289 浏览

java - 为什么人们设计难以编写和部署的 EJB2?

许多 J2EE 开发人员都知道 EJB2 迫使他们编写“无用”的 Home 接口。此外,部署 XML 在应用服务器之间是不同的。

所以我不知道为什么EJB2多年来一直是J2EE规范的一部分?是否涉及任何非技术利益?

0 投票
1 回答
396 浏览

java - 从 jboss 3.2.1 迁移到 jboss6

现在我们有一个在 jboss 3.2.1 上运行的带有 java 1.4 和 ejb 2.1 的项目。我们正在尝试更新到 java 6 和 ejb3.1,但我们正在逐步进行。所以我的问题很简单,我们可以在jboss6上使用ejb2.1吗?

0 投票
1 回答
3365 浏览

testing - 测试 EJB2.1 到 EJB3 的迁移

我们希望将使用 EJB2.1 bean(实体和会话 bean)编写的应用程序迁移到 EJB3,以改进维护并使用 EJB3 规范中的新特性。

我们将如何进行迁移并向用户保证(如果有的话)迁移后的系统仍然可以像旧系统一样工作。原始应用程序没有测试用例。

0 投票
1 回答
1988 浏览

ejb - ejb 2.0 中引用本地 bean 主接口时出现空指针异常

我只是在尝试实体 bean 的示例。我正在使用 JBOSS 4.0.0、EJB 2.0、MyEclipse 8.6。使用 JBOSS 4.0.0 和 EJB 2.0 的原因只是为了学习。我正在阅读头一本书。如果我犯了任何错误,请在此过程中帮助我。我使用 ant 编写了一个构建文件,将其部署在 JBOSS 的部署目录中。不知道我哪里出错了,但在错误中挣扎。我收到此错误:

java.lang.NullPointerException at org.jboss.ejb.plugins.local.LocalHomeProxy.invoke(LocalHomeProxy.java:118) at $Proxy0.findByPrimaryKey(Unknown Source) at AccesesPackage.DirectorMovie.go(DirectorMovie.java:24) at AccesesPackage .DirectorMovie.main(DirectorMovie.java:13)

先感谢您。

我的 ejb-jar.xml 是:

我的 jboss.xml 文件:

我的导演包:

  1. 豆导演:

    包总监;

    导入 java.rmi.RemoteException;导入 javax.ejb。; 导入 java.util。; 导入电影。*;导入 javax.naming.Context;导入 javax.naming.InitialContext;导入 javax.sql.ConnectionPoolDataSource;导入 javax.sql.PooledConnection;导入java.sql.Connection;导入 java.sql.DriverManager;导入 java.sql.PreparedStatement;导入java.sql.ResultSet;导入java.sql.SQLException;导入 java.sql.Statement;导入 AccessesPackage.ConnectionPool;

    公共抽象类 DirectorBean 实现 EntityBean {

    }

  2. 导演家:

    包总监;

    导入 javax.ejb。; 导入 java.util。;

    公共接口 DirectorHome 扩展 EJBLocalHome {

    }

  3. Director组件接口:

    包总监;导入 javax.ejb。; 导入 java.util。; 公共接口 Director 扩展 EJBLocalObject {

    }

我的电影套餐:

  1. 电影豆:

    打包电影;

    导入 java.rmi.RemoteException;导入 javax.ejb。; 进口总监。;

    导入 java.util.*;

    导入 javax.naming.*;导入 javax.rmi.PortableRemoteObject;

    公共抽象类 MovieBean 实现 EntityBean {

    } public abstract String getMovieId(); public abstract void setMovieId(String movieId); public abstract String getTitle(); public abstract void setTitle(String title); public abstract String getYear(); public abstract void setYear(String year); public abstract String getGenre(); public abstract void setGenre(String genre); public abstract void setDirectorId(String directorId); public abstract String getDirectorId(); public abstract void setDirector(Director director); public abstract Director getDirector(); public java.lang.String ejbCreate(String movieId, String title, String year, String genre, String directorId) throws CreateException { this.setMovieId(movieId); this.setTitle(title); this.setYear(year); this.setGenre(genre); this.setDirectorId(directorId); return movieId; } public void ejbPostCreate(String movieId, String title, String year, String genre, String directorId) throws CreateException{ }

    }

  2. 电影之家:

    打包电影;

    导入 javax.ejb。; 导入 java.util。;

    公共接口 MovieHome 扩展 EJBLocalHome {

    }

  3. 电影组件接口:

    打包电影;

    导入 javax.ejb.*;

    公共接口电影扩展 EJBLocalObject {

    }

最后我的客户:

0 投票
2 回答
1559 浏览

deployment - OpenEJB 上的 EJB 2.0 - 我在哪里放置所需的 jar?

到目前为止,我们一直在使用 WAS 6.1 来部署我们的 Web 应用程序。现在我们需要迁移到精通经济的 Tomcat + OpenEJB 解决方案。OpenEJB 3.1.2 容器插入到 Tomcat 6.18 中,这里没有独立的 OpenEJB 服务器。

所以我在这里,试图将我的 EJB 2.1 对象部署到 OpenEJB 中......

我的问题是 EJB 代码需要外部 .jar 库,我不知道将它们放在哪里,以便它们实际上被考虑到容器的类路径中。它适用于 catalina.home/lib,因此适用于 openejb.home/lib。但是我仍然希望找到一种打包 EJB 的方法,以便将它们链接的 .jar 轻松部署到适当的位置以供 OpenEJB 容器使用。

它可以包括使用正确的描述符文件构建 .ear 或 .jar ......任何可行的解决方案对我来说都足够好。

任何人都可以帮忙吗?

0 投票
1 回答
1168 浏览

java - 如何删除 EJB2.1 无状态会话 bean

大家好,我有一个问题:如何删除 EJB 会话 bean(尤其是无状态 bean)?

当然有 remove() 方法,但是当会话对象在事务中时不能调用它,即会话 bean A 在其业务方法中被另一个会话 bean B 调用。

0 投票
3 回答
1488 浏览

java - Struts 1.1 + Hibernate 3.2 集成

我正在尝试将休眠集成到现有的 struts + ejb 2.0 应用程序中。我必须为从 hibernate.cfg.xml 中的会话创建编写一个 struts-hibernate 插件。我还创建了模型和 hbm 文件,但我猜由于 jar 文件冲突,我无法启动应用程序。我不断收到此异常:

0 投票
3 回答
1496 浏览

java - Struts 应用程序中的 EJB 和 Hibernate

我有一个包含 struts 1.1 和 EJB 2 组合的应用程序,但现在我们正在使用 hibernate 3.2 向其中引入一个新部分。休眠 DAO 与具有纯 JDBC 的 EJB 2 会话 bean DAO 并行运行。在这种情况下,我担心 jdbc 连接管理。由于 EJB 2.0 具有容器管理的连接和事务。但是在休眠的情况下,我们开始并提交休眠事务,是否可以安全地假设此架构不会出现任何问题。

需要一些分析帮助。

下午


我正在考虑同样的问题,如果休眠模块可能访问由 JDBC DAO 使用的现有表,其事务由会话 Bean 管理。但这是我的方法:

  1. 我将有一个调用 EJB 会话 bean 的委托,并且由于这个 bean 将负责管理事务,我将创建我的休眠 DAO 并从这个会话 bean 调用它们,我认为这不会有任何问题。

  2. 此应用程序的休眠会话工厂将使用休眠插件实例化一次,该插件将成为 struts 配置 xml 的一部分,并将保存为 servlet 上下文的一部分,然后操作类将从 EJB 会话 bean 委托传递此 sessionfactory 实例到休眠的 DAO。

  3. 我想这将是一种干净的方法,因为事务将由部署到 websphere 上的 EJB Session bean 管理。由于 JDBC 连接池管理是在 websphere 上配置并使用数据源访问的,因此 hibernate 不必担心这一点。

如果我的假设走在正确的道路上,请帮助我?

0 投票
3 回答
1634 浏览

java - 将 Spring Framework 添加到现有 JSP/EJB 应用程序

2.1 年前,我有一个用 JSP 和 EJB 开发的现有应用程序。现在我想用新功能增强应用程序。有没有办法在同一个旧应用程序中使用 Spring 和 Hibernate 框架来添加新功能,或者我需要去开发新应用程序以使用最新框架。

提前致谢。