本文整理汇总了Java中org.apache.axiom.soap.SOAPHeader类的典型用法代码示例。如果您正苦于以下问题:Java SOAPHeader类的具体用法?Java SOAPHeader怎么用?Java SOAPHeader使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SOAPHeader类属于org.apache.axiom.soap包,在下文中一共展示了SOAPHeader类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: removeSOAPHeader
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
private void removeSOAPHeader(MessageDataSource messageDataSource) throws SOAPException {
SOAPEnvelope soapEnvelope = (SOAPEnvelope) messageDataSource.getDataObject();
SOAPHeader soapHeader = soapEnvelope.getHeader();
if (soapHeader != null) {
for (Iterator iter = soapHeader.examineAllHeaderBlocks(); iter.hasNext(); ) {
Object o = iter.next();
if (o instanceof SOAPHeaderBlock) {
SOAPHeaderBlock headerBlk = (SOAPHeaderBlock) o;
if (name.equals(headerBlk.getLocalName())) {
headerBlk.detach();
}
} else if (o instanceof OMElement) {
OMElement headerElem = (OMElement) o;
if (name.equals(headerElem.getLocalName())) {
headerElem.detach();
}
}
}
}
}
示例2: buildSoapEnvelope
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
private SOAPEnvelope buildSoapEnvelope(String clientID, String value) {
SOAPFactory soapFactory = OMAbstractFactory.getSOAP12Factory();
SOAPEnvelope envelope = soapFactory.createSOAPEnvelope();
SOAPHeader header = soapFactory.createSOAPHeader();
envelope.addChild(header);
OMNamespace synNamespace = soapFactory.createOMNamespace(
"http://ws.apache.org/ns/synapse", "syn");
OMElement clientIDElement = soapFactory.createOMElement("ClientID", synNamespace);
clientIDElement.setText(clientID);
header.addChild(clientIDElement);
SOAPBody body = soapFactory.createSOAPBody();
envelope.addChild(body);
OMElement valueElement = soapFactory.createOMElement("Value", null);
valueElement.setText(value);
body.addChild(valueElement);
return envelope;
}
示例3: buildSoapEnvelope
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
private SOAPEnvelope buildSoapEnvelope(String clientID, String value) {
SOAPFactory soapFactory = OMAbstractFactory.getSOAP12Factory();
SOAPEnvelope envelope = soapFactory.createSOAPEnvelope();
SOAPHeader header = soapFactory.createSOAPHeader();
envelope.addChild(header);
OMNamespace synNamespace = soapFactory.
createOMNamespace("http://ws.apache.org/ns/synapse", "syn");
OMElement clientIDElement = soapFactory.createOMElement("ClientID", synNamespace);
clientIDElement.setText(clientID);
header.addChild(clientIDElement);
SOAPBody body = soapFactory.createSOAPBody();
envelope.addChild(body);
OMElement valueElement = soapFactory.createOMElement("Value", null);
valueElement.setText(value);
body.addChild(valueElement);
return envelope;
}
示例4: checkSOAP12
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
protected void checkSOAP12() throws XdsWSException {
if (MessageContext.getCurrentMessageContext().isSOAP11()) {
throwFault("SOAP 1.1 not supported");
}
SOAPEnvelope env = MessageContext.getCurrentMessageContext().getEnvelope();
if (env == null)
throwFault("No SOAP envelope found");
SOAPHeader hdr = env.getHeader();
if (hdr == null)
throwFault("No SOAP header found");
if ( !hdr.getChildrenWithName(new QName("http://www.w3.org/2005/08/addressing","Action")).hasNext()) {
throwFault("WS-Action required in header");
}
}
示例5: extractSoapHeaderParts
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
private static void extractSoapHeaderParts(org.apache.ode.bpel.iapi.Message message,
Definition wsdl,
org.apache.axiom.soap.SOAPHeader soapHeader,
List<javax.wsdl.extensions.soap.SOAPHeader> headerDefs,
Message msg) throws BPELFault {
// Checking that the definitions we have are at least there
for (javax.wsdl.extensions.soap.SOAPHeader headerDef : headerDefs) {
handleSoapHeaderPartDef(message, wsdl, soapHeader, headerDef, msg);
}
// Extracting whatever header elements we find in the message, binding and abstract parts
// aren't reliable enough given what people do out there.
Iterator headersIter = soapHeader.getChildElements();
while (headersIter.hasNext()) {
OMElement header = (OMElement) headersIter.next();
String partName = findHeaderPartName(headerDefs, wsdl, header.getQName());
message.setHeaderPart(partName, OMUtils.toDOM(header));
}
}
示例6: addAttachmentIDHeader
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
/**
* Adding the attachment ids iteratively to the SOAP Header
*
* @param header Header Element where the child elements going to be included
* @param attachmentIDList attachment ids
*/
private void addAttachmentIDHeader(SOAPHeader header, List<Long> attachmentIDList) {
final String namespace = Constants.ATTACHMENT_ID_NAMESPACE;
final String namespacePrefix = Constants.ATTACHMENT_ID_NAMESPACE_PREFIX;
final String parentElementName = Constants.ATTACHMENT_ID_PARENT_ELEMENT_NAME;
final String childElementName = Constants.ATTACHMENT_ID_CHILD_ELEMENT_NAME;
OMNamespace omNs = soapFactory.createOMNamespace(namespace, namespacePrefix);
OMElement headerElement = soapFactory.createOMElement(parentElementName, omNs);
for (Long id : attachmentIDList) {
OMElement idElement = soapFactory.createOMElement(childElementName, omNs);
idElement.setText(String.valueOf(id));
headerElement.addChild(idElement);
}
header.addChild(headerElement);
}
示例7: init
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
/**
* @param envelope
* @throws WebServiceException
*/
private void init(SOAPEnvelope envelope) throws WebServiceException {
root = envelope;
soapFactory = MessageUtils.getSOAPFactory(root);
// Advance past the header
SOAPHeader header = root.getHeader();
if (header == null) {
header = soapFactory.createSOAPHeader(root);
}
// Now advance the parser to the body element
SOAPBody body = root.getBody();
if (body == null) {
// Create the body if one does not exist
body = soapFactory.createSOAPBody(root);
}
}
示例8: testCustomBuilder
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
public void testCustomBuilder(){
try{
SOAPEnvelope env = getMockEnvelope();
SOAPHeader header = env.getHeader();
SOAPBody body = env.getBody();
ParserInputStreamCustomBuilder customBuilder = new ParserInputStreamCustomBuilder("UTF-8");
InputStream payload = new ByteArrayInputStream(mockPayload.getBytes());
OMElement om= customBuilder.create("urn:sample", "invokeOp",(OMContainer) body, parser, OMAbstractFactory.getOMFactory(), payload);
assertTrue(om!=null);
assertTrue(om instanceof OMSourcedElement);
OMSourcedElement ose = (OMSourcedElement)om;
assertNotNull(ose.getDataSource());
assertTrue((ose.getDataSource()) instanceof ParserInputStreamDataSource);
}catch(Exception e){
fail(e.getMessage());
}
}
示例9: init
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
@Before
public void init() throws Exception {
super.init();
soapCommandProcessor = new SoapTransportCommandProcessor(contextResolution, "X-RequestTimeout", new JdkEmbeddedXercesSchemaValidationFailureParser());
init(soapCommandProcessor);
ContentTypeNormaliser ctn = mock(ContentTypeNormaliser.class);
when(ctn.getNormalisedResponseMediaType(any(HttpServletRequest.class))).thenReturn(MediaType.APPLICATION_XML_TYPE);
soapCommandProcessor.setContentTypeNormaliser(ctn);
identityTokenResolver = mock(SoapIdentityTokenResolver.class);
when(identityTokenResolver.resolve(any(SOAPHeader.class), any(X509Certificate[].class))).thenReturn(new ArrayList<IdentityToken>());
soapCommandProcessor.setValidatorRegistry(validatorRegistry);
soapCommandProcessor.bind(serviceBinding);
soapCommandProcessor.onCougarStart();
command=super.createCommand(identityTokenResolver, Protocol.SOAP);
}
示例10: invoke
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
@Override
public ListenableFuture<? extends SOAPResponse> invoke(InvocationContext context, SOAPEnvelope request, Handler<SOAPEnvelope,SOAPResponse> nextHandler) {
Credentials credentials = context.getAttribute(Credentials.class);
if (credentials != null) {
OMFactory factory = request.getOMFactory();
SOAPHeader header = request.getOrCreateHeader();
OMNamespace ns = factory.createOMNamespace("admin", "ns");
header.addAttribute("SecurityEnabled", "true", ns);
if (credentials instanceof BasicAuthCredentials) {
BasicAuthCredentials basicAuthCreds = (BasicAuthCredentials)credentials;
factory.createOMElement("username", null, header).setText(basicAuthCreds.getUsername());
factory.createOMElement("password", null, header).setText(basicAuthCreds.getPassword());
factory.createOMElement("LoginMethod", null, header).setText("BasicAuth");
} else {
// TODO: proper exception
throw new UnsupportedOperationException();
}
}
return nextHandler.invoke(context, request);
}
示例11: invoke
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
@Override
public ListenableFuture<Object> invoke(InvocationContext context, Invocation invocation) {
InvocationContextImpl contextImpl = (InvocationContextImpl)context;
OperationHandler operationHandler = invocation.getOperation().getAdapter(OperationHandler.class);
SOAPFactory factory = metaFactory.getSOAP11Factory();
SOAPEnvelope request = factory.createSOAPEnvelope();
if (!operationHandler.isSuppressSOAPHeader()) {
SOAPHeader header = factory.createSOAPHeader(request);
OMNamespace ns1 = factory.createOMNamespace("admin", "ns");
header.addAttribute("JMXMessageVersion", "1.2.0", ns1);
header.addAttribute("JMXVersion", "1.2.0", ns1);
// TODO: need this to prevent Axiom from skipping serialization of the header
header.addHeaderBlock("dummy", factory.createOMNamespace("urn:dummy", "p")).setMustUnderstand(false);
}
SOAPBody body = factory.createSOAPBody(request);
operationHandler.createRequest(body, invocation.getParameters(), contextImpl);
SettableFuture<Object> result = SettableFuture.create();
Futures.addCallback(
soapHandler.invoke(context, request),
new UnmarshallingCallback(operationHandler, faultReasonHandler, contextImpl, result),
context.getExecutor());
return result;
}
示例12: invoke
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
/**
*
* Process the security block from the message context header.
*/
public final InvocationResponse invoke(final MessageContext msgContext) throws AxisFault {
/* Get header */
final SOAPHeader header = msgContext.getEnvelope().getHeader();
if (header != null) {
final Iterator<?> blocks = header.examineAllHeaderBlocks();
while (blocks.hasNext()) {
/* Get header block */
final SOAPHeaderBlock block = (SOAPHeaderBlock) blocks.next();
if (block != null) {
/* Check for security header block */
if (block.getLocalName().equalsIgnoreCase("Security") || block.getLocalName().equalsIgnoreCase("Action")
|| block.getLocalName().equalsIgnoreCase("To")) {
logger.debug("----Inside invoke; found '" + block.getLocalName() + "' header. Marking it processed");
/* Mark it processed to avoid exception at client side */
block.setProcessed();
}
}
}
}
return InvocationResponse.CONTINUE;
}
示例13: getHeadersLogMessage
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
private String getHeadersLogMessage(CarbonMessage carbonMessage, Reader reader) throws Exception {
StringBuffer sb = new StringBuffer();
MessageDataSource messageDataSource = carbonMessage.getMessageDataSource();
if (messageDataSource == null) {
messageDataSource = reader.makeMessageReadable(carbonMessage);
}
if (messageDataSource.getDataObject() != null && messageDataSource.getDataObject() instanceof OMElement) {
OMElement omElement = (OMElement) messageDataSource.getDataObject();
if (omElement instanceof SOAPEnvelope) {
try {
SOAPHeader header = (SOAPHeader) ((SOAPEnvelope) omElement).getHeader();
if (header != null) {
for (Iterator iter = header.examineAllHeaderBlocks(); iter.hasNext(); ) {
Object o = iter.next();
if (o instanceof SOAPHeaderBlock) {
SOAPHeaderBlock headerBlk = (SOAPHeaderBlock) o;
sb.append(separator).append(headerBlk.getLocalName()).
append(" : ").append(headerBlk.getText());
} else if (o instanceof OMElement) {
OMElement headerElem = (OMElement) o;
sb.append(separator).append(headerElem.getLocalName()).
append(" : ").append(headerElem.getText());
}
}
}
} catch (Exception e) {
log.error("Exception occurred while processing SOAPHeader", e);
return null;
}
}
}
setCustomProperties(sb, carbonMessage, reader);
return trimLeadingSeparator(sb);
}
示例14: getBSTHeader
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
private String getBSTHeader(Request request) throws IOException, XMLStreamException {
org.apache.coyote.Request coyoteReq = request.getCoyoteRequest();
InputBuffer buf = coyoteReq.getInputBuffer();
ByteChunk bc = new ByteChunk();
buf.doRead(bc, coyoteReq);
try (InputStream is = new ByteArrayInputStream(getUTF8Bytes(bc.toString()))) {
XMLStreamReader reader = StAXUtils.createXMLStreamReader(is);
StAXBuilder builder = new StAXSOAPModelBuilder(reader);
SOAPEnvelope envelope = (SOAPEnvelope) builder.getDocumentElement();
envelope.build();
SOAPHeader header = envelope.getHeader();
Iterator headerEls = header.getChildrenWithLocalName("Security");
if (!headerEls.hasNext()) {
return null;
}
OMElement securityHeader = (OMElement) headerEls.next();
Iterator securityHeaderEls = securityHeader.getChildrenWithLocalName("BinarySecurityToken");
if (!securityHeaderEls.hasNext()) {
return null;
}
OMElement bstHeader = (OMElement) securityHeaderEls.next();
bstHeader.build();
return bstHeader.getText();
}
}
示例15: testCreateElement
import org.apache.axiom.soap.SOAPHeader; //导入依赖的package包/类
@Test
public void testCreateElement() throws Exception {
// Creating SOAP envelope
SOAPEnvelope env = SOAPEnv.createEnvelope(SOAPEnv.SOAPVersion.SOAP_12);
// Adding header
Messaging.createElement(env);
// Check if header contains Messaging header block with mustUnderstand=true
SOAPHeader header = env.getHeader();
ArrayList blocks = header.getHeaderBlocksWithNSURI(EbMSConstants.EBMS3_NS_URI);
assertTrue(blocks.size()>0);
assertTrue(((SOAPHeaderBlock) blocks.get(0)).getMustUnderstand());
}