I've digged a bit into CXF source code...

A WSDL is created by ServiceWSDLBuilder, which gathers needed informations from ServiceInfo. If JAX-WS + Aegis is used then ServiceInfo#getSchemas() returns empty list, thus a wsdl:types section is not created.

A service info is created in ReflectionServiceFactoryBean#buildServiceFromClass(). This method calls initializeWrappedSchema(). There is one particular condition here:

if (op.getInput().getMessageParts().get(0).getTypeClass() == null) {
...
}

which guards schema generation code. For some reason this block is ommited if my webapp is declared as a JEE application.

Any sensible reason for such behavior?

Reply via email to