Example usage for javax.xml.soap SOAPPart getEnvelope

List of usage examples for javax.xml.soap SOAPPart getEnvelope

Introduction

In this page you can find the example usage for javax.xml.soap SOAPPart getEnvelope.

Prototype

public abstract SOAPEnvelope getEnvelope() throws SOAPException;

Source Link

Document

Gets the SOAPEnvelope object associated with this SOAPPart object.

Usage

From source file:org.sakaiproject.contentreview.compilatio.util.CompilatioAPIUtil.java

public static Document callCompilatioReturnDocument(String apiURL, Map<String, String> parameters,
        String secretKey, final int timeout, Proxy proxy, boolean isMultipart)
        throws TransientSubmissionException, SubmissionException {

    SOAPConnectionFactory soapConnectionFactory;
    Document xmlDocument = null;//from   ww  w . ja  v a 2  s  .  com
    try {
        soapConnectionFactory = SOAPConnectionFactory.newInstance();

        SOAPConnection soapConnection = soapConnectionFactory.createConnection();

        MessageFactory messageFactory = MessageFactory.newInstance();
        SOAPMessage soapMessage = messageFactory.createMessage();
        SOAPPart soapPart = soapMessage.getSOAPPart();
        SOAPEnvelope envelope = soapPart.getEnvelope();
        SOAPBody soapBody = envelope.getBody();
        SOAPElement soapBodyAction = soapBody.addChildElement(parameters.get("action"));
        parameters.remove("action");
        // api key
        SOAPElement soapBodyKey = soapBodyAction.addChildElement("key");
        soapBodyKey.addTextNode(secretKey);

        Set<Entry<String, String>> ets = parameters.entrySet();
        Iterator<Entry<String, String>> it = ets.iterator();
        while (it.hasNext()) {
            Entry<String, String> param = it.next();
            SOAPElement soapBodyElement = soapBodyAction.addChildElement(param.getKey());
            soapBodyElement.addTextNode(param.getValue());
        }

        URL endpoint = new URL(null, apiURL, new URLStreamHandler() {
            @Override
            protected URLConnection openConnection(URL url) throws IOException {
                URL target = new URL(url.toString());
                URLConnection connection = target.openConnection();
                // Connection settings
                connection.setConnectTimeout(timeout);
                connection.setReadTimeout(timeout);
                return (connection);
            }
        });

        SOAPMessage soapResponse = soapConnection.call(soapMessage, endpoint);

        // loading the XML document
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        soapResponse.writeTo(out);
        DocumentBuilderFactory builderfactory = DocumentBuilderFactory.newInstance();
        builderfactory.setNamespaceAware(true);

        DocumentBuilder builder = builderfactory.newDocumentBuilder();
        xmlDocument = builder.parse(new InputSource(new StringReader(out.toString())));
        soapConnection.close();

    } catch (UnsupportedOperationException | SOAPException | IOException | ParserConfigurationException
            | SAXException e) {
        log.error(e);
    }
    return xmlDocument;

}

From source file:org.wso2.carbon.identity.provisioning.connector.InweboUserManager.java

