问题标签 [apache-tomee]

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

java - 如何在 NetBeans 中为企业项目设置 TomEE?

我将 TomEE++ 附加为Apache Tomcat服务器,它非常适合NetBeansJava Web中的项目。在此处输入图像描述

但是当我创建enterprise项目时,我没有设置TomEE++它的选项。Netbeans 希望我添加GlassFishJboss作为服务器。

在此处输入图像描述

这是否意味着 Netbeans 仍然将任何 Tomcat 服务器视为没有企业支持的唯一 Web 容器?

产品版本:NetBeans IDE 7.3.1(内部版本 201306052037)

0 投票
2 回答
1491 浏览

java - TomEE 因太多 @Asynchronous 操作而窒息

我正在使用 Apache TomEE 1.5.2 JAX-RS,几乎是开箱即用的,带有预定义的 HSQLDB。

下面是简化的代码。我有一个用于接收信号的 REST 样式接口:

接收到信号会触发很多事情。商店将创建一个实体,然后触发一个异步事件。

调度程序非常简单,只是为了使事件处理异步而存在。

接收事件是另一回事,它从信号中获取数据,存储它,然后触发另一个异步事件:

对此做出反应甚至是实体创建的第三层。

总而言之,我有一个 REST 调用,它同步创建 a SignalEntity,异步触发创建 a DerivedDataEntity,异步触发创建第三种类型的实体。这一切都完美无缺,存储过程完美解耦。

除了当我以编程方式在 for 循环中触发大量(fe 1000)信号时。根据我的AsynchronousPool大小,在处理了大约一半大小的信号(相当快)后,应用程序完全冻结了几分钟。然后它恢复,以相当快的速度处理大约相同数量的信号,然后再次冻结。

AsynchronousPool在过去的半个小时里,我一直在玩设置。例如,将其设置为 2000 可以轻松地一次处理我的所有信号,而不会出现任何冻结。但在那之后,系统也不健全。触发另外 1000 个信号,导致它们被正确创建,但派生数据的整个创建从未发生过。

现在我完全不知道该怎么做。我当然可以摆脱所有这些异步事件并自己实现某种队列,但我一直认为 EE 容器的意义在于让我摆脱这种乏味。异步 EJB 事件应该已经自带了自己的队列机制。队列太满时不应立即冻结的队列。

有任何想法吗?

更新:

我现在已经用 1.6.0-SNAPSHOT 试过了。它的行为有点不同:它仍然不起作用,但我确实遇到了一个异常:

就好像 TomEE 不会对操作进行任何排队。如果在调用的那一刻没有线程可以自由处理,那么运气不好。当然,这不是故意的..?

更新 2:

好的,我似乎偶然发现了一个半解决方案:将AsynchronousPool.QueueSize属性设置为 maxint 可以解决冻结问题。但问题仍然存在:为什么 QueueSize 首先如此有限,更令人担忧的是:为什么这会阻塞整个应用程序?如果队列已满,它会阻塞,但是一旦从中取出一个任务,另一个应该会弹出,对吗?队列似乎被阻塞,直到它再次完全为空。

更新 3:

对于任何想要尝试的人:http: //github.com/JanDoerrenhaus/tomeefreezetestcase

更新 4:

事实证明,增加队列大小并不能解决问题,它只会延迟它。问题仍然存在:一次异步操作太多,并且 TomEE 阻塞非常严重,以至于它甚至无法在终止时取消部署应用程序。

到目前为止,我的诊断是任务清理无法正常工作。我的任务都非常小而且很快(参见github 上的测试用例)。我已经担心 OpenJPA 或 HSQLDB 会因为太多并发调用而减慢速度,但是我注释掉了所有em.persist调用,问题仍然存在。因此,如果我的任务非常小而且速度很快,但仍然设法阻止 TomEE 如此糟糕以至于在 30 秒后无法获得任何进一步的任务(javax.ejb.EJBException: fail to allocate internal resource to execute the target task),我会想象完成的任务会徘徊,堵塞管道,可以这么说.

我该如何解决这个问题?

0 投票
1 回答
1284 浏览

java - TomEE ++ 和 ObjectDB 无法正常工作

我有一个 DaoService,它在应用程序启动时被初始化。

但每次它触发这个异常:

我试过有没有这个persistence.xml

0 投票
2 回答
1658 浏览

java - tomee中如何加密数据源密码或数据源

我想以加密格式存储密码,因此其他用户无法读取。我的tomee.xml文件包含

