0

我将 Apache-CXF 用于 JAX-RS 实现。我有两个资源,它们在两个 bean 中定义。我在 context.xml 操作系统中的 jaxrs-server 如下

 <jaxrs:server id="serverId" address="/">
    <jaxrs:serviceBeans>
        <bean id="bean1" class="com.Bean1" />
        <bean id="bean2" class="com.Bean2" />
    </jaxrs:serviceBeans>
</jaxrs:server>

Bean1 的接口如下 -

   @Path("/")
   public interface IBean1 {
    @GET
    @Path("/beaninfo1")
    @Produces({ MediaType.APPLICATION_XML })
    public Response checkBean1();
   }

Bean2 的接口如下 -

   @Path("/")
   public interface IBean2 {
    @GET
    @Path("/beaninfo2")
    @Produces({ MediaType.APPLICATION_XML })
    public Response checkBean1();
   }

我无法访问 serviceBans 定义中最后定义的资源。在这种情况下,我能够击中 Bean2 但不能击中 Bean1,出现 404 错误,好像我先放 Bean2 然后放 Bean1,我只能击中 Bean1。

我的配置有什么问题吗?

4

2 回答 2

2

@Path在类级别可以有相同的注释。您需要使用资源比较器。请检查这个问题

于 2012-09-17T11:21:16.720 回答
1

是的。@Path在班级级别给他们不同的注释。

于 2012-09-13T00:39:12.373 回答