private static SOAPMessage createUserSOAPMessage(Properties inweboProperties, InweboUser user)
        throws SOAPException {
    MessageFactory messageFactory = MessageFactory.newInstance();
    SOAPMessage soapMessage = messageFactory.createMessage();
    SOAPPart soapPart = soapMessage.getSOAPPart();
    String serverURI = inweboProperties.getProperty(InweboConnectorConstants.INWEBO_URI);
    SOAPEnvelope envelope = soapPart.getEnvelope();
    String namespacePrefix = InweboConnectorConstants.SOAPMessage.SOAP_NAMESPACE_PREFIX;
    envelope.addNamespaceDeclaration(namespacePrefix, serverURI);
    SOAPBody soapBody = envelope.getBody();
    SOAPElement soapBodyElem = soapBody
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_ACTION_LOGIN_CREATE, namespacePrefix);
    SOAPElement soapBodyElem1 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_USER_ID,
            namespacePrefix);//from w w w. j  a va 2  s .  c  o m
    soapBodyElem1.addTextNode(user.getUserId());
    SOAPElement soapBodyElem2 = soapBodyElem
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_SERVICE_ID, namespacePrefix);
    soapBodyElem2.addTextNode(user.getServiceId());
    SOAPElement soapBodyElem3 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_LOGIN,
            namespacePrefix);
    soapBodyElem3.addTextNode(user.getLogin());
    SOAPElement soapBodyElem4 = soapBodyElem
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_FIRST_NAME, namespacePrefix);
    soapBodyElem4.addTextNode(user.getFirstName());
    SOAPElement soapBodyElem5 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_NAME,
            namespacePrefix);
    soapBodyElem5.addTextNode(user.getLastName());
    SOAPElement soapBodyElem6 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_MAIL,
            namespacePrefix);
    soapBodyElem6.addTextNode(user.getMail());
    SOAPElement soapBodyElem7 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_PHONE,
            namespacePrefix);
    soapBodyElem7.addTextNode(user.getPhone());
    SOAPElement soapBodyElem8 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_STATUS,
            namespacePrefix);
    soapBodyElem8.addTextNode(user.getStatus());
    SOAPElement soapBodyElem9 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_ROLE,
            namespacePrefix);
    soapBodyElem9.addTextNode(user.getRole());
    SOAPElement soapBodyElem10 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_ACCESS,
            namespacePrefix);
    soapBodyElem10.addTextNode(user.getAccess());
    SOAPElement soapBodyElem11 = soapBodyElem
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_CONTENT_TYPE, namespacePrefix);
    soapBodyElem11.addTextNode(user.getCodeType());
    SOAPElement soapBodyElem12 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_LANG,
            namespacePrefix);
    soapBodyElem12.addTextNode(user.getLanguage());
    SOAPElement soapBodyElem13 = soapBodyElem
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_EXTRA_FIELDS, namespacePrefix);
    soapBodyElem13.addTextNode(user.getExtraFields());
    MimeHeaders headers = soapMessage.getMimeHeaders();
    headers.addHeader(InweboConnectorConstants.SOAPMessage.SOAP_ACTION,
            serverURI + InweboConnectorConstants.SOAPMessage.SOAP_ACTION_HEADER);
    soapMessage.saveChanges();
    return soapMessage;
}

From source file:org.wso2.carbon.identity.provisioning.connector.InweboUserManager.java

private static SOAPMessage updateUserSOAPMessage(Properties inweboProperties, InweboUser user)
        throws SOAPException {
    MessageFactory messageFactory = MessageFactory.newInstance();
    SOAPMessage soapMessage = messageFactory.createMessage();
    SOAPPart soapPart = soapMessage.getSOAPPart();
    String serverURI = inweboProperties.getProperty(InweboConnectorConstants.INWEBO_URI);
    SOAPEnvelope envelope = soapPart.getEnvelope();
    String namespacePrefix = InweboConnectorConstants.SOAPMessage.SOAP_NAMESPACE_PREFIX;
    envelope.addNamespaceDeclaration(namespacePrefix, serverURI);
    SOAPBody soapBody = envelope.getBody();
    SOAPElement soapBodyElem = soapBody
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_ACTION_LOGIN_UPDATE, namespacePrefix);
    SOAPElement soapBodyElem1 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_USER_ID,
            namespacePrefix);/*from  w  ww. ja  v  a  2s . c o m*/
    soapBodyElem1.addTextNode(user.getUserId());
    SOAPElement soapBodyElem2 = soapBodyElem
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_SERVICE_ID, namespacePrefix);
    soapBodyElem2.addTextNode(user.getServiceId());
    SOAPElement soapBodyElem3 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_LOGIN_ID,
            namespacePrefix);
    soapBodyElem3.addTextNode(user.getLoginId());
    SOAPElement soapBodyElem4 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_LOGIN,
            namespacePrefix);
    soapBodyElem4.addTextNode(user.getLogin());
    SOAPElement soapBodyElem5 = soapBodyElem
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_FIRST_NAME, namespacePrefix);
    soapBodyElem5.addTextNode(user.getFirstName());
    SOAPElement soapBodyElem6 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_NAME,
            namespacePrefix);
    soapBodyElem6.addTextNode(user.getLastName());
    SOAPElement soapBodyElem7 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_MAIL,
            namespacePrefix);
    soapBodyElem7.addTextNode(user.getMail());
    SOAPElement soapBodyElem8 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_PHONE,
            namespacePrefix);
    soapBodyElem8.addTextNode(user.getPhone());
    SOAPElement soapBodyElem9 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_STATUS,
            namespacePrefix);
    soapBodyElem9.addTextNode(user.getStatus());
    SOAPElement soapBodyElem10 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_ROLE,
            namespacePrefix);
    soapBodyElem10.addTextNode(user.getRole());
    SOAPElement soapBodyElem11 = soapBodyElem
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_EXTRA_FIELDS, namespacePrefix);
    soapBodyElem11.addTextNode(user.getExtraFields());
    MimeHeaders headers = soapMessage.getMimeHeaders();
    headers.addHeader(InweboConnectorConstants.SOAPMessage.SOAP_ACTION,
            serverURI + InweboConnectorConstants.SOAPMessage.SOAP_ACTION_HEADER);
    soapMessage.saveChanges();
    return soapMessage;
}

