问题标签 [stateless]

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 回答
1003 浏览

session - 带有 EJB3.0 和 websphere6.1 的无状态会话 bean 的问题

**我无法使用 EJB3.0 和 Websphere 6.1 创建无状态会话 bean。

我将所有内容打包在 EAR 文件中并将其部署在 Websphere 上。我正在尝试创建一个无状态会话 bean 并期望它实例化会话 bean 并调用 ejbCreate()。**

问题:从上面的两个代码片段中,它永远不会调用 ejbCreate 或 ejbActivate 方法。我已经放置了记录器,以便我可以验证它是否通过这些方法。

0 投票
3 回答
1600 浏览

google-app-engine - GAE 是无状态的吗?有什么影响?

我曾经被告知 GAE 是无国籍的。我一般理解无状态的概念,但我可以在概念上将其应用于 GAE 类型系统时使用一些指导。

我专门问这个问题是因为我开发的一个应用程序似乎存在干扰问题。也就是说,当两个或更多人同时使用它时,它会变得混乱。(我正在继续进行错误测试以确认该错误仅在同时使用期间发生。)我认为理论上可能会发生这种干扰的两种方式:A,不正确的 GQL 查询获取错误的数据库记录(我检查了这个,不);或 b。在服务器级别。我的问题:后者真的可能吗?当应用程序正在服务时,一个用户可以通过改变程序中变量的状态来干扰另一个用户吗?或者,也许,这是否被无国籍状态所阻止?我很困惑,可能错误地陈述了这个问题。合十礼。

0 投票
1 回答
190 浏览

java - JPA2.0 & EE6 keeping my entities in sync

I'm new to using ORM tools in enteprise applications. We're building a scaleable application that uses JPA 2.0 and EE6. I'm trying to find a nice pattern to build my application but I can't find a way to keep my entities in sync (I want to pool my beans that access the entities).

An example:

I have a Group:

And I have a user

Now if I would have a stateless bean that adds or removes users to a group, I risk having another instance of the stateless bean having out of date information. What is the best practice for this?

0 投票
3 回答
1200 浏览

java - 我可以在无状态会话 bean 中使用实例变量吗?

我知道无状态 bean 不保持会话状态,但我需要的只是一个记录器。我应该在每个被调用的方法中获取记录器吗?如果没有,那么我应该在哪里初始化它?

这是肯定的,如果我编写这样的代码,我不会在使用记录器的某些方法中得到 NullPointerException 吗?

0 投票
1 回答
271 浏览

java - 用于故障转移配置和架构的 Java JAX-WS 多个 Web 服务

我有一个 java Swing 应用程序客户端和多个具有不同名称的 glassfish 服务器,它们运行相同无状态 EJB JAX-WS 的副本以进行故障转移。

首先,这是设置故障转移的正确方法吗?是否有任何资源可以提供帮助?

其次,我这样做的方法是将 Web 服务中的所有方法导入单独的 java 类,然后有一个单独的管理类来调用每个方法。在每个方法调用中,它确定适当的连接(即,如果 Web 服务调用失败,它会递增到下一个 Web 服务)。问题是这是大量难以维护的代码,因为它不是一种有效的方法。

非常感谢任何帮助,谢谢。

0 投票
2 回答
13147 浏览

web-services - 将 Web 服务 (SOAP over HTTP) 称为无状态意味着什么?

我有一个 HTTP 是无状态的概念,因此 HTTP 上的 SOAP(用于 Web 服务)也是无状态的。我曾经认为状态意味着“对象的状态”。例如,假设我有一个名为的类和名为and的Employee方法。如果 web 服务的调用者调用工资为 1000,那么如果被调用,调用者不一定会得到值 10000。当我测试得到 1000(即分配的值)时,我想知道状态如何对象的保留。setSalarygetSalarysetSalarygetSalarygetsalarysetSalaryEmployee

Stack Overflow 问题Web 服务是无状态的?提到了用于维护状态的cookie之类的技巧,但是由于我没有做出任何明确的努力来维护状态,所以Employee对象的状态是如何维护的?

如果我完全误解了有状态/无状态的概念,请告诉我。

