本文整理汇总了Java中javax.wsdl.extensions.soap.SOAPHeader类的典型用法代码示例。如果您正苦于以下问题:Java SOAPHeader类的具体用法?Java SOAPHeader怎么用?Java SOAPHeader使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SOAPHeader类属于javax.wsdl.extensions.soap包,在下文中一共展示了SOAPHeader类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: processSoapHeaderParts
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
private void processSoapHeaderParts(WSDLAwareMessage message, BindingInput bindingInput,
Operation op) throws AxisFault {
/* TODO: Analyze the header handling implementation */
List<SOAPHeader> headerDefs = getSOAPHeaders(bindingInput);
org.apache.axiom.soap.SOAPHeader soapHeader = inMessageCtx.getEnvelope().getHeader();
for (SOAPHeader headerDef : headerDefs) {
handleSoapHeaderPartDef(message, headerDef, op.getInput().getMessage(), soapHeader);
}
if (soapHeader != null) {
Iterator headersIter = soapHeader.getChildElements();
while (headersIter.hasNext()) {
OMElement header = (OMElement) headersIter.next();
String partName = findHeaderPartName(headerDefs, header.getQName());
//The following commented fix, avoids adding any of the headers. So that reverting
// back to old fix
// if (partName != null) {
// Fix for JIRA https://wso2.org/jira/browse/CARBON-5499
message.addHeaderPart(partName, header);
// }
}
}
}
示例2: findHeaderPartName
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
private String findHeaderPartName(List<SOAPHeader> headerDefs, QName elementName) {
for (SOAPHeader headerDef : headerDefs) {
Message hdrMsg = wsdlDef.getMessage(headerDef.getMessage());
for (Object o : hdrMsg.getParts().values()) {
Part p = (Part) o;
if (p.getElementName().equals(elementName)) {
return p.getName();
}
}
}
//The following commented fix, avoids adding any of the headers. So that reverting back to old fix
return elementName.getLocalPart();
// // Fix to avoid unwanted headers getting copied to input Message to ODE.
// // JIRA - https://wso2.org/jira/browse/CARBON-5499
// return null;
}
示例3: makeHeaders
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
private List<SOAPHeader> makeHeaders(Definition definition) throws WSDLException {
List<SOAPHeader> list = new ArrayList<SOAPHeader>();
String[] parts = new String[] { XTeeHeader.CLIENT.getLocalPart(), XTeeHeader.SERVICE.getLocalPart(),
XTeeHeader.USER_ID.getLocalPart(), XTeeHeader.ID.getLocalPart(),
XTeeHeader.PROTOCOL_VERSION.getLocalPart() };
ExtensionRegistry extReg = definition.getExtensionRegistry();
for (int i = 0; i < parts.length; i++) {
SOAPHeader header =
(SOAPHeader) extReg.createExtension(BindingInput.class, new QName(SOAP_11_NAMESPACE_URI, "header"));
header.setMessage(new QName(definition.getTargetNamespace(), XTeeWsdlDefinition.XROAD_HEADER));
header.setPart(parts[i]);
if (use.equalsIgnoreCase(LITERAL)) {
header.setUse(LITERAL);
} else {
header.setUse(ENCODED);
header.setEncodingStyles(Arrays.asList(ENCODING));
}
list.add(header);
}
return list;
}
示例4: handleSoapHeaderPartDef
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
private void handleSoapHeaderPartDef(WSDLAwareMessage message, SOAPHeader headerDef,
Message msgType,
org.apache.axiom.soap.SOAPHeader soapHeader)
throws AxisFault {
boolean payloadMessageHeader = headerDef.getMessage() == null ||
headerDef.getMessage().equals(msgType.getQName());
boolean requiredHeader = payloadMessageHeader || (headerDef.getRequired() != null &&
headerDef.getRequired());
if (requiredHeader && soapHeader == null) {
throw new AxisFault("Missing required SOAP header element.");
}
if (soapHeader == null) {
return;
}
Message headerMsg = wsdlDef.getMessage(headerDef.getMessage());
if (headerMsg == null) {
return;
}
Part p = headerMsg.getPart(headerDef.getPart());
if (p == null || p.getElementName() == null) {
return;
}
OMElement headerEl = soapHeader.getFirstChildWithName(p.getElementName());
if (requiredHeader && headerEl == null) {
throw new AxisFault("Missing required SOAP header element.");
}
if (headerEl == null) {
return;
}
message.addHeaderPart(p.getName(), headerEl);
}
示例5: handleSoapHeaderPartDef
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
private void handleSoapHeaderPartDef(WSDLAwareMessage message, SOAPHeader headerDef,
Message msgType,
org.apache.axiom.soap.SOAPHeader soapHeader)
throws AxisFault {
boolean payloadMessageHeader = headerDef.getMessage() == null ||
headerDef.getMessage().equals(msgType.getQName());
boolean requiredHeader = payloadMessageHeader || (headerDef.getRequired() != null &&
headerDef.getRequired());
if (requiredHeader && soapHeader == null) {
throw new AxisFault("Missing required SOAP header element.");
}
if (soapHeader == null) {
return;
}
Message headerMsg = wsdlDef.getMessage(headerDef.getMessage());
if (headerMsg == null) {
return;
}
Part p = headerMsg.getPart(headerDef.getPart());
if (p == null || p.getElementName() == null) {
return;
}
OMElement headerEl = soapHeader.getFirstChildWithName(p.getElementName());
if (requiredHeader && headerEl == null) {
throw new AxisFault("Missing required SOAP header element.");
}
if (headerEl == null) {
return;
}
message.addHeaderPart(p.getName(), headerEl);
}
示例6: populateBindingInput
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
@Override
protected void populateBindingInput(Definition definition, BindingInput bindingInput, Input input)
throws WSDLException {
for (SOAPHeader header : makeHeaders(definition)) {
bindingInput.addExtensibilityElement(header);
}
super.populateBindingInput(definition, bindingInput, input);
}
示例7: populateBindingOutput
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
@Override
protected void populateBindingOutput(Definition definition, BindingOutput bindingOutput, Output output)
throws WSDLException {
for (SOAPHeader header : makeHeaders(definition)) {
bindingOutput.addExtensibilityElement(header);
}
super.populateBindingOutput(definition, bindingOutput, output);
}
示例8: getSOAPHeaders
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
/**
* Build a HashSet of SOAP header names for the specified operation and binding.
*
* @param binding WSDL Binding instance.
* @param operationName Name of the operation.
* @return HashSet of soap header names, empty set if no headers present.
*/
protected static HashSet<String> getSOAPHeaders(Binding binding, String operationName) {
List<ExtensibilityElement> headers = new ArrayList<ExtensibilityElement>();
BindingOperation bindingOperation = binding.getBindingOperation(operationName, null, null);
if (bindingOperation == null) {
throw new IllegalArgumentException("Can not find operation: " + operationName);
}
BindingInput bindingInput = bindingOperation.getBindingInput();
if (bindingInput != null) {
headers.addAll(WsdlUtils.findExtensibilityElements(bindingInput, SOAP_HEADER_ELEMENT_NAME));
}
BindingOutput bindingOutput = bindingOperation.getBindingOutput();
if (bindingOutput != null) {
headers.addAll(WsdlUtils.findExtensibilityElements(bindingOutput, SOAP_HEADER_ELEMENT_NAME));
}
HashSet<String> headerSet = new HashSet<String>(headers.size());
for (ExtensibilityElement element : headers) {
if (element instanceof SOAP12Header) {
headerSet.add(((SOAP12Header)element).getPart());
} else {
headerSet.add(((SOAPHeader)element).getPart());
}
}
return headerSet;
}
示例9: getSOAPHeaders
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
/**
* Build a HashSet of SOAP header names for the specified operation and binding.
*
* @param binding
* WSDL Binding instance.
* @param operationName
* Name of the operation.
* @return HashSet of soap header names, empty set if no headers present.
*/
protected static HashSet<String> getSOAPHeaders( Binding binding, String operationName ) {
List<ExtensibilityElement> headers = new ArrayList<ExtensibilityElement>();
BindingOperation bindingOperation = binding.getBindingOperation( operationName, null, null );
if ( bindingOperation == null ) {
throw new IllegalArgumentException( "Can not find operation: " + operationName );
}
BindingInput bindingInput = bindingOperation.getBindingInput();
if ( bindingInput != null ) {
headers.addAll( WsdlUtils.findExtensibilityElements( bindingInput, SOAP_HEADER_ELEMENT_NAME ) );
}
BindingOutput bindingOutput = bindingOperation.getBindingOutput();
if ( bindingOutput != null ) {
headers.addAll( WsdlUtils.findExtensibilityElements( bindingOutput, SOAP_HEADER_ELEMENT_NAME ) );
}
HashSet<String> headerSet = new HashSet<String>( headers.size() );
for ( ExtensibilityElement element : headers ) {
if ( element instanceof SOAP12Header ) {
headerSet.add( ( (SOAP12Header) element ).getPart() );
} else {
headerSet.add( ( (SOAPHeader) element ).getPart() );
}
}
return headerSet;
}
示例10: getSOAPHeaders
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
@SuppressWarnings("unchecked")
public static List<SOAPHeader> getSOAPHeaders(ElementExtensible eee) {
return CollectionsX.filter(new ArrayList<SOAPHeader>(),
(Collection<Object>) eee.getExtensibilityElements(),
SOAPHeader.class);
}
示例11: getSOAPHeaders
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
@SuppressWarnings("unchecked")
public static List<SOAPHeader> getSOAPHeaders(ElementExtensible eee) {
return CollectionsX.filter(new ArrayList<SOAPHeader>(),
(Collection<Object>) eee.getExtensibilityElements(),
SOAPHeader.class);
}
示例12: getNamespaceFromSOAPElement
import javax.wsdl.extensions.soap.SOAPHeader; //导入依赖的package包/类
/**
* This method will loop through a list of extensibility elements looking for one
* of four objects: SOAPBody, SOAP12Body, SOAPHeader, SOAP12Header. If any of these
* objects are found the namespace URI from this object will be returned.
*/
public static String getNamespaceFromSOAPElement(List extElements) {
Iterator extIter = extElements.iterator();
while (extIter.hasNext()) {
Object extObj = extIter.next();
if (extObj instanceof SOAPBody) {
if (log.isDebugEnabled()) {
log.debug("Returning SOAPBody namespace: "
+ ((SOAPBody) extObj).getNamespaceURI());
}
return ((SOAPBody) extObj).getNamespaceURI();
} else if (extObj instanceof SOAP12Body) {
if (log.isDebugEnabled()) {
log.debug("Returning SOAP12Body namespace: "
+ ((SOAP12Body) extObj).getNamespaceURI());
}
return ((SOAP12Body) extObj).getNamespaceURI();
} else if (extObj instanceof SOAPHeader) {
if (log.isDebugEnabled()) {
log.debug("Returning SOAPHeader namespace: "
+ ((SOAPHeader) extObj).getNamespaceURI());
}
return ((SOAPHeader) extObj).getNamespaceURI();
} else if (extObj instanceof SOAP12Header) {
if (log.isDebugEnabled()) {
log.debug("Returning SOAP12Header namespace: "
+ ((SOAP12Header) extObj).getNamespaceURI());
}
return ((SOAP12Header) extObj).getNamespaceURI();
}
else if (extObj instanceof MIMEMultipartRelated) {
if (log.isDebugEnabled()) {
log.debug("Found a MIMEMultipartRelated element. Unwrapping to get SOAP binding.");
}
MIMEMultipartRelated mime = (MIMEMultipartRelated) extObj;
List mimeParts = mime.getMIMEParts();
Iterator itr = mimeParts.iterator();
while (itr.hasNext()) {
MIMEPart mimePart = (MIMEPart) itr.next();
List elements = mimePart.getExtensibilityElements();
String ns = getNamespaceFromSOAPElement(elements);
return ns;
}
}
}
return null;
}