javax.xml.soap.SOAPPart Java Examples
The following examples show how to use
javax.xml.soap.SOAPPart.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: SOAP.java From onvif-java-lib with Apache License 2.0 | 6 votes |
protected void createSoapHeader(SOAPMessage soapMessage) throws SOAPException { onvifDevice.createNonce(); String encrypedPassword = onvifDevice.getEncryptedPassword(); if (encrypedPassword != null && onvifDevice.getUsername() != null) { SOAPPart sp = soapMessage.getSOAPPart(); SOAPEnvelope se = sp.getEnvelope(); SOAPHeader header = soapMessage.getSOAPHeader(); se.addNamespaceDeclaration("wsse", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"); se.addNamespaceDeclaration("wsu", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"); SOAPElement securityElem = header.addChildElement("Security", "wsse"); // securityElem.setAttribute("SOAP-ENV:mustUnderstand", "1"); SOAPElement usernameTokenElem = securityElem.addChildElement("UsernameToken", "wsse"); SOAPElement usernameElem = usernameTokenElem.addChildElement("Username", "wsse"); usernameElem.setTextContent(onvifDevice.getUsername()); SOAPElement passwordElem = usernameTokenElem.addChildElement("Password", "wsse"); passwordElem.setAttribute("Type", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest"); passwordElem.setTextContent(encrypedPassword); SOAPElement nonceElem = usernameTokenElem.addChildElement("Nonce", "wsse"); nonceElem.setAttribute("EncodingType", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"); nonceElem.setTextContent(onvifDevice.getEncryptedNonce()); SOAPElement createdElem = usernameTokenElem.addChildElement("Created", "wsu"); createdElem.setTextContent(onvifDevice.getLastUTCTime()); } }
Example #2
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testEncrypt() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); msg.put(WSHandlerConstants.ACTION, WSHandlerConstants.ENCRYPT); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.ENC_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myalias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//s:Body/xenc:EncryptedData", doc); }
Example #3
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testSignature() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); msg.put(WSHandlerConstants.ACTION, WSHandlerConstants.SIGNATURE); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myAlias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/ds:Signature", doc); }
Example #4
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testTimestamp() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); ohandler.setProperty(WSHandlerConstants.ACTION, WSHandlerConstants.TIMESTAMP); ohandler.setProperty(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myalias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/wsu:Timestamp", doc); }
Example #5
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testEncrypt() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); msg.put(WSHandlerConstants.ACTION, WSHandlerConstants.ENCRYPT); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.ENC_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myalias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//s:Body/xenc:EncryptedData", doc); }
Example #6
Source File: SOAPUtil.java From j-road with Apache License 2.0 | 6 votes |
/** * Substitutes all occurences of some given string inside the given {@link WebServiceMessage} with another value. * * @param message message to substitute in * @param from the value to substitute * @param to the value to substitute with * @throws TransformerException */ public static void substitute(WebServiceMessage message, String from, String to) throws TransformerException { SaajSoapMessage saajSoapMessage = (SaajSoapMessage) message; SOAPPart soapPart = saajSoapMessage.getSaajMessage().getSOAPPart(); Source source = new DOMSource(soapPart); StringResult stringResult = new StringResult(); TransformerFactory.newInstance().newTransformer().transform(source, stringResult); String content = stringResult.toString().replaceAll(from, to); try { soapPart.setContent(new StringSource(content)); } catch (SOAPException e) { throw new TransformerException(e); } }
Example #7
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testTimestamp() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); ohandler.setProperty(WSHandlerConstants.ACTION, WSHandlerConstants.TIMESTAMP); ohandler.setProperty(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myalias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/wsu:Timestamp", doc); }
Example #8
Source File: SoapRequestParserTest.java From development with Apache License 2.0 | 6 votes |
@Test public void parseApiVersion_ctmg_1_8() throws Exception { // given SOAPPart part = mock(SOAPPart.class); SOAPEnvelope envelope = mock(SOAPEnvelope.class); SOAPHeader soapHeader = mock(SOAPHeader.class); List<Node> version = new ArrayList<Node>(); Node node = mock(Node.class); doReturn("testVersion").when(node).getValue(); version.add(node); Iterator<?> it = version.iterator(); doReturn(it).when(soapHeader).extractHeaderElements( eq("ctmg.service.version")); doReturn(soapHeader).when(envelope).getHeader(); doReturn(envelope).when(part).getEnvelope(); doReturn(part).when(message).getSOAPPart(); // when String result = SoapRequestParser.parseApiVersion(context); // then assertEquals("testVersion", result); }
Example #9
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testSignature() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); msg.put(WSHandlerConstants.ACTION, WSHandlerConstants.SIGNATURE); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myAlias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/ds:Signature", doc); }
Example #10
Source File: InsurabilityHandler.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
private static void initMessageID(SOAPMessage msg) throws SOAPException { SOAPPart part = msg.getSOAPPart(); if (part != null) { SOAPEnvelope soapEnvelope = part.getEnvelope(); if (soapEnvelope != null) { SOAPHeader header = soapEnvelope.getHeader(); if (header != null && header.getChildElements().hasNext()) { Node elementsResponseHeader = (Node) header.getChildElements().next(); if (elementsResponseHeader != null && elementsResponseHeader.getLocalName() != null && elementsResponseHeader.getLocalName().equals("MessageID")) { NodeList elementsheader = elementsResponseHeader.getChildNodes(); org.w3c.dom.Node element = elementsheader.item(0); messageId = element.getNodeValue(); LOG.info("MyCareNet returned a response with messageId: " + messageId); } } } } }
Example #11
Source File: SoapFaultHandler.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
private String getSoapFaultCode(SOAPMessage msg) throws SOAPException{ SOAPPart part = msg.getSOAPPart(); if(part !=null){ SOAPEnvelope soapEnvelope = part.getEnvelope(); if(soapEnvelope !=null){ SOAPBody body = soapEnvelope.getBody(); if(body !=null){ SOAPFault fault=body.getFault(); if(fault !=null && !StringUtils.isEmpty(fault.getFaultString()) && fault.getFaultString().contains("SOA-")){ return fault.getFaultString(); } } } } return null; }
Example #12
Source File: InsurabilityHandler.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
private static void initMessageID(SOAPMessage msg) throws SOAPException { SOAPPart part = msg.getSOAPPart(); if (part != null) { SOAPEnvelope soapEnvelope = part.getEnvelope(); if (soapEnvelope != null) { SOAPHeader header = soapEnvelope.getHeader(); if (header != null && header.getChildElements().hasNext()) { Node elementsResponseHeader = (Node) header.getChildElements().next(); if (elementsResponseHeader != null && elementsResponseHeader.getLocalName() != null && elementsResponseHeader.getLocalName().equals("MessageID")) { NodeList elementsheader = elementsResponseHeader.getChildNodes(); org.w3c.dom.Node element = elementsheader.item(0); messageId = element.getNodeValue(); LOG.info("MyCareNet returned a response with messageId: " + messageId); } } } } }
Example #13
Source File: SoapFaultHandler.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
private String getSoapFaultCode(SOAPMessage msg) throws SOAPException{ SOAPPart part = msg.getSOAPPart(); if(part !=null){ SOAPEnvelope soapEnvelope = part.getEnvelope(); if(soapEnvelope !=null){ SOAPBody body = soapEnvelope.getBody(); if(body !=null){ SOAPFault fault=body.getFault(); if(fault !=null && !StringUtils.isEmpty(fault.getFaultString()) && fault.getFaultString().contains("SOA-")){ return fault.getFaultString(); } } } } return null; }
Example #14
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testEncrypt() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); msg.put(WSHandlerConstants.ACTION, WSHandlerConstants.ENCRYPT); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.ENC_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myalias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//s:Body/xenc:EncryptedData", doc); }
Example #15
Source File: AbstractWsSender.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
protected SOAPMessageContext createSOAPMessageCtx(GenericRequest genericRequest) throws TechnicalConnectorException { try { SOAPMessage soapMessage = mf.createMessage(); SOAPPart soapPart = soapMessage.getSOAPPart(); if (genericRequest.isXopEnabled()) { soapMessage.getMimeHeaders().addHeader("Content-Type", "application/xop+xml"); soapPart.addMimeHeader("Content-ID", "<[email protected]>"); soapPart.addMimeHeader("Content-Transfer-Encoding", "8bit"); } SOAPEnvelope soapEnvelope = soapPart.getEnvelope(); SOAPBody soapBody = soapEnvelope.getBody(); soapBody.addDocument(genericRequest.getPayload()); Map<String, DataHandler> handlers = genericRequest.getDataHandlerMap(); AttachmentPart part; for(Iterator i$ = handlers.entrySet().iterator(); i$.hasNext(); soapMessage.addAttachmentPart(part)) { Entry<String, DataHandler> handlerEntry = (Entry)i$.next(); DataHandler handler = (DataHandler)handlerEntry.getValue(); part = soapMessage.createAttachmentPart(handler); part.setContentType(handler.getContentType()); if (genericRequest.isXopEnabled()) { part.addMimeHeader("Content-Transfer-Encoding", "binary"); part.setContentId("<" + (String)handlerEntry.getKey() + ">"); } else { part.setContentId((String)handlerEntry.getKey()); } } return createSOAPMessageCtx(soapMessage); } catch (SOAPException var11) { throw translate(var11); } }
Example #16
Source File: W3CDOMStreamReaderTest.java From cxf with Apache License 2.0 | 6 votes |
@Test public void testReader() throws Exception { ByteArrayInputStream is = new ByteArrayInputStream( "<Test xmlns=\"http://example.org/types\"><argument>foobar</argument></Test>" .getBytes()); DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance(); docBuilderFactory.setNamespaceAware(true); DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder(); MessageFactory factory = MessageFactory.newInstance(); SOAPMessage msg = factory.createMessage(); SOAPPart part = msg.getSOAPPart(); Document doc = docBuilder.parse(is); W3CDOMStreamWriter writer = new W3CDOMStreamWriter(part.getEnvelope()); XMLStreamReader reader = StaxUtils.createXMLStreamReader(new DOMSource(doc)); StaxUtils.copy(reader, writer); assertTrue(StaxUtils.toString(writer.getDocument()).endsWith(RESULT)); }
Example #17
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testTimestamp() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); ohandler.setProperty(WSHandlerConstants.ACTION, WSHandlerConstants.TIMESTAMP); ohandler.setProperty(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myalias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/wsu:Timestamp", doc); }
Example #18
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 6 votes |
@Test public void testSignature() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); msg.put(WSHandlerConstants.ACTION, WSHandlerConstants.SIGNATURE); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "myAlias"); msg.put("password", "myAliasPassword"); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/ds:Signature", doc); }
Example #19
Source File: SoapFaultHandler.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
private String getSoapFaultCode(SOAPMessage msg) throws SOAPException{ SOAPPart part = msg.getSOAPPart(); if(part !=null){ SOAPEnvelope soapEnvelope = part.getEnvelope(); if(soapEnvelope !=null){ SOAPBody body = soapEnvelope.getBody(); if(body !=null){ SOAPFault fault=body.getFault(); if(fault !=null && !StringUtils.isEmpty(fault.getFaultString()) && fault.getFaultString().contains("SOA-")){ return fault.getFaultString(); } } } } return null; }
Example #20
Source File: InsurabilityHandler.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
private static void initMessageID(SOAPMessage msg) throws SOAPException { SOAPPart part = msg.getSOAPPart(); if (part != null) { SOAPEnvelope soapEnvelope = part.getEnvelope(); if (soapEnvelope != null) { SOAPHeader header = soapEnvelope.getHeader(); if (header != null && header.getChildElements().hasNext()) { Node elementsResponseHeader = (Node) header.getChildElements().next(); if (elementsResponseHeader != null && elementsResponseHeader.getLocalName() != null && elementsResponseHeader.getLocalName().equals("MessageID")) { NodeList elementsheader = elementsResponseHeader.getChildNodes(); org.w3c.dom.Node element = elementsheader.item(0); messageId = element.getNodeValue(); LOG.info("MyCareNet returned a response with messageId: " + messageId); } } } } }
Example #21
Source File: SoapFaultHandler.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
private String getSoapFaultCode(SOAPMessage msg) throws SOAPException { SOAPPart part = msg.getSOAPPart(); if (part != null) { SOAPEnvelope soapEnvelope = part.getEnvelope(); if (soapEnvelope != null) { SOAPBody body = soapEnvelope.getBody(); if (body != null) { SOAPFault fault = body.getFault(); if (fault != null && !StringUtils.isEmpty(fault.getFaultString()) && fault.getFaultString().contains("SOA-")) { return fault.getFaultString(); } } } } return null; }
Example #22
Source File: InsurabilityHandler.java From freehealth-connector with GNU Affero General Public License v3.0 | 6 votes |
private static void initMessageID(SOAPMessage msg) throws SOAPException { SOAPPart part = msg.getSOAPPart(); if (part != null) { SOAPEnvelope soapEnvelope = part.getEnvelope(); if (soapEnvelope != null) { SOAPHeader header = soapEnvelope.getHeader(); if (header != null && header.getChildElements().hasNext()) { Node elementsResponseHeader = (Node)header.getChildElements().next(); if (elementsResponseHeader != null && elementsResponseHeader.getLocalName() != null && elementsResponseHeader.getLocalName().equals("MessageID")) { NodeList elementsheader = elementsResponseHeader.getChildNodes(); org.w3c.dom.Node element = elementsheader.item(0); messageId = element.getNodeValue(); LOG.info("MyCareNet returned a response with messageId: " + messageId); } } } } }
Example #23
Source File: SAAJStreamWriter.java From cxf with Apache License 2.0 | 5 votes |
public SAAJStreamWriter(SOAPPart part) { super(part); this.part = part; Node nd = part.getFirstChild(); if (nd == null) { isOverlaid = false; } envelope = null; }
Example #24
Source File: AbstractWsSender.java From freehealth-connector with GNU Affero General Public License v3.0 | 5 votes |
protected SOAPMessageContext createSOAPMessageCtx(GenericRequest genericRequest) throws TechnicalConnectorException { try { SOAPMessage soapMessage = mf.createMessage(); SOAPPart soapPart = soapMessage.getSOAPPart(); if (genericRequest.isXopEnabled()) { soapMessage.getMimeHeaders().addHeader("Content-Type", "application/xop+xml"); soapPart.addMimeHeader("Content-ID", "<[email protected]>"); soapPart.addMimeHeader("Content-Transfer-Encoding", "8bit"); } SOAPEnvelope soapEnvelope = soapPart.getEnvelope(); SOAPBody soapBody = soapEnvelope.getBody(); soapBody.addDocument(genericRequest.getPayload()); Map<String, DataHandler> handlers = genericRequest.getDataHandlerMap(); AttachmentPart part; for(Iterator i$ = handlers.entrySet().iterator(); i$.hasNext(); soapMessage.addAttachmentPart(part)) { Entry<String, DataHandler> handlerEntry = (Entry)i$.next(); DataHandler handler = (DataHandler)handlerEntry.getValue(); part = soapMessage.createAttachmentPart(handler); part.setContentType(handler.getContentType()); if (genericRequest.isXopEnabled()) { part.addMimeHeader("Content-Transfer-Encoding", "binary"); part.setContentId("<" + (String)handlerEntry.getKey() + ">"); } else { part.setContentId((String)handlerEntry.getKey()); } } return createSOAPMessageCtx(soapMessage); } catch (SOAPException var11) { throw translate(var11); } }
Example #25
Source File: ParseBodyTest.java From cxf with Apache License 2.0 | 5 votes |
@Test public void testReadSOAPFault() throws Exception { InputStream inStream = getClass().getResourceAsStream("soap12-fault.xml"); Document doc = StaxUtils.read(inStream); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); SOAPMessage saajMsg = MessageFactory.newInstance(SOAPConstants.SOAP_1_2_PROTOCOL).createMessage(); SOAPPart part = saajMsg.getSOAPPart(); SAAJStreamWriter writer = new SAAJStreamWriter(part); StaxUtils.copy(doc, writer); //Source s = new StaxSource(StaxUtils.createXMLStreamReader(doc)); //part.setContent(s); saajMsg.saveChanges(); msg.setContent(SOAPMessage.class, saajMsg); doc = part; // System.out.println("OUTPUT: " + StaxUtils.toString(doc)); byte[] docbytes = getMessageBytes(doc); // System.out.println("OUTPUT: " + new String(docbytes)); XMLStreamReader reader = StaxUtils.createXMLStreamReader(new ByteArrayInputStream(docbytes)); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); dbf.setValidating(false); dbf.setIgnoringComments(false); dbf.setIgnoringElementContentWhitespace(true); dbf.setNamespaceAware(true); DocumentBuilder db = dbf.newDocumentBuilder(); db.setEntityResolver(new NullResolver()); doc = StaxUtils.read(db, reader, false); }
Example #26
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 5 votes |
@Test public void testAddCustomAction() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); CountingUsernameTokenAction action = new CountingUsernameTokenAction(); Map<Object, Object> customActions = new HashMap<Object, Object>(1); customActions.put(12345, action); msg.put(WSHandlerConstants.ACTION, "12345"); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "username"); msg.put("password", "myAliasPassword"); msg.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_TEXT); msg.put(WSS4JOutInterceptor.WSS4J_ACTION_MAP, customActions); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/wsse:UsernameToken", doc); assertValid("//wsse:Security/wsse:UsernameToken/wsse:Username[text()='username']", doc); // Test to see that the plaintext password is used in the header assertValid("//wsse:Security/wsse:UsernameToken/wsse:Password[text()='myAliasPassword']", doc); assertEquals(1, action.getExecutions()); }
Example #27
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 5 votes |
@Test public void testAddCustomAction() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); CountingUsernameTokenAction action = new CountingUsernameTokenAction(); Map<Object, Object> customActions = new HashMap<Object, Object>(1); customActions.put(12345, action); msg.put(WSHandlerConstants.ACTION, "12345"); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "username"); msg.put("password", "myAliasPassword"); msg.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_TEXT); msg.put(WSS4JOutInterceptor.WSS4J_ACTION_MAP, customActions); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/wsse:UsernameToken", doc); assertValid("//wsse:Security/wsse:UsernameToken/wsse:Username[text()='username']", doc); // Test to see that the plaintext password is used in the header assertValid("//wsse:Security/wsse:UsernameToken/wsse:Password[text()='myAliasPassword']", doc); assertEquals(1, action.getExecutions()); }
Example #28
Source File: WSS4JOutInterceptorTest.java From steady with Apache License 2.0 | 5 votes |
@Test public void testUsernameTokenText() throws Exception { SOAPMessage saaj = readSAAJDocument("wsse-request-clean.xml"); WSS4JOutInterceptor ohandler = new WSS4JOutInterceptor(); PhaseInterceptor<SoapMessage> handler = ohandler.createEndingInterceptor(); SoapMessage msg = new SoapMessage(new MessageImpl()); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saaj); msg.put(WSHandlerConstants.ACTION, WSHandlerConstants.USERNAME_TOKEN); msg.put(WSHandlerConstants.SIG_PROP_FILE, "outsecurity.properties"); msg.put(WSHandlerConstants.USER, "username"); msg.put("password", "myAliasPassword"); msg.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_TEXT); handler.handleMessage(msg); SOAPPart doc = saaj.getSOAPPart(); assertValid("//wsse:Security", doc); assertValid("//wsse:Security/wsse:UsernameToken", doc); assertValid("//wsse:Security/wsse:UsernameToken/wsse:Username[text()='username']", doc); // Test to see that the plaintext password is used in the header assertValid("//wsse:Security/wsse:UsernameToken/wsse:Password[text()='myAliasPassword']", doc); }
Example #29
Source File: SOAPGenerator.java From cougar with Apache License 2.0 | 5 votes |
private static SOAPMessage generateSOAPMessageShell(HttpCallBean httpCallBean) { SOAPMessage message = null; String secNameSpace = "http://www.betfair.com/security/"; httpCallBean.setServiceName("Baseline"); String nameSpace = httpCallBean.getNameSpace(); if(nameSpace==null || nameSpace.equals("")) { throw new RuntimeException("Namespace error invalid :" + nameSpace); } MessageFactory mf; try { mf = MessageFactory.newInstance(); message = mf.createMessage(); SOAPPart soapPart = message.getSOAPPart(); SOAPEnvelope envelope = soapPart.getEnvelope(); envelope.addNamespaceDeclaration("soapenv", "http://schemas.xmlsoap.org/soap/envelope/"); envelope.addNamespaceDeclaration(BAS, nameSpace); envelope.addNamespaceDeclaration("sec", secNameSpace); // header envelope.getHeader().detachNode(); SOAPHeader soapHeader = envelope.addHeader(); Name header = envelope.createName("Header", "soapenv", "http://schemas.xmlsoap.org/soap/envelope/"); soapHeader.addHeaderElement(header); } catch (Exception e) { throw new RuntimeException(e); } return message; }
Example #30
Source File: AbstractSecurityTest.java From cxf with Apache License 2.0 | 5 votes |
protected SoapMessage getSoapMessageForDom(Document doc, String protocol) throws Exception { SOAPMessage saajMsg = MessageFactory.newInstance(protocol).createMessage(); SOAPPart part = saajMsg.getSOAPPart(); SAAJStreamWriter writer = new SAAJStreamWriter(part); StaxUtils.copy(doc, writer); saajMsg.saveChanges(); MessageImpl message = new MessageImpl(); SoapMessage msg = new SoapMessage(message); Exchange ex = new ExchangeImpl(); ex.setInMessage(msg); msg.setContent(SOAPMessage.class, saajMsg); return msg; }