如何在TomEE中配置CXF

时间:2014-08-13 13:33:27

标签: java rest cxf tomee

是否可以覆盖TomEE中嵌入式CXF JaxRS容器的设置?我一直在尝试集成我自己的in-interceptor来处理JaxRS服务的路由。

我似乎无法做的是让TomEE在启动我的服务时加载拦截器。

我已经阅读了一些内容,说我应该能够通过添加< pojo-deployment>来配置TomEE中的CXF内容。到META-INF或WEB-INF中的openejb-jar.xml文件。当我尝试使用这种方法时,我的拦截器永远不会被调用。

我也看到过引用声明TomEE使用tomee.xml来替换openejb-jar.xml,所以我尝试在那里做pojo-deployment的东西,但后来我得到一个XML解析错误,因为tomee.xml没有似乎不了解pojo-deployment标签。

有人能指出一些不错的文档,或者更好的是在TomEE中配置CXF的一个小例子吗?

由于

1 个答案:

答案 0 :(得分:2)

openejb-jar.xml是这样做的方法

我在这里发表了博客http://rmannibucau.wordpress.com/2012/10/04/jax-rsjax-ws-configuration-for-tomee-1-5-0/

只更改最近的tomee版本是你需要将你使用的jaxrs应用程序设置为class-name的事实(如果没有人使用" jaxrs-application"这意味着默认行为)

如下所示:

<openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
  <pojo-deployment class-name="jaxrs-application">
    <properties>
      cxf.jaxws.in-interceptors = org.superbiz.MyInInterceptor
    </properties>
  </pojo-deployment>
</openejb-jar>