I commited what I have on this to a workspace in SVN: http://anonsvn.jboss.org/repos/labs/labs/jbossesb/workspace/tfennelly/annotated_components
I modified the http_gateway quickstart as one example:
In it you can see how the @ProcessMethod method is now taking multiple non ESB Message params. The params are annotated with @BodyParam and @PropertyParam annotations, which tell the ESB from where to extrat those params on the Message before invoking (@AttachmentParam is also there).
@ProcessMethod
public String printHttpRequestInfo(@BodyParam byte[] httpPayload, @PropertyParam HttpRequest requestInfo )
Those params can also take an explicit named location (e.g. @BodyParam("orderInfo")). These @XParam annotations are not required. If not present, the ESB will search the message based on param type, which is convenient but of course has the obvious "risks" that need to be kept in mind.