Мне нужно удалить soapAction из этого заголовка:
Headers: {Accept=[*/*], SOAPAction ["http://www.ya.ru/mybank/method/getDollars"]}
Моя конфигурация выглядит так:
@PostConstruct
public void initialization(){
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.setServiceClass(MyClass.class);
factory.setAddress(myWsdlUrl);
service = (MyClass) factory.create();
Client client = ClientProxy.getClient(service);
}
@Bean
public SAAJMetaFactory messageFactory(){
return new SAAJMetaFactoryImpl();
}
В классе обслуживания я делаю такой запрос:
@Service
public class MyIntegrationImpl implements MyIntegration {
private MyClass service;
public MyIntegrationImpl(MyClass service) {
this.service = service;
}
@Override
public Info getVpc(ReqClass req, String clientPhone) {
return service.getInfo(req, clientPhone);
}
}
Я нашел этот код, но я не знаю, как его применить:
public class RemoveActionHandler implements SOAPHandler<SOAPMessageContext> {
@Override
public Set<QName> getHeaders() {
System.out.println("Server : getHeaders()");
return null;
}
@Override
public boolean handleMessage(SOAPMessageContext context) {
if ("".equals(context.get(BindingProvider.SOAPACTION_URI_PROPERTY)))
context.put(BindingProvider.SOAPACTION_URI_PROPERTY, null);
return true;
}
@Override
public boolean handleFault(SOAPMessageContext context) {
System.out.println("Server : handleFault()");
return true;
}
@Override
public void close(MessageContext context) {
System.out.println("Server : close()");
}
}
Этот код может удалить необходимый заголовок