"Sharath KM", I hate being a picky
jerk, but your display name does not match the
Javaranch naming policy. Basically, if you use initials they must come as the first part of the name. "KM Sharath" would work. I'd hate for one our moderators to see your name when they're grumpy and decide to lock your account.
Also, your best bet is to create a new
thread for each new question you have. It gets pretty confusing otherwise.
Alright, to your first question...
The security model only applies to requests that come from a client, usually being someone's browser. After I send a request to the server, the server might create its own requests internally, forwarding accross servlets, performing includes, all kinds of junk. For those requests that the server cooks up, the security model won't care. It's like the security model says, "You want resource X? Who's this for?" and the server says, "It's for me." It's kind of like a college kid buying beer for his underage buddies... except that what the server does is legal.
Second question...
If two security-constraints overlap (by url-pattern), and one of the security-constraints does not specify a user-data-constraint, then there will be no transport-guarantee applied to the resources effected by the url overlap. Note that user-data-constraint usually just forces the client to use https requests, so having no user-data-constraint simply means that the user doesn't have to use https (uses SSL), they can just use regular ol' http requests.