问题标签 [stateless-session-bean]

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 投票
2 回答
1248 浏览

variables - EJB3 缓存实例变量

我注意到我正在处理的一个项目中有一些奇怪的代码——它是一个 SLSB EJB3,它使用一个私有实例变量来维护一个数据缓存(它甚至称它为 dataCache 或其他东西),带有一个 getter/setter。对于 EJB2 及以下内容,这是典型的 EJB 反模式 - SLSB 并不意味着在调用之间保留状态,不能保证您在后续调用中会看到相同的数据。我的一位同事说它在 EJB3 中可能没问题(我们没有太多 EJB3 经验),但它仍然是一个无状态会话 Bean - 为什么它试图保持状态,这没有意义。

谁能确认这在 EJB3 领域是否仍然是一个坏主意,或者是否可以?

谢谢,如果你能帮忙,贾斯汀

0 投票
3 回答
1052 浏览

performance - JSF + 无状态 EJB 性能

我有一个在 GlassFish v3 上运行的 JSF 2.0 应用程序。它具有通过 JPA 为主要应用程序会话提供数据库数据的 EJB。即使在非 IDE 应用服务器上,EJB 调用也非常慢。在某些页面之间,用户必须等待超过 10 秒才能到达下一页。

EJB 运行在同一个应用服务器上,只Local使用接口。EJB 通过@EJB注解注入。

有什么线索吗?

在此先感谢,丹尼尔

编辑请参阅我的答案以获取解决方案。

0 投票
2 回答
4046 浏览

singleton - 我可以用 EJB 3.0 制作自己的单例无状态 Bean 吗?

现在,在 EJB 3.1 中,我们可以找到 javax.ejb.Singleton 注释,它可以确保这个 bean 将是单例的。

有没有一种方法可以确保在 EJB 3.0 中使用无状态 bean 并在我的代码中进行一些修改(使用关键字 static 或其他方式来做到这一点......)

0 投票
1 回答
1168 浏览

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

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

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

0 投票
1 回答
1182 浏览

java - 如何访问 EJB?

我正在尝试在 Eclipse 中的 JBOSS 4.2 上开发基本 EJB3 应用程序

我在 Eclipse 中创建了一个 EJB 项目。

以下是我的远程和本地接口。

我的ejb实现是

我已经将它部署为 JBoss 中的爆炸 JAR,它运行良好。

我的第一个问题是:

我还要向这个爆炸的罐子添加什么?

其次,我创建了一个独立客户端并将上面的 jar 添加到它的类路径中

客户端代码如下

包 com.testejb;

导入 java.io.FileInputStream;导入 java.util.Properties;

导入 javax.naming.InitialContext;

}

jar 的名称是 FirstEJB。我已经尝试查找为 FirstEJB/HelloWorldRemote/remote。

但是当我运行程序时,我得到了错误

如果我将查找键入为 HelloWorld/remote,则会收到错误消息

0 投票
1 回答
938 浏览

configuration - J2EE 应用程序/Bean 配置最佳实践?

管理属性集以应用于 EJB 并且能够轻松地在机器/环境(例如 DEV、TEST、PROD)之间改变它们的最佳方法是什么?例如,有没有办法在应用服务器上配置您的 EJB 属性(这保证您可以根据机器/环境改变它们)。

具体来说:

1)我有一个需要特定属性集(环境)的单例 EJB。是否有用于告诉 EJB 容器在哪里查找这些属性并自动将它们应用于 bean 的注释?

2) 管理不同属性集(即dev、test、prod)的最佳方法是什么,以便J2EE 应用程序可以在服务器之间移植,并且您可以无缝地管理特定于每个服务器的属性?

如果有任何好的文档链接 - 请告诉我。我用谷歌搜索了一下,没有直接看到上述几点。

0 投票
1 回答
170 浏览

jakarta-ee - 如何拆分 SFSB Facade?

我在开发基于 EJB 3 技术的应用程序时遇到了一些问题。

我想在会话 bean 中使用外观模式来将我的客户端(Web 应用程序)与我的实体 bean 分离。

我正在使用 SFSB 来管理用户会话。

所以我有一个FacadeLoginRemote远程接口,它向客户端公开方法doLogin()doLogout()等...目前这个 SFSB 还包括一些其他方法,例如getCourse(int id)getResource(int id)。并非所有用户都能真正获得课程获得资源,因此 Facade 在将值返回给客户端之前会执行一些检查。

我想拆分外观,将方法getCourse()放在getResource()一个特殊的类中,但留给FacadeLoginRemote检查用户权限的功能。

如果我制作一些不同的 SLSB,我会将它们公开给客户。因此,客户端将有可能直接连接到它们,避免来自FacadeLoginRemote.

我错了吗?有没有办法做到这一点?

提前致谢,

安德烈亚

0 投票
2 回答
1620 浏览

android - 如何从 Android 客户端调用会话 bean 中的方法?

我想知道是否可以创建一个 Android 应用程序来与会话 bean 通信并调用一个方法。如果是这样,有人可以解释一下吗?否则我可以使用 JSP/servelet 在 EJB 中调用该方法并使用 Android 客户端调用 JSP/Servelet .. 示例非常感谢

谢谢 !!!

0 投票
1 回答
1107 浏览

hibernate - 调试休眠“会话已关闭!” - 滥用 SSB?

(首先,这不是我的代码。其次,为了保护有罪的人,我更改了类名以隐藏任何特定于我的雇主的内容,所以如果事情彼此不对应,那就是原因!)。

有人可以帮我解决一个疑问吗?我被要求调查一个完整连接池的问题,这段代码似乎有异味。

我们的日志中有很多关于org.hibernate.SessionException: Session is closed!以下代码的内容,这些代码使用了表现不佳的连接池。

呼叫通过 Web 服务进入:

GetAllResponses课程如下:

MyHome如下:

请注意如何GetAllResponsesMyHome类的第 2 行实例化为静态字段,并在第 8 行和第 20 行分配MyHome该字段。session

根据我对事物的理解,SSBMyHome不是由 J2EE 服务器(JBoss 4.2.2 GA)管理的,因为它已被实例化为GetAllResponses类的静态字段,而不是在 JNDI 上查找。因此,两个线程可以同时访问同一个实例MyHome,并且由于会话存储在字段中session,第一次调用很容易Session被另一个调用替换Session,从而导致各种问题,包括org.hibernate.SessionException: Session is closed!第 9 行和第 21 行MyHome(例如,两个线程调用findDataObject,第一个线程在第二个线程运行第 8 行之后和第 9 行之前运行第 14 行)。

我对么?

0 投票
1 回答
280 浏览

jakarta-ee - 当无状态 bean 池用完时会发生什么

我们知道无状态会话 bean(JEE5 上下文)可以被池化。我想知道当服务器的无状态会话 bean 池没有更多实例并且另一个客户端请求进来时会发生什么......

a) 客户端请求是否处于(阻塞)等待状态或

b)服务器立即拒绝连接..或

c) 我们能否以编程方式处理这种情况,以根据我们特定应用程序的 SLA 给出定制的响应