From source file:org.wso2.carbon.identity.provisioning.connector.InweboUserManager.java

private static SOAPMessage deleteUserSOAPMessage(Properties inweboProperties, String loginId, String userId,
        String serviceId) throws SOAPException {

    MessageFactory messageFactory = MessageFactory.newInstance();
    SOAPMessage soapMessage = messageFactory.createMessage();
    SOAPPart soapPart = soapMessage.getSOAPPart();
    String serverURI = inweboProperties.getProperty(InweboConnectorConstants.INWEBO_URI);
    SOAPEnvelope envelope = soapPart.getEnvelope();
    String namespacePrefix = InweboConnectorConstants.SOAPMessage.SOAP_NAMESPACE_PREFIX;
    envelope.addNamespaceDeclaration(namespacePrefix, serverURI);
    SOAPBody soapBody = envelope.getBody();
    SOAPElement soapBodyElem = soapBody
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_ACTION_LOGIN_DELETE, namespacePrefix);
    SOAPElement soapBodyElem1 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_USER_ID,
            namespacePrefix);/* w ww.  j  av  a2 s  .  c o m*/
    soapBodyElem1.addTextNode(userId);
    SOAPElement soapBodyElem2 = soapBodyElem
            .addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_SERVICE_ID, namespacePrefix);
    soapBodyElem2.addTextNode(serviceId);
    SOAPElement soapBodyElem3 = soapBodyElem.addChildElement(InweboConnectorConstants.SOAPMessage.SOAP_LOGIN_ID,
            namespacePrefix);
    soapBodyElem3.addTextNode(loginId);
    MimeHeaders headers = soapMessage.getMimeHeaders();
    headers.addHeader(InweboConnectorConstants.SOAPMessage.SOAP_ACTION,
            serverURI + InweboConnectorConstants.SOAPMessage.SOAP_ACTION_HEADER);
    soapMessage.saveChanges();
    return soapMessage;
}

From source file:org.wso2.carbon.identity.provisioning.connector.UserCreation.java

private static SOAPMessage createUser(String userId, String serviceId, String login, String firstName,
        String name, String mail, String phone, String status, String role, String access, String codetype,
        String language, String extrafields) throws SOAPException, IdentityProvisioningException {
    MessageFactory messageFactory = MessageFactory.newInstance();
    SOAPMessage soapMessage = messageFactory.createMessage();
    SOAPPart soapPart = soapMessage.getSOAPPart();
    String serverURI = InweboConnectorConstants.INWEBO_URI;
    SOAPEnvelope envelope = soapPart.getEnvelope();
    envelope.addNamespaceDeclaration("con", serverURI);
    SOAPBody soapBody = envelope.getBody();
    SOAPElement soapBodyElem = soapBody.addChildElement("loginCreate", "con");
    SOAPElement soapBodyElem1 = soapBodyElem.addChildElement("userid", "con");
    soapBodyElem1.addTextNode(userId);//www  . j  av a  2  s  .c  o  m
    SOAPElement soapBodyElem2 = soapBodyElem.addChildElement("serviceid", "con");
    soapBodyElem2.addTextNode(serviceId);
    SOAPElement soapBodyElem3 = soapBodyElem.addChildElement("login", "con");
    soapBodyElem3.addTextNode(login);
    SOAPElement soapBodyElem4 = soapBodyElem.addChildElement("firstname", "con");
    soapBodyElem4.addTextNode(firstName);
    SOAPElement soapBodyElem5 = soapBodyElem.addChildElement("name", "con");
    soapBodyElem5.addTextNode(name);
    SOAPElement soapBodyElem6 = soapBodyElem.addChildElement("mail", "con");
    soapBodyElem6.addTextNode(mail);
    SOAPElement soapBodyElem7 = soapBodyElem.addChildElement("phone", "con");
    soapBodyElem7.addTextNode(phone);
    SOAPElement soapBodyElem8 = soapBodyElem.addChildElement("status", "con");
    soapBodyElem8.addTextNode(status);
    SOAPElement soapBodyElem9 = soapBodyElem.addChildElement("role", "con");
    soapBodyElem9.addTextNode(role);
    SOAPElement soapBodyElem10 = soapBodyElem.addChildElement("access", "con");
    soapBodyElem10.addTextNode(access);
    SOAPElement soapBodyElem11 = soapBodyElem.addChildElement("codetype", "con");
    soapBodyElem11.addTextNode(codetype);
    SOAPElement soapBodyElem12 = soapBodyElem.addChildElement("lang", "con");
    soapBodyElem12.addTextNode(language);
    SOAPElement soapBodyElem13 = soapBodyElem.addChildElement("extrafields", "con");
    soapBodyElem13.addTextNode(extrafields);
    MimeHeaders headers = soapMessage.getMimeHeaders();
    headers.addHeader("SOAPAction", serverURI + "/services/ConsoleAdmin");
    soapMessage.saveChanges();

    return soapMessage;
}

