[英]How to Pass Object from ContainerRequestFilter to Resource
[英]How to get Target Resource from ContainerRequestFilter in Apache CXF
我正在使用Apache CXF創建RESTful Web服務。 我想對使用@Authenticate注釋的資源的請求進行身份驗證。 為此,我打算編寫一個匹配ContainerRequestFilter的帖子並驗證請求,如果身份驗證失敗,則執行ContainerRequestContext.abortWith(javax.ws.rs.core.Response)。 但是,我只想對使用@Authenticate注釋的資源進行身份驗證。
問題是我無法找到如何訪問匹配的資源。 我知道我可以使用CXF攔截器來實現它,但我想堅持使用JAX-RS 2.0提供的功能。 我在另一篇文章中看到你可以在Rest-easy中使用下面的內容
ResourceMethodInvoker methodInvoker = (ResourceMethodInvoker)
requestContext.getProperty("org.jboss.resteasy.core.ResourceMethodInvoker");
Method method = methodInvoker.getMethod();
在CXF中可以采用類似的方法嗎?
謝謝
只需在過濾器類中添加以下內容作為實例變量:
@Context
ResourceInfo信息;
“javax.ws.rs.container.ResourceInfo是一個新的JAX-RS上下文,可以將其注入到過濾器和攔截器中,並檢查哪些資源類和方法即將被調用。 ”
(來源: https : //cwiki.apache.org/confluence/display/CXF20DOC/JAX-RS+Basics#JAX-RSBasics-ResourceInfo )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.