问题标签 [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 投票
1 回答
840 浏览

ejb - 接口级别的 TomEE 1.5.2 @Path 注释仍然无法正常工作

尽管这里声称:

对于由于在类级别缺少 @Path 而无法工作的应用程序 -> 现在应该可以工作

我仍然需要注释我的端点实现,因为没有拾取接口上的注释。

它与我配置 JAX-RS 的方式有关,还是 TomEE 中仍然存在错误?

界面:

执行:

openejb-jar.xml

资源.xml

beans.xml 只有空的根元素

更新:

  • JAX-RS Spec 显然根本没有提到类级别的注释
  • @Consumes 和 @Produces 在应用于界面时起作用,
  • @Path(类级别)在接口上应用时不起作用,
  • 路由请求时,方法级别的 @Path 受到尊重,但是 UriBuilder 失败: UriBuilder.path(EJBBackedMyEndpoint.class, "getById")throws IllegalArgumentException: No Path annotation for 'retrieve' method
0 投票
0 回答
210 浏览

java - MyFaces 停止正常工作

我正在使用 Netbeans 7.3.1 开发一个 JSF Web 应用程序,在 Apache TomEE 1.5.2 上运行,它捆绑了 MyFaces 2.1.10,我还使用 PrimeFaces 3.5 来处理一些花哨的标签。

我一定是在某个地方弄坏了一些东西,因为直到昨天一切都还好,然后今天当我尝试部署我的应用程序时,它<h:outputText />在正确渲染所有 Primefaces 标记时无法渲染。<h:form>标签也被渲染。

更新:<h:inputText/>正确呈现,但该value属性在那里被忽略,如<h:outputText/>.

此外,直到昨天我的托管 bean 在没有implements Serializable声明的情况下都能正常工作,而今天如果我不添加它就会出现异常。

我检查了这些响应,但似乎没有一个适用于我的情况:JSF 标签未呈现JSF 标签未呈现为 HTMLJSF 标签未呈现 JSF 标签未呈现 - FacesServlet 可能不起作用?. 特别是,在这些情况下,问题似乎是页面根本没有被解析,但在我的例子中,页面被部分解析了。

我在我的应用程序中准备了一个小测试用例来展示这种行为。这是我的faces-config.xml

我的web.xml

这是示例页面example.xhtml

这是支持 bean ExampleBean.java,:

我准备了一个带有结果的屏幕截图

<h:outputText>PrimeFaces 选择列表正常工作, [...]之间的文本</h:outputText>被渲染,我相信因为标签被简单地删除,但使用value属性的标签不是。我的应用程序的所有其他页面都发生了类似的行为。

我做了什么会导致这种行为?可能是什么原因?

0 投票
1 回答
4837 浏览

spring - 如何访问 TomEE 的 JTA 事务管理器?

我有一个使用 Spring 的声明式事务管理的应用程序。如何在 TomEE+ 容器中部署它,以便应用程序使用 TomEE 的 JTA 事务管理器?

更具体地说,如何从 Spring 的“application-context.xml”文件中引用内置事务管理器?

Spring 的事务管理配置似乎想通过 bean 引用或 JNDI 查找来查找事务管理器;我花了一天时间研究这个并查看源代码;我发现了很多关于这个问题的讨论(下面的参考资料),但没有明确的方法。

我在应用程序的 META-INF/persistence.xml 中拥有的是:

并且,在应用程序 META-INF/spring/applicationContext.xml 文件中,我有这个:(我已经尝试了各种不同的 transactionManagerName 值,正如该主题的各种讨论中所建议的那样,因为它在应用程序服务器之间似乎是非标准的

这是一个声称适用于 JBoss 的示例:Spring JTA configuration - how to set TransactionManager?

这是一个在 xml 配置文件中不起作用的险兆:https ://issues.apache.org/jira/browse/TOMEE-38

如果您掌握了 initialContext,以下是如何在 java 代码中执行此操作:http: //osdir.com/ml/users.openejb.apache.org/2012-11/msg00110.html

[编辑:Tomee 文档讨论了如何声明事务管理器,但它说在 Tomee.xml 中进行,它属于服务器而不是单个 webapp;我想为单个应用程序而不是整个服务器配置事务管理器:http: //tomee.apache.org/containers-and-resources.html]

0 投票
5 回答
3126 浏览

jakarta-ee - Tomee 1.5.2 JAX-RS 与 Jackson 1.9.12

我一直在努力让 Tomee 1.5.2 JAX-RS 与 Jackson 一起工作。我想我已经尝试了 100 种方法。
这是我的最后一次尝试:

我在 conf/system.properties 中添加了以下内容:


我在 Tomee 的 lib 文件夹中添加了:

  • jackson-mapper-asl-1.9.12.jar
  • 杰克逊核心asl-1.9.12.jar
  • 杰克逊-jaxrs-1.9.12.jar


我在一个干净的 NetBeans Maven Web 项目中有一个简单的 JAX-RS 类。Mirc 是一个有名字和汽车的 POJO。

我不断收到“没有找到响应类 myclass 的消息正文作者”。
我错过了什么?我怎样才能让它工作?我检查了stackoverflow上的所有帖子,但没有成功。
我真的很感激一些帮助。谢谢。

0 投票
0 回答
392 浏览

ajax - 有没有办法将 ActiveMQ Ajax servlet 与 Tomee 一起使用?

有没有办法将 ActiveMQ Ajax servlet 与 Tomee 一起使用?

该文档页面暗示它“正常工作”:http ://activemq.apache.org/tomee.html

但是,在其他地方,很明显 servlet 依赖于 Jetty:http ://activemq.2283324.n4.nabble.com/AjaxServlet-on-Tomcat-td3601798.html 。请注意,用户 Hexaplus 说他/她通过包含 Jetty 库来使其工作。

按照 Hexaplus 的指示,我没有成功;我收到以下错误堆栈跟踪

其他人报告同样的问题,例如:(不能发布超过 2 个链接)

0 投票
2 回答
1726 浏览

cxf - 如何在 TomEE+ 中配置 JAX-RS 基本路径?

我有一个带有一些 JAX-RS 服务的 WAR,部署到 TomEE Plus 中。给定一个用 注释的服务@Path("myservice"),TomEE+ 将其发布到localhost:8080/mywebapp/myservice.

然而,这也使得访问 JSPlocalhost:8080/mywebapp/index.jsp变得不可能——JAXRSInInterceptor 抱怨说No root resource matching request path has been found, Relative Path: /index.jsp.

所以我想api为所有服务配置一个路径前缀,将myserviceURL 更改为localhost:8080/mywebapp/api/myservice. 如果我自己配置​​了 CXF(有或没有 Spring),这样做将是微不足道的,因为我可以简单地更改 CXF Servlet 的 URL 模式 - 但我依赖于默认设置,除了注释。那么在这种情况下我该怎么做呢?

请注意,我不想更改@Path注释以包含前缀,因为这并不能解决 JSP 的问题。

0 投票
1 回答
169 浏览

maven - tomee mvn install 不要打包 META-INF

尝试构建战争文件时,maven 不使用 pom 打包任何 META-INF:

我试着把 META-INF 放在任何地方。并且不要替换 tomee.xml 我尝试了以下结构:

myApp->src->resources->meta-inf/persistence.xml myApp->src->webapp->meta-inf/persistence.xml

0 投票
0 回答
547 浏览

spring - Spring 和 OpenEJB 使用相同的实体管理器

如何让 Spring bean 和 EJB(它们都在 TomEE 容器中)使用公共持久性上下文?

我正在尝试将几个 EJB 组件合并到一个主要是 Spring 应用程序中。最终一切都将是 EJB3 或 Spring,但在可预见的未来,我生活在一个混合世界中。

  1. 数据源在应用程序的 resources.xml 文件中定义
  2. PersistenceUnit 在引用数据源的 persistence.xml 文件中定义
  3. Spring 在 applicationContext.xml 文件中访问容器事务管理器和 EntityManagerFactory 如下:

    /li>
  4. Spring 和 EJB 组件可以轻松找到事务管理器、实体管理器或数据源;任何完全是 Spring 或完全 EJB 的东西都可以正常工作。但...

  5. 在某些情况下,事务必须在 EJB 中启动,然后传播到 Spring bean 上调用的方法,此时 Spring bean 抱怨它拥有非托管实体。我用 注释 EJB 中的启动方法@TransactionAttribute和 Spring Bean 中的接收方法@Transactional(propagation=Propagation.Mandatory);Spring bean 不会抱怨不在事务上下文中,但不知何故,持久性上下文不遵循,通过this.entityManager.contains(this)返回 false 进行验证。

问题似乎在于 Spring 和 OpenEJB 处理实体管理器注入的方式。如果我在 EJB 和 Spring bean 中包含相同的代码:

在 EJB 中,em注入了一个实例org.apache.openejb.persistence.JtaEntityManager

而在 Spring 中,em注入的内容如下所示:

shared EntityManager proxy for target factory [org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory@1ca24fe7]

和 Proxy都JtaEntityManager包含相同的底层实例org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory

我已经阅读了有关 Spring / EJB 集成的所有内容,但没有找到任何具体处理共享持久性上下文或从 EJB 到 Spring bean 的事务的内容。

0 投票
1 回答
3086 浏览

java - EJB 注入与仅 JSF 托管 bean

我不知道我的问题可能完全没有意义,但我找不到任何关于它的直接信息。

我有我的 JSF + Tomcat 应用程序,它工作得很好。我想实现 Restful 服务和 JAAS 逻辑。为了做到这一点,我改用了 TomEE++。

切换到 TomEE 意味着我的服务器现在会更重,而且我担心它需要的cpu资源ram比我在 Amazon AWS 微实例中的更多。

问题是:如果我从仅 JSF 托管 bean 切换到 JSF + EJB,性能会下降吗?

子问题是: EJB 注入能做什么,而 JSF 托管 bean 不能做什么?(例如,JSF 不允许循环注入)

0 投票
1 回答
124 浏览

java - JSF / Spring Security:视图包装器生成 LinkageError

我遇到了 JSF 渲染问题。这是我的设置:

  • 中央操作系统
  • TomEE Plus 1.5.2
  • 冰面
  • 弹簧安全 3

我的应用程序是这样设置的:

  • /opt/tomee/lib/[所有普通的 TomEE jars]
  • /opt/tomee/lib/[所有 Spring Security jars]
  • /opt/tomee/lib/icefaces.jar
  • /opt/tomee/lib/icefaces-compat.jar
  • /opt/tomee/lib/icepush.jar
  • /opt/tomee/webapps/UI/index.xhtml
  • /opt/tomee/webapps/UI/WEB-INF/lib/icefaces-ace.jar
  • /opt/tomee/webapps/UI/[正常的jsf 2配置]

日志中没有任何明显的内容,但是当 JSF 尝试渲染时,我收到以下错误:

错误页面上的堆栈跟踪是大量的,所以我不打算在这里转储小说,但这里是注意的调用。

我将所有 jar 的内容转储到了 tomee/lib 中,但 com.sun.crypto 不在我可以在 Web 服务器中找到的任何地方。不使用 Spring Security 的应用程序工作得很好。

有什么想法吗?