From source file:org.wso2.carbon.identity.provisioning.connector.UserDeletion.java

private static SOAPMessage deleteUsers(String loginId, String userId, String serviceId)
        throws SOAPException, IdentityProvisioningException {

    MessageFactory messageFactory = MessageFactory.newInstance();
    SOAPMessage soapMessage = messageFactory.createMessage();
    try {//from ww w .  j  a  v a2  s .  c  om
        SOAPPart soapPart = soapMessage.getSOAPPart();
        String serverURI = InweboConnectorConstants.INWEBO_URI;
        SOAPEnvelope envelope = soapPart.getEnvelope();
        envelope.addNamespaceDeclaration("con", serverURI);
        SOAPBody soapBody = envelope.getBody();
        SOAPElement soapBodyElem = soapBody.addChildElement("loginDelete", "con");
        SOAPElement soapBodyElem1 = soapBodyElem.addChildElement("userid", "con");
        soapBodyElem1.addTextNode(userId);
        SOAPElement soapBodyElem2 = soapBodyElem.addChildElement("serviceid", "con");
        soapBodyElem2.addTextNode(serviceId);
        SOAPElement soapBodyElem3 = soapBodyElem.addChildElement("loginid", "con");
        soapBodyElem3.addTextNode(loginId);
        MimeHeaders headers = soapMessage.getMimeHeaders();
        headers.addHeader("SOAPAction", serverURI + "/services/ConsoleAdmin");
        soapMessage.saveChanges();
    } catch (SOAPException e) {
        throw new IdentityProvisioningException("Error while delete the user", e);
    }
    return soapMessage;
}

From source file:org.wso2.carbon.identity.provisioning.connector.UserUpdation.java

private static SOAPMessage createUserObject(String userId, String serviceId, String loginId, String login,
        String firstName, String name, String mail, String phone, String status, String role,
        String extraFields) throws SOAPException, IdentityProvisioningException {
    MessageFactory messageFactory = MessageFactory.newInstance();
    SOAPMessage soapMessage = messageFactory.createMessage();
    SOAPPart soapPart = soapMessage.getSOAPPart();
    String serverURI = InweboConnectorConstants.INWEBO_URI;
    SOAPEnvelope envelope = soapPart.getEnvelope();
    envelope.addNamespaceDeclaration("con", serverURI);
    SOAPBody soapBody = envelope.getBody();
    SOAPElement soapBodyElem = soapBody.addChildElement("loginUpdate", "con");
    SOAPElement soapBodyElem1 = soapBodyElem.addChildElement("userid", "con");
    soapBodyElem1.addTextNode(userId);//from w  w w . j a  va 2 s  . c om
    SOAPElement soapBodyElem2 = soapBodyElem.addChildElement("serviceid", "con");
    soapBodyElem2.addTextNode(serviceId);
    SOAPElement soapBodyElem3 = soapBodyElem.addChildElement("loginid", "con");
    soapBodyElem3.addTextNode(loginId);
    SOAPElement soapBodyElem4 = soapBodyElem.addChildElement("login", "con");
    soapBodyElem4.addTextNode(login);
    SOAPElement soapBodyElem5 = soapBodyElem.addChildElement("firstname", "con");
    soapBodyElem5.addTextNode(firstName);
    SOAPElement soapBodyElem6 = soapBodyElem.addChildElement("name", "con");
    soapBodyElem6.addTextNode(name);
    SOAPElement soapBodyElem7 = soapBodyElem.addChildElement("mail", "con");
    soapBodyElem7.addTextNode(mail);
    SOAPElement soapBodyElem8 = soapBodyElem.addChildElement("phone", "con");
    soapBodyElem8.addTextNode(phone);
    SOAPElement soapBodyElem9 = soapBodyElem.addChildElement("status", "con");
    soapBodyElem9.addTextNode(status);
    SOAPElement soapBodyElem10 = soapBodyElem.addChildElement("role", "con");
    soapBodyElem10.addTextNode(role);
    SOAPElement soapBodyElem11 = soapBodyElem.addChildElement("extrafields", "con");
    soapBodyElem11.addTextNode(extraFields);
    MimeHeaders headers = soapMessage.getMimeHeaders();
    headers.addHeader("SOAPAction", serverURI + "/services/ConsoleAdmin");
    soapMessage.saveChanges();
    return soapMessage;
}

