Package org.springframework.ws.soap

Examples of org.springframework.ws.soap.SoapMessage


    }

    @Override
    protected String getLookupKeyForMessage(MessageContext messageContext) throws Exception {
        if (messageContext.getRequest() instanceof SoapMessage) {
            SoapMessage request = (SoapMessage) messageContext.getRequest();
            String soapAction = request.getSoapAction();
            if (StringUtils.hasLength(soapAction) && soapAction.charAt(0) == '"' &&
                    soapAction.charAt(soapAction.length() - 1) == '"') {
                return soapAction.substring(1, soapAction.length() - 1);
            }
            else {
View Full Code Here


  }

    @Override
    public final EndpointInvocationChain getEndpoint(MessageContext messageContext) throws TransformerException {
        Assert.isInstanceOf(SoapMessage.class, messageContext.getRequest());
        SoapMessage request = (SoapMessage) messageContext.getRequest();
        for (AddressingVersion version : versions) {
            if (supports(version, request)) {
                if (logger.isDebugEnabled()) {
                    logger.debug("Request [" + request + "] uses [" + version + "]");
                }
View Full Code Here

    @Before
    public void setUp() throws Exception {
        resolver = new SoapHeaderElementMethodArgumentResolver();
        messageContext = createSaajMessageContext();
        SoapMessage message = (SoapMessage) messageContext.getRequest();
        for (int i = 0; i < 3; i++) {
            SoapHeaderElement element = message.getSoapHeader().addHeaderElement(HEADER_QNAME);
            element.setText(HEADER_CONTENT + i);
        }
        soapHeaderWithEmptyValue =
                new MethodParameter(getClass().getMethod("soapHeaderWithEmptyValue", SoapHeaderElement.class), 0);
        soapHeaderElementParameter =
View Full Code Here

    }

    @Override
    public Object resolveArgument(MessageContext messageContext, MethodParameter parameter) {
        Assert.isInstanceOf(SoapMessage.class, messageContext.getRequest());
        SoapMessage request = (SoapMessage) messageContext.getRequest();

        Class<?> parameterType = parameter.getParameterType();

        if (SoapMessage.class.equals(parameterType)) {
            return request;
        }
        else if (SoapBody.class.equals(parameterType)) {
            return request.getSoapBody();
        }
        else if (SoapEnvelope.class.equals(parameterType)) {
            return request.getEnvelope();
        }
        else if (SoapHeader.class.equals(parameterType)) {
            return request.getSoapHeader();
        }
        // should not happen
        throw new UnsupportedOperationException();
    }
View Full Code Here

    }

    @Override
    public Object resolveArgument(MessageContext messageContext, MethodParameter parameter) throws Exception {
        Assert.isInstanceOf(SoapMessage.class, messageContext.getRequest());
        SoapMessage request = (SoapMessage) messageContext.getRequest();
        org.springframework.ws.soap.SoapHeader soapHeader = request.getSoapHeader();

        String paramValue = parameter.getParameterAnnotation(SoapHeader.class).value();

        Assert.isTrue(QNameUtils.validateQName(paramValue), "Invalid header qualified name [" + paramValue + "]. " +
                "QName must be of the form '{namespace}localPart'.");
View Full Code Here

    }

    @Override
    public final boolean handleRequest(MessageContext messageContext, Object endpoint) throws Exception {
        Assert.isInstanceOf(SoapMessage.class, messageContext.getRequest());
        SoapMessage request = (SoapMessage) messageContext.getRequest();
        MessageAddressingProperties requestMap = version.getMessageAddressingProperties(request);
        if (!version.hasRequiredProperties(requestMap)) {
            version.addMessageAddressingHeaderRequiredFault((SoapMessage) messageContext.getResponse());
            return false;
        }
View Full Code Here

                version.getMessageAddressingProperties((SoapMessage) messageContext.getRequest());
        EndpointReference replyEpr = !isFault ? requestMap.getReplyTo() : requestMap.getFaultTo();
        if (handleNoneAddress(messageContext, replyEpr)) {
            return false;
        }
        SoapMessage reply = (SoapMessage) messageContext.getResponse();
        URI replyMessageId = getMessageId(reply);
        URI action = isFault ? faultAction : replyAction;
        MessageAddressingProperties replyMap = requestMap.getReplyProperties(replyEpr, action, replyMessageId);
        version.addAddressingHeaders(reply, replyMap);
        if (handleAnonymousAddress(messageContext, replyEpr)) {
View Full Code Here

    @Override
    protected final boolean resolveExceptionInternal(MessageContext messageContext, Object endpoint, Exception ex) {
        Assert.isInstanceOf(SoapMessage.class, messageContext.getResponse(),
                "SimpleSoapExceptionResolver requires a SoapMessage");
        SoapMessage response = (SoapMessage) messageContext.getResponse();
        String faultString = StringUtils.hasLength(ex.getMessage()) ? ex.getMessage() : ex.toString();
        SoapBody body = response.getSoapBody();
        SoapFault fault = body.addServerOrReceiverFault(faultString, getLocale());
        customizeFault(messageContext, endpoint, ex, fault);
        return true;
    }
View Full Code Here

        for (ObjectError objectError : errors.getAllErrors()) {
            String msg = messageSource.getMessage(objectError, getFaultLocale());
            logger.warn("Validation error on request object[" + requestObject + "]: " + msg);
        }
        if (messageContext.getResponse() instanceof SoapMessage) {
            SoapMessage response = (SoapMessage) messageContext.getResponse();
            SoapBody body = response.getSoapBody();
            SoapFault fault = body.addClientOrSenderFault(getFaultStringOrReason(), getFaultLocale());
            if (getAddValidationErrorDetail()) {
                SoapFaultDetail detail = fault.addFaultDetail();
                for (ObjectError objectError : errors.getAllErrors()) {
                    String msg = messageSource.getMessage(objectError, getFaultLocale());
View Full Code Here

    }

    @Override
    public void doWithMessage(WebServiceMessage message) throws IOException, TransformerException {
        Assert.isInstanceOf(SoapMessage.class, message);
        SoapMessage soapMessage = (SoapMessage) message;
        URI messageId = getMessageIdStrategy().newMessageId(soapMessage);
        MessageAddressingProperties map =
                new MessageAddressingProperties(getTo(), getFrom(), getReplyTo(), getFaultTo(), getAction(), messageId);
        version.addAddressingHeaders(soapMessage, map);
    }
View Full Code Here

TOP

Related Classes of org.springframework.ws.soap.SoapMessage

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.