Standardised support for result-factory ad result-type across XmlMarshallingTransfromer and XsltPayloadTransformer
This commit is contained in:
@@ -14,6 +14,12 @@
|
||||
|
||||
<si-xml:xslt-transformer id="xsltTransformerWithTemplatesAndResultTransformer"
|
||||
xsl-templates="templates" result-transformer="resultTransformer" />
|
||||
|
||||
<si-xml:xslt-transformer id="xsltTransformerWithTemplatesAndResultFactory"
|
||||
xsl-templates="templates" result-factory="stubResultFactory" />
|
||||
|
||||
<si-xml:xslt-transformer id="xsltTransformerWithTemplatesAndStringResulType"
|
||||
xsl-templates="templates" result-type="StringResult" />
|
||||
|
||||
|
||||
<bean id="templates"
|
||||
@@ -25,5 +31,6 @@
|
||||
<constructor-arg value="testReturn" />
|
||||
</bean>
|
||||
|
||||
<bean id="stubResultFactory" class="org.springframework.integration.xml.config.StubResultFactory"/>
|
||||
|
||||
</beans>
|
||||
|
||||
@@ -31,7 +31,9 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.Message;
|
||||
import org.springframework.integration.transformer.Transformer;
|
||||
import org.springframework.integration.xml.config.StubResultFactory.StubStringResult;
|
||||
import org.springframework.integration.xml.util.XmlTestUtil;
|
||||
import org.springframework.xml.transform.StringResult;
|
||||
|
||||
/**
|
||||
* @author Jonas Partner
|
||||
@@ -81,5 +83,28 @@ public class XsltPayloadTransformerParserTests {
|
||||
String strResult = (String)result.getPayload();
|
||||
assertEquals("Wrong payload", "testReturn", strResult);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testWithResourceProvidedndStubResultFactory() throws Exception {
|
||||
Transformer transformer = (Transformer) applicationContext
|
||||
.getBean("xsltTransformerWithTemplatesAndResultFactory");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(XmlTestUtil.getDomSourceForString(doc));
|
||||
Message<?> result = transformer.transform(message);
|
||||
assertTrue("Payload was not a StubStringResult", result.getPayload() instanceof StubStringResult);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testWithResourceAndStringResultType() throws Exception {
|
||||
Transformer transformer = (Transformer) applicationContext
|
||||
.getBean("xsltTransformerWithTemplatesAndStringResulType");
|
||||
GenericMessage<Object> message = new GenericMessage<Object>(XmlTestUtil.getDomSourceForString(doc));
|
||||
Message<?> result = transformer.transform(message);
|
||||
assertTrue("Payload was not a StringResult", result.getPayload() instanceof StringResult);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user