From source file:org.wso2.carbon.identity.sso.saml.util.SAMLSOAPUtils.java

/**
 *
 * Creates a SOAP Fault message including the fault code and fault string.
 * @param faultString detailed error message
 * @param faultcode//  w ww .j a  v a 2s  . c o m
 * @return
 */
public static String createSOAPFault(String faultString, String faultcode)
        throws TransformerException, SOAPException {
    SOAPMessage soapMsg;
    MessageFactory factory = MessageFactory.newInstance();
    soapMsg = factory.createMessage();
    SOAPPart part = soapMsg.getSOAPPart();
    SOAPEnvelope envelope = part.getEnvelope();
    SOAPBody body = envelope.getBody();
    SOAPFault fault = body.addFault();
    fault.setFaultString(faultString);
    fault.setFaultCode(new QName(SAMLECPConstants.SOAPNamespaceURI.SOAP_NAMESPACE_URI, faultcode));
    return convertSOAPMsgToString(soapMsg).replace("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "");
}

From source file:org.wso2.carbon.identity.sso.saml.util.SAMLSOAPUtils.java

/**
 *
 * @param samlRes SAML Response//from   www. j  ava 2s.  co m
 * @param acUrl Assertion Consumer URL
 * @return
 */
public static String createSOAPMessage(String samlRes, String acUrl)
        throws TransformerException, SOAPException {
    SOAPMessage soapMsg;
    MessageFactory factory = MessageFactory.newInstance();
    soapMsg = factory.createMessage();
    SOAPPart part = soapMsg.getSOAPPart();
    SOAPEnvelope envelope = part.getEnvelope();
    SOAPHeader header = envelope.getHeader();
    SOAPHeaderElement soapHeaderElement = header.addHeaderElement(
            envelope.createName(SAMLECPConstants.SOAPECPHeaderElements.SOAP_ECP_HEADER_LOCAL_NAME,
                    SAMLECPConstants.SOAPECPHeaderElements.SOAP_ECP_HEADER_PREFIX,
                    SAMLECPConstants.SOAPECPHeaderElements.SOAP_ECP_HEADER_URI));
    soapHeaderElement.setMustUnderstand(true);
    soapHeaderElement.setActor(SAMLECPConstants.SOAPHeaderElements.SOAP_HEADER_ELEMENT_ACTOR);
    soapHeaderElement.addAttribute(new QName(SAMLECPConstants.SOAPHeaderElements.SOAP_HEADER_ELEMENT_ACS_URL),
            acUrl);
    SOAPBody body = envelope.getBody();
    String rawxml = "<![CDATA[" + samlRes + "]]>";
    body.addTextNode(rawxml);
    return convertSOAPMsgToString(soapMsg).replace("<![CDATA[", "").replace("]]>", "");
}

From source file:ru.codeinside.gws.crypto.cryptopro.CryptoProvider.java

private static VerifyResult verifyMessage(final SOAPMessage message) throws Exception {
    final long startMs = System.currentTimeMillis();
    try {/*from  ww w .  ja v  a 2s.  c om*/
        final SOAPPart doc = message.getSOAPPart();
        final SOAPEnvelope envelope = doc.getEnvelope();
        final SOAPHeader soapHeader = message.getSOAPHeader();
        final Element recipient = findSecurityToken(soapHeader, ACTOR_RECIPIENT);
        final X509Certificate recipientCert;
        if (recipient != null) {
            final ValidateResult recipientResult = validate(recipient);
            if (recipientResult.error != null) {
                return new VerifyResult(" : " + recipientResult.error, null,
                        recipientResult.cert);
            }
            recipientCert = recipientResult.cert;
        } else {
            recipientCert = null;
        }
        final Element smev = findSecurityToken(soapHeader, ACTOR_SMEV);
        if (smev == null) {
            return new VerifyResult(" : ??", null, recipientCert);
        }
        final ValidateResult smevResult = validate(smev);
        return new VerifyResult(smevResult.error, smevResult.cert, recipientCert);
    } finally {
        if (log.isDebugEnabled()) {
            log.debug("VERIFY: " + (System.currentTimeMillis() - startMs) + "ms");
        }
    }
}