Citrus is a test framework written in Java that enables automated integration testing of message-based enterprise SOA applications. The tool can easily simulate surrounding systems across various transports and protocols (e.g. JMS, SOAP WebServices, HTTP, TCP/IP, etc.) in order to perform end-to-end use case testing. Citrus provides strong validation mechanisms for XML message contents and allows you to build complex testing logic such as sending and receiving messages, database validation, automatic retries, variable definitions, dynamic message contents, error simulation, and many more.
Xtempore is a lightweight, modular, and powerful XML-based domain independent templating language. It's essentially a programming library which provides flexible tools for transforming an object (model) and an XML document (template) into another XML document. Xtempore is implemented in Java and requires JRE 1.5 or later and slf4j for logging.