2016-08-05 2 views
1
의 그 SOAPMessage에 null 인 나는 SOAP 웹 서비스 작업 및

BindingOperationInfo은 CXF

을 무시 CXF의 AbstractSoapInterceptor에서 클래스를 확장하고

handleMessage이 방법에서는 (SOAPMessage를 메시지)

내가 노력하고 있어요 BindingOperationInfo를 가져 오지 만 NULL입니다. cxf 버전 3.1.5를 사용하고 있지만 cxf 버전 2.7.5를 사용하는 경우 BindingOperationInfo는 작업 이름 값을 가질 것입니다.

아래 클래스,

public class SoInterceptor extends AbstractWsHeaderInterceptor { 

public SoInterceptor() throws JAXBException { 
    super(); 
} 

@Override 
public void handleMessage(SoapMessage message) throws Fault { 
    Exchange exchange = message.getExchange(); 
    BindingOperationInfo boi = exchange.getBindingOperationInfo(); 
    org.apache.cxf.endpoint.Endpoint endpoint = exchange.getEndpoint(); 
    org.apache.cxf.service.Service service =endpoint.getService(); 

}} 

BindingOperationInfo 코드에서 널 점점 찾아주세요. 내가 무엇이든 놓친다면 알려줘.

답변

0

이 대신

//Get the endpoint 
Endpoint endpoint = message.getExchange().get(Endpoint.class); 

//Get the service called 
Service service = message.getExchange().get(Service.class); 

//Get the details of the operation 
OperationResourceInfo operation = message.getExchange().get(OperationResourceInfo.class); 
을 사용할 수 있습니다