0 投票
1 回答
689 浏览

java - @Stateless Session Bean 充当@Singleton Bean

我尝试了一个 EJB 会话 Bean 的示例。我想看看他们的区别。我的基本项目图如下;

http://img109.imageshack.us/img109/8262/85220418.png

项目就像一个购物车。当我通过注入的 EJB 调用托管 bean 以获取添加的 Urun 对象的结果时,结果列表必须是最后一个 Urun 对象。因为我的 EJB 是 @Stateless bean。但是,当我运行应用程序时,它会保留所有新添加的 Urun 对象。但它是无状态的,它必须在每个动作中保留最后一个 Urun 对象。然后,当我在其他网络浏览器中打开应用程序页面时,它会列出之前添加的 Urun 对象列表。但是托管 bean 和 Ejb 在我的模型中是无状态的。但它是一个 Singleton bean。我的问题在哪里?




0 投票
2 回答
726 浏览

java - 多线程(无状态类)

为长代码帖子道歉,但我想知道是否有人可以帮助解决多线程问题(我对多线程很陌生)。我正在尝试为可以与多个线程共享的 RESTFUL Web 服务 API 设计一个外观类。我正在使用 HttpURLConnection 进行连接,并使用 Google GSON 在 JSON 数据之间进行转换。

下面的课程是我到目前为止所拥有的。在这个例子中,它有一个公共方法来进行 API 调用(authenticateCustomer()),而私有方法用于促进 API 调用(即构建 POST 数据字符串、发出 POST 请求等)。

我制作了这个类的一个实例并与 1000 个线程共享它。线程调用 authenticateCustomer() 方法。大多数线程工作,但有一些线程得到一个空指针异常,这是因为我没有实现任何同步。如果我使 authenticateCustomer() 方法“同步”,它就可以工作。问题是这会导致并发性较差(例如,POST 请求突然需要很长时间才能完成,这将阻塞所有其他线程)。

现在我的问题。下面的类不是无状态的,因此是线程安全的吗?类中的极少数字段被声明为 final 并在构造函数中分配。所有方法都使用局部变量。Gson 对象是无状态的(根据他们的网站),无论如何都在 API 方法中创建为局部变量。

}

0 投票
1 回答
1628 浏览

ejb - 带有@EJB 的@Stateless bean 保证是唯一的ejb 实例?

我想知道...假设我在 ejb 3.1 中有两个无状态 bean:

  1. @无状态类1

    @EJB MyUniqueInstanceBean uniqueBean1;

2.

uniqueBean1 和 uniqueBean2 是否保证是 MyUniqueInstanceBean 的唯一实例?

0 投票
2 回答
4066 浏览

java - 如何使 Wicket 的“AjaxLink”无状态?

我正在构建一个 Wicket Web 应用程序,它必须同时处理大量请求。我已经设置了一个测试环境和一些 jmeter 脚本来进行负载测试,我注意到如果我使大多数页面无状态,我可以减少我的应用程序的 CPU 和内存占用。

我已将代码添加到最大页面的 onBeforeRender() 方法中,以显示哪些组件导致我的页面变为有状态。这是我用于检测的代码:

在输出中,我看到有状态行为是由页面中一些现有组件使用的 AjaxLinks 引起的:

我尝试在一些地方添加返回“true”的 getStatelessHint() 方法,但这似乎没有帮助。我还检查了 AjaxLink 的 Wicket 源代码、它的超类和一些周边代码,但我似乎无法发现为什么 AjaxLink 在所有情况下都需要有状态。

在我的例子中,AjaxLink 处于无状态页面中,并且链接不存储状态。我怎样才能让 Wicket 明白这个 AjaxLink 可以是无状态的?

谢谢你的帮助,罗尔夫

编辑:接受的答案适用于 Wicket 1.4.19。

在 maven pom.xml 中添加了以下内容:

将所有扩展“AjaxLink”的组件更改为扩展“StatelessAjaxFallbackLink”。

不要忘记将以下内容添加到您的 WicketApplication 类中,它将为您节省一些故障排除时间:

请注意,由于某种原因,StatelessForm 和其他无状态的东西在转发器(如“ListView”)中不起作用。