Removed MessageTransformer due to the redundancy with MessageHandler (now that Messages are immutable). Refactored existing transformers to implement PayloadTransformer instead. All message handling is now the responsibility of the delegating PayloadTransformingMessageHandler. Also added the AbstractPaylaodTransformerParser from which all existing PayloadTransformer parsers now extend.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2007 the original author or authors.
|
||||
* Copyright 2002-2008 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -24,18 +24,17 @@ import javax.xml.transform.dom.DOMResult;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.integration.transformer.MessageTransformer;
|
||||
import org.springframework.xml.transform.StringResult;
|
||||
import org.w3c.dom.Document;
|
||||
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
import org.springframework.integration.handler.MessageHandler;
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.xml.transform.StringResult;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Jonas Partner
|
||||
*
|
||||
*/
|
||||
public class XmlMarshallingTransformerParserTests {
|
||||
|
||||
@@ -43,16 +42,16 @@ public class XmlMarshallingTransformerParserTests {
|
||||
|
||||
|
||||
@Before
|
||||
public void setUp(){
|
||||
public void setUp() {
|
||||
this.appContext = new ClassPathXmlApplicationContext("XmlMarshallingTransformerParserTests-context.xml", getClass());
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testDefault() throws Exception {
|
||||
MessageTransformer transformer = (MessageTransformer) appContext.getBean("marshallingTransfomerNoResultFactory");
|
||||
MessageHandler transformer = (MessageHandler) appContext.getBean("marshallingTransfomerNoResultFactory");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>("hello");
|
||||
Message<?> result = transformer.transform(message);
|
||||
Message<?> result = transformer.handle(message);
|
||||
assertTrue("Wrong payload type", result.getPayload() instanceof DOMResult);
|
||||
Document doc = (Document) ((DOMResult) result.getPayload()).getNode();
|
||||
assertEquals("Wrong palyoad", "hello", doc.getDocumentElement().getTextContent());
|
||||
@@ -60,9 +59,9 @@ public class XmlMarshallingTransformerParserTests {
|
||||
|
||||
@Test
|
||||
public void testDOMResult() throws Exception {
|
||||
MessageTransformer transformer = (MessageTransformer) appContext.getBean("marshallingTransfomerDOMResultFactory");
|
||||
MessageHandler transformer = (MessageHandler) appContext.getBean("marshallingTransfomerDOMResultFactory");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>("hello");
|
||||
Message<?> result = transformer.transform(message);
|
||||
Message<?> result = transformer.handle(message);
|
||||
assertTrue("Wrong payload type ", result.getPayload() instanceof DOMResult);
|
||||
Document doc = (Document) ((DOMResult) result.getPayload()).getNode();
|
||||
assertEquals("Wrong palyoad", "hello", doc.getDocumentElement().getTextContent());
|
||||
@@ -70,9 +69,9 @@ public class XmlMarshallingTransformerParserTests {
|
||||
|
||||
@Test
|
||||
public void testStringResult() throws Exception {
|
||||
MessageTransformer transformer = (MessageTransformer) appContext.getBean("marshallingTransfomerStringResultFactory");
|
||||
MessageHandler transformer = (MessageHandler) appContext.getBean("marshallingTransfomerStringResultFactory");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>("hello");
|
||||
Message<?> result = transformer.transform(message);
|
||||
Message<?> result = transformer.handle(message);
|
||||
assertTrue("Wrong payload type", result.getPayload() instanceof StringResult);
|
||||
}
|
||||
|
||||
|
||||
@@ -26,10 +26,10 @@ import org.junit.Test;
|
||||
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
import org.springframework.integration.handler.MessageHandler;
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.integration.message.MessagingException;
|
||||
import org.springframework.integration.transformer.MessageTransformer;
|
||||
import org.springframework.integration.xml.util.XmlTestUtil;
|
||||
import org.springframework.xml.transform.StringSource;
|
||||
|
||||
@@ -38,9 +38,9 @@ import org.springframework.xml.transform.StringSource;
|
||||
*/
|
||||
public class XmlUnmarshallingTransformerParserTests {
|
||||
|
||||
ApplicationContext appContext;
|
||||
private ApplicationContext appContext;
|
||||
|
||||
StubUnmarshaller unmarshaller;
|
||||
private StubUnmarshaller unmarshaller;
|
||||
|
||||
|
||||
@Before
|
||||
@@ -53,41 +53,41 @@ public class XmlUnmarshallingTransformerParserTests {
|
||||
|
||||
@Test
|
||||
public void testDefaultUnmarshall() throws Exception {
|
||||
MessageTransformer transformer = (MessageTransformer) appContext.getBean("defaultUnmarshaller");
|
||||
MessageHandler transformer = (MessageHandler) appContext.getBean("defaultUnmarshaller");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(new StringSource(
|
||||
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>"));
|
||||
Message<?> result = transformer.transform(message);
|
||||
Message<?> result = transformer.handle(message);
|
||||
assertEquals("Wrong payload after unmarshalling", "unmarshalled", result.getPayload());
|
||||
assertTrue("Wrong source passed to unmarshaller", unmarshaller.sourcesPassed.poll() instanceof StringSource);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUnmarshallString() throws Exception {
|
||||
MessageTransformer transformer = (MessageTransformer) appContext.getBean("defaultUnmarshaller");
|
||||
MessageHandler transformer = (MessageHandler) appContext.getBean("defaultUnmarshaller");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(
|
||||
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>");
|
||||
Message<?> result = transformer.transform(message);
|
||||
Message<?> result = transformer.handle(message);
|
||||
assertEquals("Wrong payload after unmarshalling", "unmarshalled", result.getPayload());
|
||||
assertTrue("Wrong source passed to unmarshaller", unmarshaller.sourcesPassed.poll() instanceof DOMSource);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUnmarshallDocument() throws Exception {
|
||||
MessageTransformer transformer = (MessageTransformer) appContext.getBean("defaultUnmarshaller");
|
||||
MessageHandler transformer = (MessageHandler) appContext.getBean("defaultUnmarshaller");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(
|
||||
XmlTestUtil
|
||||
.getDocumentForString("<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>"));
|
||||
Message<?> result = transformer.transform(message);
|
||||
Message<?> result = transformer.handle(message);
|
||||
assertEquals("Wrong payload after unmarshalling", "unmarshalled", result.getPayload());
|
||||
assertTrue("Wrong source passed to unmarshaller", unmarshaller.sourcesPassed.poll() instanceof DOMSource);
|
||||
}
|
||||
|
||||
@Test(expected = MessagingException.class)
|
||||
public void testUnmarshallUnsupported() throws Exception {
|
||||
MessageTransformer transformer = (MessageTransformer) appContext.getBean("defaultUnmarshaller");
|
||||
MessageHandler transformer = (MessageHandler) appContext.getBean("defaultUnmarshaller");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(new StringBuffer(
|
||||
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>"));
|
||||
transformer.transform(message);
|
||||
transformer.handle(message);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
|
||||
http://www.springframework.org/schema/integration-xml http://www.springframework.org/schema/integration/spring-integration-xml-1.0.xsd">
|
||||
|
||||
<si-xml:xslt-transformer id="xsltTransfomerWithResource"
|
||||
<si-xml:xslt-transformer id="xsltTransformerWithResource"
|
||||
xsl-resource="org/springframework/integration/xml/config/test.xsl" />
|
||||
|
||||
|
||||
|
||||
@@ -28,9 +28,9 @@ import org.w3c.dom.Document;
|
||||
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
import org.springframework.integration.handler.MessageHandler;
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.integration.transformer.MessageTransformer;
|
||||
import org.springframework.integration.xml.util.XmlTestUtil;
|
||||
|
||||
/**
|
||||
@@ -38,9 +38,9 @@ import org.springframework.integration.xml.util.XmlTestUtil;
|
||||
*/
|
||||
public class XsltPayloadTransformerParserTests {
|
||||
|
||||
String doc = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>";
|
||||
private String doc = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>";
|
||||
|
||||
ApplicationContext applicationContext;
|
||||
private ApplicationContext applicationContext;
|
||||
|
||||
|
||||
@Before
|
||||
@@ -51,10 +51,10 @@ public class XsltPayloadTransformerParserTests {
|
||||
|
||||
@Test
|
||||
public void testWithResourceProvided() throws Exception {
|
||||
MessageTransformer messageTransformer = (MessageTransformer) applicationContext
|
||||
.getBean("xsltTransfomerWithResource");
|
||||
MessageHandler messageTransformer = (MessageHandler) applicationContext
|
||||
.getBean("xsltTransformerWithResource");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(XmlTestUtil.getDomSourceForString(doc));
|
||||
Message<?> result = messageTransformer.transform(message);
|
||||
Message<?> result = messageTransformer.handle(message);
|
||||
assertTrue("Payload was not a DOMResult", result.getPayload() instanceof DOMResult);
|
||||
Document doc = (Document) ((DOMResult) result.getPayload()).getNode();
|
||||
assertEquals("Wrong payload", "test", doc.getDocumentElement().getTextContent());
|
||||
@@ -62,10 +62,10 @@ public class XsltPayloadTransformerParserTests {
|
||||
|
||||
@Test
|
||||
public void testWithTemplatesProvided() throws Exception {
|
||||
MessageTransformer messageTransformer = (MessageTransformer) applicationContext
|
||||
MessageHandler messageTransformer = (MessageHandler) applicationContext
|
||||
.getBean("xsltTransformerWithTemplates");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(XmlTestUtil.getDomSourceForString(doc));
|
||||
Message<?> result = messageTransformer.transform(message);
|
||||
Message<?> result = messageTransformer.handle(message);
|
||||
assertTrue("Payload was not a DOMResult", result.getPayload() instanceof DOMResult);
|
||||
Document doc = (Document) ((DOMResult) result.getPayload()).getNode();
|
||||
assertEquals("Wrong payload", "test", doc.getDocumentElement().getTextContent());
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2007 the original author or authors.
|
||||
* Copyright 2002-2008 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -28,16 +28,14 @@ import javax.xml.transform.dom.DOMSource;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.MessagingException;
|
||||
import org.springframework.xml.transform.StringResult;
|
||||
import org.w3c.dom.Document;
|
||||
import org.xml.sax.InputSource;
|
||||
|
||||
import org.springframework.integration.message.MessagingException;
|
||||
import org.springframework.xml.transform.StringResult;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Jonas Partner
|
||||
*
|
||||
*/
|
||||
public class DomSourceFactoryTests {
|
||||
|
||||
@@ -56,8 +54,7 @@ public class DomSourceFactoryTests {
|
||||
|
||||
@Test
|
||||
public void testWithDocumentPayload() throws Exception {
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(doc);
|
||||
Source source = sourceFactory.getSourceForMessage(message);
|
||||
Source source = sourceFactory.createSource(doc);
|
||||
assertNotNull("Returned source was null", source);
|
||||
assertEquals("Expected DOMSource", DOMSource.class, source.getClass());
|
||||
assertEquals("Wrong content in source ", docContent, getAsString(source));
|
||||
@@ -65,8 +62,7 @@ public class DomSourceFactoryTests {
|
||||
|
||||
@Test
|
||||
public void testWithStringPayload() throws Exception {
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(docContent);
|
||||
Source source = sourceFactory.getSourceForMessage(message);
|
||||
Source source = sourceFactory.createSource(docContent);
|
||||
assertNotNull("Returned source was null", source);
|
||||
assertEquals("Expected DOMSource", DOMSource.class, source.getClass());
|
||||
assertEquals("Wrong content in source ", docContent, getAsString(source));
|
||||
@@ -74,11 +70,11 @@ public class DomSourceFactoryTests {
|
||||
|
||||
@Test(expected = MessagingException.class)
|
||||
public void testWithUnsupportedPayload() throws Exception {
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(12);
|
||||
sourceFactory.getSourceForMessage(message);
|
||||
sourceFactory.createSource(new Integer(12));
|
||||
}
|
||||
|
||||
String getAsString(Source source) throws Exception {
|
||||
|
||||
private String getAsString(Source source) throws Exception {
|
||||
Transformer transformer = TransformerFactory.newInstance().newTransformer();
|
||||
StringResult res = new StringResult();
|
||||
transformer.transform(source, res);
|
||||
|
||||
@@ -24,11 +24,8 @@ import javax.xml.transform.sax.SAXResult;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.integration.message.MessagingException;
|
||||
import org.springframework.integration.xml.util.XmlTestUtil;
|
||||
import org.springframework.xml.transform.StringResult;
|
||||
@@ -38,9 +35,9 @@ import org.springframework.xml.transform.StringResult;
|
||||
*/
|
||||
public class ResultToDocumentTransformerTests {
|
||||
|
||||
String doc = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>";
|
||||
private String doc = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>";
|
||||
|
||||
ResultToDocumentTransformer resToDocTransformer;
|
||||
private ResultToDocumentTransformer resToDocTransformer;
|
||||
|
||||
|
||||
@Before
|
||||
@@ -52,27 +49,25 @@ public class ResultToDocumentTransformerTests {
|
||||
@Test
|
||||
public void testWithDomResult() throws Exception {
|
||||
DOMResult result = XmlTestUtil.getDomResultForString(doc);
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(result);
|
||||
Message<?> transformed = resToDocTransformer.transform(message);
|
||||
assertTrue("Wrong payload type expected Document", transformed.getPayload() instanceof Document);
|
||||
Document doc = (Document) transformed.getPayload();
|
||||
Object transformed = resToDocTransformer.transform(result);
|
||||
assertTrue("Wrong transformed type expected Document", transformed instanceof Document);
|
||||
Document doc = (Document) transformed;
|
||||
assertEquals("Wrong root element name", "order", doc.getDocumentElement().getNodeName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testWithStringResult() throws Exception {
|
||||
StringResult result = XmlTestUtil.getStringResultForString(doc);
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(result);
|
||||
Message<?> transformed = resToDocTransformer.transform(message);
|
||||
assertTrue("Wrong payload type expected Document", transformed.getPayload() instanceof Document);
|
||||
Document doc = (Document) transformed.getPayload();
|
||||
Object transformed = resToDocTransformer.transform(result);
|
||||
assertTrue("Wrong transformed type expected Document", transformed instanceof Document);
|
||||
Document doc = (Document) transformed;
|
||||
assertEquals("Wrong root element name", "order", doc.getDocumentElement().getNodeName());
|
||||
}
|
||||
|
||||
@Test(expected = MessagingException.class)
|
||||
public void testWithUnsupportedSaxResult() throws Exception {
|
||||
SAXResult result = new SAXResult();
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(result);
|
||||
resToDocTransformer.transform(message);
|
||||
resToDocTransformer.transform(result);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -26,8 +26,6 @@ import javax.xml.transform.Result;
|
||||
import javax.xml.transform.dom.DOMResult;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.integration.message.StringMessage;
|
||||
import org.springframework.integration.xml.result.StringResultFactory;
|
||||
import org.springframework.oxm.Marshaller;
|
||||
import org.springframework.oxm.XmlMappingException;
|
||||
@@ -43,10 +41,9 @@ public class XmlPayloadMarshallingTransformerTests {
|
||||
TestMarshaller marshaller = new TestMarshaller();
|
||||
XmlPayloadMarshallingTransformer transformer = new XmlPayloadMarshallingTransformer(marshaller);
|
||||
transformer.setResultFactory(new StringResultFactory());
|
||||
Message<?> message = new StringMessage("world");
|
||||
Message<?> result = transformer.transform(message);
|
||||
assertEquals(StringResult.class, result.getPayload().getClass());
|
||||
assertEquals("hello world", result.getPayload().toString());
|
||||
Object result = transformer.transform("world");
|
||||
assertEquals(StringResult.class, result.getClass());
|
||||
assertEquals("hello world", result.toString());
|
||||
assertEquals("world", marshaller.payloads.get(0));
|
||||
}
|
||||
|
||||
@@ -54,16 +51,15 @@ public class XmlPayloadMarshallingTransformerTests {
|
||||
public void testDefaultResultFactory() {
|
||||
TestMarshaller marshaller = new TestMarshaller();
|
||||
XmlPayloadMarshallingTransformer transformer = new XmlPayloadMarshallingTransformer(marshaller);
|
||||
Message<?> message = new StringMessage("world");
|
||||
Message<?> result = transformer.transform(message);
|
||||
assertEquals(DOMResult.class, result.getPayload().getClass());
|
||||
Object result = transformer.transform("world");
|
||||
assertEquals(DOMResult.class, result.getClass());
|
||||
assertEquals("world", marshaller.payloads.get(0));
|
||||
}
|
||||
|
||||
|
||||
private static class TestMarshaller implements Marshaller {
|
||||
|
||||
List<Object> payloads = new ArrayList<Object>();
|
||||
private List<Object> payloads = new ArrayList<Object>();
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public boolean supports(Class clazz) {
|
||||
|
||||
@@ -24,8 +24,6 @@ import javax.xml.transform.Source;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.oxm.Unmarshaller;
|
||||
import org.springframework.oxm.XmlMappingException;
|
||||
import org.springframework.xml.transform.StringSource;
|
||||
@@ -39,10 +37,9 @@ public class XmlPayloadUnmarshallingTransformerTests {
|
||||
public void testStringSourceToString() {
|
||||
Unmarshaller unmarshaller = new TestUnmarshaller();
|
||||
XmlPayloadUnmarshallingTransformer transformer = new XmlPayloadUnmarshallingTransformer(unmarshaller);
|
||||
Message<?> message = new GenericMessage<StringSource>(new StringSource("world"));
|
||||
Message<?> transformed = transformer.transform(message);
|
||||
assertEquals(String.class, transformed.getPayload().getClass());
|
||||
assertEquals("hello world", transformed.getPayload().toString());
|
||||
Object transformed = transformer.transform(new StringSource("world"));
|
||||
assertEquals(String.class, transformed.getClass());
|
||||
assertEquals("hello world", transformed.toString());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -18,7 +18,6 @@ package org.springframework.integration.xml.transformer;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
import javax.xml.transform.Source;
|
||||
import javax.xml.transform.dom.DOMResult;
|
||||
|
||||
import org.junit.Before;
|
||||
@@ -28,10 +27,7 @@ import org.w3c.dom.Document;
|
||||
|
||||
import org.springframework.core.io.ByteArrayResource;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.integration.message.MessagingException;
|
||||
import org.springframework.integration.message.StringMessage;
|
||||
import org.springframework.integration.xml.util.XmlTestUtil;
|
||||
import org.springframework.xml.transform.StringSource;
|
||||
|
||||
@@ -40,48 +36,49 @@ import org.springframework.xml.transform.StringSource;
|
||||
*/
|
||||
public class XsltPayloadTransformerTest {
|
||||
|
||||
XsltPayloadTransformer transformer;
|
||||
private XsltPayloadTransformer transformer;
|
||||
|
||||
private String doc = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>";
|
||||
|
||||
String doc = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><order><orderItem>test</orderItem></order>";
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
transformer = new XsltPayloadTransformer(getXslResource());
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testDocumentAsPayload() throws Exception {
|
||||
GenericMessage<Document> documentMessage = new GenericMessage<Document>(XmlTestUtil.getDocumentForString(doc));
|
||||
transformer.transform(documentMessage);
|
||||
|
||||
Object transformed = transformer.transform(XmlTestUtil.getDocumentForString(doc));
|
||||
DOMResult result = (DOMResult) transformed;
|
||||
String rootNodeName = ((Document) result.getNode()).getDocumentElement().getNodeName();
|
||||
assertEquals("Wrong name for root element after transform", "bob", rootNodeName);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSourceAsPayload() throws Exception {
|
||||
GenericMessage<Source> message = new GenericMessage<Source>(new StringSource(doc));
|
||||
Message<?> transformed = transformer.transform(message);
|
||||
DOMResult result = (DOMResult) transformed.getPayload();
|
||||
Object transformed = transformer.transform(new StringSource(doc));
|
||||
DOMResult result = (DOMResult) transformed;
|
||||
String rootNodeName = ((Document) result.getNode()).getDocumentElement().getNodeName();
|
||||
assertEquals("Wrong name for root element after transform", "bob", rootNodeName);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testStringAsPayload() throws Exception {
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(doc);
|
||||
Message<?> transformed = transformer.transform(message);
|
||||
DOMResult result = (DOMResult) transformed.getPayload();
|
||||
Object transformed = transformer.transform(doc);
|
||||
DOMResult result = (DOMResult) transformed;
|
||||
String rootNodeName = ((Document) result.getNode()).getDocumentElement().getNodeName();
|
||||
assertEquals("Wrong name for root element after transform", "bob", rootNodeName);
|
||||
}
|
||||
|
||||
@Test(expected = MessagingException.class)
|
||||
public void testNonXmlString() throws Exception {
|
||||
transformer.transform(new StringMessage("test"));
|
||||
transformer.transform("test");
|
||||
}
|
||||
|
||||
@Test(expected = MessagingException.class)
|
||||
public void testUnsupportedPayloadType() throws Exception {
|
||||
transformer.transform(new GenericMessage<Long>(new Long(12)));
|
||||
transformer.transform(new Long(12));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2007 the original author or authors.
|
||||
* Copyright 2002-2008 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -25,14 +25,15 @@ import javax.xml.transform.TransformerFactory;
|
||||
import javax.xml.transform.dom.DOMResult;
|
||||
import javax.xml.transform.dom.DOMSource;
|
||||
|
||||
import org.springframework.xml.transform.StringResult;
|
||||
import org.w3c.dom.Document;
|
||||
import org.xml.sax.InputSource;
|
||||
|
||||
import org.springframework.xml.transform.StringResult;
|
||||
|
||||
/**
|
||||
* Utill class for XML related testing
|
||||
* @author Jonas Partner
|
||||
* Utility class for XML related testing
|
||||
*
|
||||
* @author Jonas Partner
|
||||
*/
|
||||
public class XmlTestUtil {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user