1
我在使用WebClient類(org.apache.cxf.jaxrs.client.WebClient
)時使攔截器觸發時出現問題。在我調用RESTful服務的方法中,我添加了一個攔截器在out階段執行。我有意提供了無效的屬性,所以我可以看到攔截器失敗,但該方法成功完成。使JAX RS CXF攔截器與WebClient配合使用
這裏是我一起工作的代碼:
private String callService2(String webServiceUrl) {
JAXRSClientFactoryBean bean = new JAXRSClientFactoryBean();
bean.setAddress(webServiceUrl);
// setup properties
Map<String, Object> properties = new HashMap<String, Object>();
properties.put("ws-security.signature.username", "client");
properties.put("ws-security.signature.properties",
"client_nonexistantfile.properties");
bean.setProperties(properties);
XmlSigOutInterceptor sigInterceptor = new XmlSigOutInterceptor();
bean.getOutInterceptors().add(sigInterceptor);
// use WebClient (or proxy) as usual
WebClient wc = bean.createWebClient();
TestInfoResponse response = wc.accept("application/xml").get(TestInfoResponse.class);
return response.getContents();
}
我期待的XmlSigOutInterceptor
邏輯失敗,因爲屬性文件不存在,但該方法成功完成。我在加入XmlSigOutInterceptor
時做錯了什麼。
在此先感謝。