I am trying to wrap my head around Apache Camel, which appears to be a lightweight ESB. If I understand Camel/ESBs correctly, then you can think of a Camel Route as a graph of n
Let me Answer your Questions One by One:
Provides a descriptive, non-vague list of general factors that should be used to determine how to best deploy an ESB (either as a single EAR with each endpoint being an embedded JAR or as a single "monolithic" JAR);
Embeded or Monolithic jar doesn't matter. Which matters is Bundled or war deployment. In case of a Standalone bundle you might end-up with a very fat deployment archive having lots of jars to for dependency resolution.
Fully explains why Camel might not play nicely with Java EE app servers like JBoss or GlassFish
Thread/Resource/Port Management of App-Server/Container may impose restriction.
Conflict of commonly used Library Version
Logically, if your container supports OSGi then Camel should not face any problem.
Follow the links below[Though, Outdated enough], those will give you step-by-step direction on packaging, at-least clarity on the packaging mechanism:
Camel Step By Step
Camel in a Web Application
Camel Real Life Packaging & Deployment in OSGi environment