Class StAXJAXBIteratorExpression<T>

java.lang.Object
org.apache.camel.support.ExpressionSupport
org.apache.camel.support.ExpressionAdapter
org.apache.camel.component.stax.StAXJAXBIteratorExpression<T>
All Implemented Interfaces:
org.apache.camel.Expression, org.apache.camel.Predicate

public class StAXJAXBIteratorExpression<T> extends org.apache.camel.support.ExpressionAdapter
Expression to walk a Message body using an Iterator, which uses StAX to walk in streaming mode. The elements returned is a POJO which is bound using JAXB annotations.

The message body must be able to convert to XMLEventReader type which is used as stream to access the message body. And there must be a JAXB annotated class to use as binding.

  • Constructor Details

    • StAXJAXBIteratorExpression

      public StAXJAXBIteratorExpression(Class<T> handled)
      Creates this expression.
      Parameters:
      handled - the class which has JAXB annotations to bind POJO.
    • StAXJAXBIteratorExpression

      public StAXJAXBIteratorExpression(Class<T> handled, boolean isNamespaceAware)
      Creates this expression.
      Parameters:
      handled - the class which has JAXB annotations to bind POJO.
      isNamespaceAware - sets the namespace awareness of the xml reader
    • StAXJAXBIteratorExpression

      public StAXJAXBIteratorExpression(String handledName)
      Creates this expression.
      Parameters:
      handledName - the FQN name of the class which has JAXB annotations to bind POJO.
    • StAXJAXBIteratorExpression

      public StAXJAXBIteratorExpression(String handledName, boolean isNamespaceAware)
      Creates this expression.
      Parameters:
      handledName - the FQN name of the class which has JAXB annotations to bind POJO.
      isNamespaceAware - sets the namespace awareness of the xml reader
  • Method Details

    • evaluate

      public Object evaluate(org.apache.camel.Exchange exchange)
      Overrides:
      evaluate in class org.apache.camel.support.ExpressionSupport