Hello,
i'm using following code to obtain client proxy (some comments in code)
JaxWsProxyFactoryBean factory = new
JaxWsProxyFactoryBean();
factory.setServiceClass(serviceInterface); // here is
wsdl2java generated port interface (which contains soapaction="default")
factory.setAddress(address); // service provider endpoint
factory.setWsdlLocation(wsdlLocation); // in form
classpath:xx.wsdl
factory.setServiceName(QName.valueOf(serviceName)); //
from wsdl
factory.setProperties(new HashMap<String, Object>());
factory.getProperties().put("schema-validation-enabled",
new Boolean(schemaValidationEnabled)); // true
T port = (T) factory.create();
i'm using cxf 2.1
during initialization it takes buildServiceFromWSDL path in
ReflectionServiceFactoryBean
during this path, it never invoked line like o.setProperty("action",
getAction(o, method));
which results in missing (empty) soap action .... which doesn't work for
system i want to call.
Am I doing something wrongly? Or did i miss something?
I see it as a bug and fix seems to be to add missing magic line into
initializeWSDLOperation of JaxWsServiceFactoryBean class. There are more
places which are good enough for me, but i don't know which is the best in
general.
best regards
jano