After giving it some thought, I think that attributes defined at the <camel-gateway> level should override those at the <camel-bus> level (so that the from-uri attribute behaves just like the async and timeout attributes), however <from> elements defined inside camel-gateway are added to those at the <camel-bus> level.