schemaGenerator.setExcludeMethods(excludeOperations);
Collection schemas = schemaGenerator.generateSchema();
axisService.addSchema(schemas);
JMethod [] method = schemaGenerator.getMethods();
TypeTable table = schemaGenerator.getTypeTable();
PhasesInfo pinfo = axisConfig.getPhasesInfo();
for (int i = 0; i < method.length; i++) {
JMethod jmethod = method[i];
if (!jmethod.isPublic()) {
// no need to expose , private and protected methods
continue;
}
if (jmethod.getSimpleName().equals("init")
|| DependencyManager.MESSAGE_CONTEXT_INJECTION_METHOD.equals(jmethod.getSimpleName())
|| DependencyManager.SERVICE_DESTROY_METHOD.equals(jmethod.getSimpleName()))
continue;
String opName = jmethod.getSimpleName();
AxisOperation operation = axisService.getOperation(new QName(opName));
// if the opeartion there in services.xml then try to set it schema element name
if (operation != null) {
AxisMessage inMessage = operation.getMessage(
WSDLConstants.MESSAGE_LABEL_IN_VALUE);
if (inMessage != null) {
inMessage.setName(opName + Java2WSDLConstants.MESSAGE_SUFFIX);
inMessage.setElementQName(table.getComplexSchemaType(jmethod.getSimpleName()));
}
if (!jmethod.getReturnType().isVoidType()) {
AxisMessage outMessage = operation.getMessage(
WSDLConstants.MESSAGE_LABEL_OUT_VALUE);
outMessage.setElementQName(table.getQNamefortheType(jmethod.getSimpleName() +
Java2WSDLConstants.RESPONSE));
outMessage.setName(opName + Java2WSDLConstants.RESPONSE);
}
} else {
operation = getAxisOperationforJmethod(jmethod, table);