private void transformMessage(WebServiceMessage message, Transformer transformer) throws TransformerException { ByteArrayOutputStream os = new ByteArrayOutputStream(); transformer.transform(message.getPayloadSource(), new StreamResult(os)); ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray()); transform(new StreamSource(is), message.getPayloadResult()); }
/** * Transforms the request message in the given message context using a provided stylesheet. Transformation only * occurs if the {@code requestXslt} has been set. * * @param messageContext the message context * @return always returns {@code true} * @see #setRequestXslt(org.springframework.core.io.Resource) */ @Override public boolean handleRequest(MessageContext messageContext, Object endpoint) throws Exception { if (requestTemplates != null) { WebServiceMessage request = messageContext.getRequest(); Transformer transformer = requestTemplates.newTransformer(); transformMessage(request, transformer); logger.debug("Request message transformed"); } return true; }
@Override public void afterPropertiesSet() throws Exception { if (requestXslt == null && responseXslt == null) { throw new IllegalArgumentException("Setting either 'requestXslt' or 'responseXslt' is required"); } TransformerFactory transformerFactory = getTransformerFactory(); XMLReader xmlReader = XMLReaderFactory.createXMLReader(); xmlReader.setFeature("http://xml.org/sax/features/namespace-prefixes", true); if (requestXslt != null) { Assert.isTrue(requestXslt.exists(), "requestXslt \"" + requestXslt + "\" does not exit"); if (logger.isInfoEnabled()) { logger.info("Transforming request using " + requestXslt); } Source requestSource = new ResourceSource(xmlReader, requestXslt); requestTemplates = transformerFactory.newTemplates(requestSource); } if (responseXslt != null) { Assert.isTrue(responseXslt.exists(), "responseXslt \"" + responseXslt + "\" does not exit"); if (logger.isInfoEnabled()) { logger.info("Transforming response using " + responseXslt); } Source responseSource = new ResourceSource(xmlReader, responseXslt); responseTemplates = transformerFactory.newTemplates(responseSource); } } }
@Override public void afterPropertiesSet() throws Exception { if (requestXslt == null && responseXslt == null) { throw new IllegalArgumentException("Setting either 'requestXslt' or 'responseXslt' is required"); } TransformerFactory transformerFactory = getTransformerFactory(); XMLReader xmlReader = XMLReaderFactory.createXMLReader(); xmlReader.setFeature("http://xml.org/sax/features/namespace-prefixes", true); if (requestXslt != null) { Assert.isTrue(requestXslt.exists(), "requestXslt \"" + requestXslt + "\" does not exit"); if (logger.isInfoEnabled()) { logger.info("Transforming request using " + requestXslt); } Source requestSource = new ResourceSource(xmlReader, requestXslt); requestTemplates = transformerFactory.newTemplates(requestSource); } if (responseXslt != null) { Assert.isTrue(responseXslt.exists(), "responseXslt \"" + responseXslt + "\" does not exit"); if (logger.isInfoEnabled()) { logger.info("Transforming response using " + responseXslt); } Source responseSource = new ResourceSource(xmlReader, responseXslt); responseTemplates = transformerFactory.newTemplates(responseSource); } } }
/** * Transforms the request message in the given message context using a provided stylesheet. Transformation only * occurs if the <code>requestXslt</code> has been set. * * @param messageContext the message context * @return always returns <code>true</code> * @see #setRequestXslt(org.springframework.core.io.Resource) */ public boolean handleRequest(MessageContext messageContext, Object endpoint) throws Exception { if (requestTemplates != null) { WebServiceMessage request = messageContext.getRequest(); Transformer transformer = requestTemplates.newTransformer(); transformMessage(request, transformer); logger.debug("Request message transformed"); } return true; }
private void transformMessage(WebServiceMessage message, Transformer transformer) throws TransformerException { ByteArrayOutputStream os = new ByteArrayOutputStream(); transformer.transform(message.getPayloadSource(), new StreamResult(os)); ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray()); transform(new StreamSource(is), message.getPayloadResult()); }
@Override public void afterPropertiesSet() throws Exception { if (requestXslt == null && responseXslt == null) { throw new IllegalArgumentException("Setting either 'requestXslt' or 'responseXslt' is required"); } TransformerFactory transformerFactory = getTransformerFactory(); XMLReader xmlReader = XMLReaderFactory.createXMLReader(); xmlReader.setFeature("http://xml.org/sax/features/namespace-prefixes", true); if (requestXslt != null) { Assert.isTrue(requestXslt.exists(), "requestXslt \"" + requestXslt + "\" does not exit"); if (logger.isInfoEnabled()) { logger.info("Transforming request using " + requestXslt); } Source requestSource = new ResourceSource(xmlReader, requestXslt); requestTemplates = transformerFactory.newTemplates(requestSource); } if (responseXslt != null) { Assert.isTrue(responseXslt.exists(), "responseXslt \"" + responseXslt + "\" does not exit"); if (logger.isInfoEnabled()) { logger.info("Transforming response using " + responseXslt); } Source responseSource = new ResourceSource(xmlReader, responseXslt); responseTemplates = transformerFactory.newTemplates(responseSource); } } }
/** * Transforms the request message in the given message context using a provided stylesheet. Transformation only * occurs if the {@code requestXslt} has been set. * * @param messageContext the message context * @return always returns {@code true} * @see #setRequestXslt(org.springframework.core.io.Resource) */ @Override public boolean handleRequest(MessageContext messageContext, Object endpoint) throws Exception { if (requestTemplates != null) { WebServiceMessage request = messageContext.getRequest(); Transformer transformer = requestTemplates.newTransformer(); transformMessage(request, transformer); logger.debug("Request message transformed"); } return true; }
private void transformMessage(WebServiceMessage message, Transformer transformer) throws TransformerException { ByteArrayOutputStream os = new ByteArrayOutputStream(); transformer.transform(message.getPayloadSource(), new StreamResult(os)); ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray()); transform(new StreamSource(is), message.getPayloadResult()); }
/** * Transforms the response message in the given message context using a stylesheet. Transformation only occurs if * the <code>responseXslt</code> has been set. * * @param messageContext the message context * @return always returns <code>true</code> * @see #setResponseXslt(org.springframework.core.io.Resource) */ public boolean handleResponse(MessageContext messageContext, Object endpoint) throws Exception { if (responseTemplates != null) { WebServiceMessage response = messageContext.getResponse(); Transformer transformer = responseTemplates.newTransformer(); transformMessage(response, transformer); logger.debug("Response message transformed"); } return true; }
private void transformMessage(WebServiceMessage message, Transformer transformer) throws TransformerException { ByteArrayOutputStream os = new ByteArrayOutputStream(); transformer.transform(message.getPayloadSource(), new StreamResult(os)); ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray()); transform(new StreamSource(is), message.getPayloadResult()); }
/** * Transforms the request message in the given message context using a provided stylesheet. Transformation only * occurs if the {@code requestXslt} has been set. * * @param messageContext the message context * @return always returns {@code true} * @see #setRequestXslt(org.springframework.core.io.Resource) */ @Override public boolean handleRequest(MessageContext messageContext, Object endpoint) throws Exception { if (requestTemplates != null) { WebServiceMessage request = messageContext.getRequest(); Transformer transformer = requestTemplates.newTransformer(); transformMessage(request, transformer); logger.debug("Request message transformed"); } return true; }
/** * Transforms the response message in the given message context using a stylesheet. Transformation only occurs if * the {@code responseXslt} has been set. * * @param messageContext the message context * @return always returns {@code true} * @see #setResponseXslt(org.springframework.core.io.Resource) */ @Override public boolean handleResponse(MessageContext messageContext, Object endpoint) throws Exception { if (responseTemplates != null) { WebServiceMessage response = messageContext.getResponse(); Transformer transformer = responseTemplates.newTransformer(); transformMessage(response, transformer); logger.debug("Response message transformed"); } return true; }
/** * Transforms the response message in the given message context using a stylesheet. Transformation only occurs if * the {@code responseXslt} has been set. * * @param messageContext the message context * @return always returns {@code true} * @see #setResponseXslt(org.springframework.core.io.Resource) */ @Override public boolean handleResponse(MessageContext messageContext, Object endpoint) throws Exception { if (responseTemplates != null) { WebServiceMessage response = messageContext.getResponse(); Transformer transformer = responseTemplates.newTransformer(); transformMessage(response, transformer); logger.debug("Response message transformed"); } return true; }
/** * Transforms the response message in the given message context using a stylesheet. Transformation only occurs if * the {@code responseXslt} has been set. * * @param messageContext the message context * @return always returns {@code true} * @see #setResponseXslt(org.springframework.core.io.Resource) */ @Override public boolean handleResponse(MessageContext messageContext, Object endpoint) throws Exception { if (responseTemplates != null) { WebServiceMessage response = messageContext.getResponse(); Transformer transformer = responseTemplates.newTransformer(); transformMessage(response, transformer); logger.debug("Response message transformed"); } return true; }