Package org.apache.tapestry5.services

# Interface ComponentEventResultProcessor<T>

Type Parameters:
  `T` - the type of the values being handled

All Known Implementing Classes:
  `AjaxComponentInstanceEventResultProcessor`, `AjaxLinkComponentEventResultProcessor`, `AjaxPageClassComponentEventResultProcessor`, `AjaxPageNameComponentEventResultProcessor`, `AjaxURLComponentEventResultProcessor`, `ClassResultProcessor`, `ComponentInstanceResultProcessor`, `HttpErrorComponentEventResultProcessor`, `HttpStatusComponentEventResultProcessor`, `JacksonComponentEventResultProcessor`, `JSONCollectionEventResultProcessor`, `JSONObjectEventResultProcessor`, `MultiZoneUpdateEventResultProcessor`, `ObjectComponentEventResultProcessor`, `PageNameComponentEventResultProcessor`, `RenderCommandComponentEventResultProcessor`, `StreamPageContentResultProcessor`, `StreamResponseResultProcessor`

@UsesMappedConfiguration(key=java.lang.Class.class, value=ComponentEventResultProcessor.class) public interface ComponentEventResultProcessor<T>
Responsible for handling the return value provided by a component event handler method. There are two services built into Tapestry that implement this interface: ComponentEventResultProcessor (used for ordinary page-oriented requests, and distinguished by the @`Traditional` and/or @`Primary` marker annotations) and AjaxComponentEventResultProcessor, used for Ajax requests (which typically return a partially rendered page), distinguished by the @`Ajax` marker annotation.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `processResultValue(T value)`
  For a given, non-null return value from a component event method, construct and send a response.

- ## Method Details

  - ### processResultValue

    void processResultValue(T value) throws IOException
    For a given, non-null return value from a component event method, construct and send a response. Starting in release 5.4, it is recommended that for any response that involves Tapestry pages or components, the implementation should create an `IOOperation` to do the rendering, and add the operation to the `Request` as attribute `TapestryConstants.RESPONSE_RENDERER`. This avoids a number of issues related to the `Environment`.
    Parameters:
      `value` - the value returned from a method
    Throws:
      `RuntimeException` - if the value can not handled
      `IOException`