我正在使用 apache-tomee-jaxrs-1.5.2。

0 投票
1 回答
2135 浏览

java - 如何在 java 类中使用 tomee.xml 中声明的数据源

嗨,我在 tomee.xml 文件和 web.xml 文件中配置数据源。这在我执行项目时可以正常工作,但是我实现了测试用例,当我在那里使用时我也需要使用它,然后它会给出异常 javax.naming.NoInitialContextException :需要在环境或系统属性中指定类名,或作为小程序参数,或在应用程序资源文件中:java.naming.factory.initial

这是我的 tomee.xml 文件

这段代码在 Servlet 中运行良好,但是当我在 java 类中编写时,它给出的异常是我用于访问的 java 类

0 投票
1 回答
1710 浏览

maven - 如何使用 TomEE maven 插件自动部署 EJB jar

我有一个打包在 jar 文件中的无状态 EJB SOAP Web 服务。

当应用程序仅包含一个 EJB jar 文件时,是否可以使用 Tomee maven 插件设置自动部署?

例如,此站点表明需要在 server.xml 中定义的 Web 上下文。我的同步设置与网站建议的相同。

command 除了像往常一样编译源代码之外什么都不做。

是否有可能使用 EJB jar 设置类似的东西,或者在任何情况下都需要 WAR 包?

谢谢。

更新

为了让 TomEE Maven 插件完全可以处理 jar 文件,我在 pom.xml 配置部分添加了以下内容

0 投票
1 回答
1187 浏览

jsf-2 - Deltaspikes @WindowScoped 与 TomEE 合作?

我正在努力让 Deltaspikes @WindowScoped 与 TomEE 一起工作(尝试了 1.5.2、1.5.3-SNAPSHOT 和 1.6.0-SNAPSHOT)

这是一场非常小的战争,具有 deltaspike 0.4 核心 + jsf 依赖项。

现在,我确实创建了一个这样的 HelloWorldBean:

有一个空的 beans.xml、空的 faces-config.xml 和一个非常小的 web.xml。

在我拥有的一个非常简单的页面上。

该页面工作正常,一个 windowId 被添加到请求中,当我刷新页面时,我看到 bean 没有被实例化(即 test() 只被调用一次)。但是当我按下命令按钮时,我得到一个 ContextNotActiveException 异常:

我错过了一些明显的东西吗?或者它是 DeltaSpike 中的一个错误?(或TomEE?)

0 投票
1 回答
337 浏览

oracle-adf - 如何在tomee上部署一个包含j2ee组件的adf web应用?

首先,我安装了 tomcat 7,然后我可以将 adf 应用程序 acc 部署到以下 url:https ://blogs.oracle.com/adfthoughts/entry/running_adf_essentials_in_tomcat 但我希望服务器运行一个 j2ee 应用程序,该应用程序具有带有 jpa 和 hibernate 的模型项目等等,所以我需要TomEE。我在我的 win7 系统上安装了 TomEE 1.5.2 版本,我应用了已经为 tomcat 7 完成的相同步骤,结果是失败。

请帮助我,我收到以下错误:

0 投票
1 回答
144 浏览

authentication - 非授权用户的表单认证

我正在为我的 Web 应用程序实现基于表单的身份验证。

我在 TomEE 服务器上的 JDBCrealm 中创建了一些用户,并且只允许特定用户访问受保护的 jsf 页面。

现在身份验证工作正常,如果用户名密码不匹配,它将被重定向到错误页面。

我在这里面临的问题是,如果我尝试使用 JDBCrealm 中已经可用的用户登录,该用户无权访问受保护的页面,我得到 403 错误。

当我回来并再次尝试访问受保护的页面时,我无法再次登录。是因为有关我的登录信息在会话中被记住并且我必须使会话无效吗?

即使我不登录?

编辑:

我在论坛上询问:http: //openejb.979440.n4.nabble.com/Bug-in-security-TomEE-td4665009.html

我认为这是我问题的最佳答案

0 投票
0 回答
92 浏览

maven - OpenEJB (TomEE+) fails to start with ArithmeticException

I'm using Tomee+ with Maven. I can run locally (Windows XP/7, JDK 1.6, Maven 2.2.1), but running the tests on our Jenkins CI server generates a load of these and hangs:

I'm using openejb 4.5.1:

The Jenkins CI server is an 80-core Red Hat 4.1.x (Linux 2.6.x) box, running JDK1.6, Maven 2.