MustUnderstand headers:[{http://www.w3.org/2005/08/addressing}Action] are not understood

今天调取webservice接口遇到个问题,网上找了很多解决办法,说什么的都有。最后自己亲试得以解决。

首先我生成客户端用以调取,但是服务调取报错:MustUnderstand headers:[{http://www.w3.org/2005/08/addressing}Action] are not understood。

一开始以为是版本不统一,但后来发现并不是。

最后在getWSHttpBindingIMYService 方法里做了改动

@WebEndpoint(name = "WSHttpBinding_IMYService")

public IMYService getWSHttpBindingIMYService() { return super.getPort(new QName("http://tempuri.org/", "WSHttpBinding_IMYService"), IMYService.class,new javax.xml.ws.soap.AddressingFeature(true,true) ); }

@WebEndpoint(name = "WSHttpBinding_IMYService")

public IMYService getWSHttpBindingIMYService(WebServiceFeature... features) { return super.getPort(new QName("http://tempuri.org/", "WSHttpBinding_IMYService"), IMYService.class, new javax.xml.ws.soap.AddressingFeature(true,true)); }

这两个方法的最后一个参数加入 new javax.xml.ws.soap.AddressingFeature(true,true),亲试问题解决。

你可能感兴趣的:(java)