Refine search
private boolean checkPortTypeOperationFault(BindingFaultInfo bfi) { InterfaceInfo ini = null; if ((bfi.getBindingOperation() != null) && (bfi.getBindingOperation().getOperationInfo() != null)) { ini = bfi.getBindingOperation().getOperationInfo().getInterface(); } return (ini != null) && (ini.getName() != null) && (bfi.getBindingOperation().getName() != null) && (bfi.getFaultInfo().getFaultName() != null) && wsdl11XPointer.matchesPortTypeOperationFault( ini.getName().getNamespaceURI(), ini.getName().getLocalPart(), bfi.getBindingOperation().getName().getLocalPart(), bfi.getFaultInfo().getFaultName().getLocalPart()); }
private boolean checkBindingOperationFault(BindingFaultInfo bfi) { return (bfi.getFaultInfo() != null) && (bfi.getFaultInfo().getFaultName() != null) && (bfi.getBindingOperation().getName() != null) && (bfi.getBindingOperation().getBinding() != null) && (bfi.getBindingOperation().getBinding().getName() != null) && wsdl11XPointer.matchesBindingOperationFault( bfi.getFaultInfo().getFaultName().getNamespaceURI(), bfi.getBindingOperation().getBinding().getName().getLocalPart(), bfi.getBindingOperation().getName().getLocalPart(), bfi.getFaultInfo().getFaultName().getLocalPart()); }
private BindingFaultInfo mapToWrappedBindingFaultInfo(BindingFaultInfo bfi) { BindingOperationInfo boi = bfi.getBindingOperation(); if (boi != null && boi.isUnwrapped()) { boi = boi.getWrappedOperation(); for (BindingFaultInfo bf2 : boi.getFaults()) { if (bf2.getFaultInfo().getName().equals(bfi.getFaultInfo().getName())) { return bf2; } } } return bfi; } public void setEffectiveServerFaultPolicy(EndpointInfo ei, BindingFaultInfo bfi, EffectivePolicy ep) {
private void addBindingOperationDocs(Endpoint ep) { for (BindingOperationInfo binfo : ep.getBinding() .getBindingInfo().getOperations()) { List<WSDLDocumentation> later = CastUtils.cast((List<?>)binfo.getOperationInfo() .getProperty(EXTRA_DOCUMENTATION)); if (later != null) { switch (doc.placement()) { case BINDING_OPERATION: binfo.setDocumentation(doc.value()); break; case BINDING_OPERATION_INPUT: binfo.getInput().setDocumentation(doc.value()); break; case BINDING_OPERATION_OUTPUT: case BINDING_OPERATION_FAULT: { for (BindingFaultInfo f : binfo.getFaults()) { if (doc.faultClass().equals(f.getFaultInfo() .getProperty(Class.class.getName()))) { f.setDocumentation(doc.value());
List<Policy> later = CastUtils.cast((List<?>)binfo.getOperationInfo() .removeProperty(EXTRA_POLICIES)); if (later != null) { case BINDING_OPERATION: addPolicy(binfo, service, p, cls, binfo.getName().getLocalPart() + "BindingOpPolicy"); break; case BINDING_OPERATION_INPUT: addPolicy(binfo.getInput(), service, p, cls, binfo.getName().getLocalPart() + "BindingOpInputPolicy"); break; case BINDING_OPERATION_FAULT: { for (BindingFaultInfo f : binfo.getFaults()) { if (p.faultClass().equals(f.getFaultInfo() .getProperty(Class.class.getName()))) { addPolicy(f, service, p, cls, f.getFaultInfo().getName().getLocalPart() + "BindingOpFaultPolicy");
for (BindingFaultInfo faultInfo : b.getFaults()) { SoapFault soapFault = SOAPBindingUtil.createSoapFault(extensionRegistry, isSoap12); soapFault.setUse("literal"); soapFault.setName(faultInfo.getFaultInfo().getFaultName().getLocalPart()); faultInfo.addExtensor(soapFault); SoapOperationInfo soi = b.getExtensor(SoapOperationInfo.class); boolean isRpc = "rpc".equals(soapOperation.getStyle()); b.addExtensor(soapOperation); if (b.getInput() != null) {
for (BindingOperationInfo b : bindingInfo.getOperations()) { Collection<BindingFaultInfo> bindingFaults = b.getFaults(); if (bindingFaults != null) { for (BindingFaultInfo bindingFaultInfo : bindingFaults) { if (bindingFaultInfo.getFaultInfo().getMessageParts().get(0).getConcreteName().equals( qname)) { String currentOperationName = b.getOperationInfo().getName().toString(); if (operationName.equals(currentOperationName)) { contextInfo.setCorrelationID(correlationID); if (matchingBindingOperationInfo != null) { contextInfo.setWsdlOperation(matchingBindingOperationInfo.getName()); contextInfo.setWsdlService((QName) exchange.get("javax.xml.ws.wsdl.service")); contextInfo.setWsdlInterface((QName) exchange.get("javax.xml.ws.wsdl.interface"));
addPolicy(binfo, si, pa, cls, binfo.getName().getLocalPart() + "BindingOpPolicy"); addPolicy(binfo.getInput(), si, pa, cls, binfo.getName().getLocalPart() + "BindingOpInputPolicy"); for (BindingFaultInfo f : binfo.getFaults()) addPolicy(f, si, pa, cls, f.getFaultInfo().getName().getLocalPart() + "BindingOpFaultPolicy");
message.getExchange().getBindingOperationInfo(); if (bindingOpInfo != null) { if (bindingOpInfo.isUnwrappedCapable()) { bindingOpInfo = bindingOpInfo.getUnwrappedOperation(); MessageInfo msgInfo = ContextUtils.isRequestor(message) ? bindingOpInfo.getOperationInfo().getInput() : bindingOpInfo.getOperationInfo().getOutput(); String cachedAction = (String)msgInfo.getProperty(ContextUtils.ACTION); for (BindingFaultInfo bfi : bindingOpInfo.getFaults()) { FaultInfo fi = bfi.getFaultInfo(); if (fi.size() == 0) { continue; if (fi.getExtensionAttributes() == null) { continue; fi.getExtensionAttributes().get(Names.WSAW_ACTION_QNAME); if (attr == null) { attr = (String)
for (BindingFaultInfo fi : boi.getFaults()) { Class<?> c = fi.getFaultInfo().getProperty(Class.class.getName(), Class.class); if (c != null && c.isInstance(ex)) { return ex;
protected void processFaultDetail(Fault fault, Message msg) { if (fault.getDetail() == null) { return; } Element exDetail = (Element) DOMUtils.getChild(fault.getDetail(), Node.ELEMENT_NODE); if (exDetail == null) { return; } QName qname = new QName(exDetail.getNamespaceURI(), exDetail .getLocalName()); faultWanted = null; BindingOperationInfo boi = msg.getExchange().get( BindingOperationInfo.class); if (boi.isUnwrapped()) { boi = boi.getWrappedOperation(); } for (BindingFaultInfo bfi : boi.getFaults()) { for (MessagePartInfo mpi : bfi.getFaultInfo().getMessageParts()) { if (qname.equals(mpi.getConcreteName())) { faultWanted = bfi; msg.put(BindingFaultInfo.class, faultWanted); break; } } if (faultWanted != null) { break; } } }
OperationInfo op = binding.getInterface().getOperation(bo.getName()); if (op.getInput() != null && op.getInput().getMessagePartsNumber() == 1) { for (BindingFaultInfo fault : bo.getFaults()) { if (fault.getFaultInfo().getMessagePartsNumber() > 1) { Message msg = new Message("FAULT_WITH_MULTIPLE_PARTS", LOG, fault.getFaultInfo().getName() .getLocalPart()); addErrorMessage(msg.toString());
protected BindingFaultInfo getBindingFaultInfo(Message msg, Exception ex, BindingOperationInfo boi) { BindingFaultInfo bfi = msg.get(BindingFaultInfo.class); if (null == bfi && ex != null) { Throwable cause = ex.getCause(); if (null == cause) { return null; } for (BindingFaultInfo b : boi.getFaults()) { Class<?> faultClass = b.getFaultInfo().getProperty(Class.class.getName(), Class.class); if (faultClass != null && faultClass.isAssignableFrom(cause.getClass())) { bfi = b; msg.put(BindingFaultInfo.class, bfi); break; } } if (null == bfi && null != boi.getWrappedOperation()) { for (BindingFaultInfo b : boi.getWrappedOperation().getFaults()) { Class<?> faultClass = b.getFaultInfo().getProperty(Class.class.getName(), Class.class); if (faultClass != null && faultClass.isAssignableFrom(cause.getClass())) { bfi = b; msg.put(BindingFaultInfo.class, bfi); break; } } } } return bfi; }
for (BindingFaultInfo bfi : boi.getFaults()) { FaultInfo fi = bfi.getFaultInfo(); MessagePartInfo mpi = fi.getMessageParts().get(0); if (mpi != null) { Fault fault = (Fault) message.getContent(Exception.class);
public Policy getEffectivePolicy(BindingFaultInfo bfi, Message m) { ServiceInfo si = bfi.getBindingOperation().getBinding().getService(); DescriptionInfo di = si.getDescription(); Policy p = getElementPolicy(bfi, false, di); FaultInfo fi = bfi.getFaultInfo(); p = mergePolicies(p, getElementPolicy(fi, true, di)); Extensible ex = getMessageTypeInfo(fi.getName(), di); p = mergePolicies(p, getElementPolicy(ex, false, di)); return p; }
protected void buildBindingFault(Definition def, BindingOperation bindingOperation, Collection<BindingFaultInfo> bindingFaultInfos) { BindingFault bindingFault = null; for (BindingFaultInfo bindingFaultInfo : bindingFaultInfos) { bindingFault = def.createBindingFault(); addDocumentation(bindingFault, bindingFaultInfo.getDocumentation()); bindingFault.setName(bindingFaultInfo.getFaultInfo().getFaultName().getLocalPart()); bindingOperation.addBindingFault(bindingFault); addExtensibilityAttributes(def, bindingFault, bindingFaultInfo.getExtensionAttributes()); addExtensibilityElements(def, bindingFault, getWSDL11Extensors(bindingFaultInfo)); } }
private void validateFaultDetail(Element detail, Schema schema, BindingOperationInfo bop) throws Exception { if (detail != null) { Element el = DOMUtils.getFirstElement(detail); while (el != null) { QName qn = DOMUtils.getElementQName(el); for (BindingFaultInfo bfi : bop.getFaults()) { if (bfi.getFaultInfo().getMessagePartByIndex(0).getConcreteName().equals(qn)) { //Found a fault with the correct QName, we can validate it schema.newValidator().validate(new DOMSource(DOMUtils.getDomElement(el))); } } el = DOMUtils.getNextElement(el); } } } private void validateFault(SoapMessage message, SOAPFault fault, BindingOperationInfo bop) {
public BindingOperationInfo(BindingInfo bi, OperationInfo opinfo) { bindingInfo = bi; opInfo = opinfo; if (opInfo.getInput() != null) { inputMessage = new BindingMessageInfo(opInfo.getInput(), this); } else { inputMessage = null; } if (opInfo.getOutput() != null) { outputMessage = new BindingMessageInfo(opInfo.getOutput(), this); } else { outputMessage = null; } Collection<FaultInfo> of = opinfo.getFaults(); if (of != null && !of.isEmpty()) { faults = new ConcurrentHashMap<>(of.size(), 0.75f, 2); for (FaultInfo fault : of) { faults.put(fault.getFaultName(), new BindingFaultInfo(fault, this)); } } if (opinfo.isUnwrappedCapable()) { opHolder = new BindingOperationInfo(bi, opinfo.getUnwrappedOperation(), this); } } BindingOperationInfo(BindingInfo bi, OperationInfo opinfo, BindingOperationInfo wrapped) {
@Override public boolean appliesTo(BindingFaultInfo bfi) { if ((bfi == null) || (bfi.getFaultInfo() == null) || (bfi.getBindingOperation() == null)) { return false; } if (checkBindingOperationFault(bfi)) { return true; } return checkPortTypeOperationFault(bfi); }
private void addBindingOperationDocs(Endpoint ep) { for (BindingOperationInfo binfo : ep.getBinding() .getBindingInfo().getOperations()) { List<WSDLDocumentation> later = CastUtils.cast((List<?>)binfo.getOperationInfo() .getProperty(EXTRA_DOCUMENTATION)); if (later != null) { switch (doc.placement()) { case BINDING_OPERATION: binfo.setDocumentation(doc.value()); break; case BINDING_OPERATION_INPUT: binfo.getInput().setDocumentation(doc.value()); break; case BINDING_OPERATION_OUTPUT: case BINDING_OPERATION_FAULT: { for (BindingFaultInfo f : binfo.getFaults()) { if (doc.faultClass().equals(f.getFaultInfo() .getProperty(Class.class.getName()))) { f.setDocumentation(doc.value());