The first approach works well if you have only one war deployed with Camel inside while the second is better in terms of memory footprint. The second is a bit more complicated, though, as you would have to bundle a jboss-deployment-structure.xml with your app or manipulate the manifest.
If you start off from JBoss Fuse Service Works you will already find quite a few Camel and Spring libs bundles as JBoss modules.
I would definitely recommend the second approach also from maintenance/standardization perspective, i.e. you can update single Camel JAR's and don't have to update all your applications.