operationList.addAll(operationMap.keySet());
// bindingOperationList
Iterator ite = binding.getBindingOperations().iterator();
while (ite.hasNext()) {
BindingOperation bop = (BindingOperation)ite.next();
QName bopName = new QName(def.getTargetNamespace(), bop.getName());
if (!operationList.contains(bopName)) {
Node errNode = ErrNodeLocator.getNode(document, WSDLConstants.QNAME_BINDING,
bindingName.getLocalPart(), bop.getName());
schemaWSDLValidator.addError(errNode, "BindingOperation " + bop.getName()
+ " is not defined");
isValid = false;
} else {
Operation op = operationMap.get(bopName);
if (op.getInput() == null && bop.getBindingInput() != null) {
Node errNode = ErrNodeLocator.getNode(document, WSDLConstants.QNAME_BINDING,
bindingName.getLocalPart(), bop.getName());
schemaWSDLValidator.addError(errNode, "BindingOperation " + bop.getName()
+ " binding input is not defined");
isValid = false;
}
if (op.getInput() != null && bop.getBindingInput() == null) {
Node errNode = ErrNodeLocator.getNode(document, WSDLConstants.QNAME_BINDING,
bindingName.getLocalPart(), bop.getName());
schemaWSDLValidator.addError(errNode, "BindingOperation " + bop.getName()
+ " binding input is not resolved");
isValid = false;
}
if (op.getOutput() == null && bop.getBindingOutput() != null) {
Node errNode = ErrNodeLocator.getNode(document, WSDLConstants.QNAME_BINDING,
bindingName.getLocalPart(), bop.getName());
schemaWSDLValidator.addError(errNode, "BindingOperation " + bop.getName()
+ " binding output is not defined");
isValid = false;
}
if (op.getOutput() != null && bop.getBindingOutput() == null) {
Node errNode = ErrNodeLocator.getNode(document, WSDLConstants.QNAME_BINDING,
bindingName.getLocalPart(), bop.getName());
schemaWSDLValidator.addError(errNode, "BindingOperation " + bop.getName()
+ " binding output is not resolved");
isValid = false;
}
if (op.getFaults().size() != bop.getBindingFaults().size()) {
Node errNode = ErrNodeLocator.getNode(document, WSDLConstants.QNAME_BINDING,
bindingName.getLocalPart(), bop.getName());
schemaWSDLValidator.addError(errNode, "BindingOperation " + bop.getName()
+ " binding fault resolved error");
isValid = false;
}
}