Take a look at the ESB Programmer's Guide :
There's a section on Gateways which should explain what protocols are suppported, and how to configure them. Also there are a lot of good examples in Quickstarts on how you could communicate via ftp, http, file, SQL, hibernate, and in addition - what Camel supports.
What I am trying to find is what is the best way to expose an esb service? Should I publish the esb service as a webservice (by having the inXSD and outXSD) or can I use JBR?