2016-01-20 6 views
1

Я использую CXF/Karaf, и у меня есть много разных ресурсов RESTful в нескольких пакетах/классах.CXF @CrossOriginResourceSharing Annotation

Вопрос: Есть ли способ избежать необходимости писать аннотации над каждым ресурсом, например @CrossOriginResourceSharing?

Я хотел был бы иметь возможность поставить это в одном месте. Ниже приведен пример того, как это в настоящее время используется:

@CrossOriginResourceSharing(
    allowOrigins = {"http://<ip>:<port>"} 
) 
@GET 
@Path("/rest") 
@Produces(MediaType.APPLICATION_JSON) 
public String rest(); 

ответ

1

Вы можете добавить это в класс, а не на каждый ресурсе в классе (и я не проверял это, но вы могли бы возможно создать супер класс с этой аннотацией и продлить ее, но я не уверен, что CXF ее почитает):

@CrossOriginResourceSharing(
    allowOrigins = {"http://<ip>:<port>"} 
) 
public class resourceGroup { 

    @GET 
    @Path("/rest") 
    @Produces(MediaType.APPLICATION_JSON) 
    public String rest(); 

}