Western names are not "common", because they don't really exist. The names you gave - John or Oscar - are English names so belong to a subculture of the western world. You just assumed they are common because it's your culture. I bet you might find strange to see a João in a book, but it's western also (indeed the Portuguese version of the name).
A book set in Miami, for example, could have a lot of Juans and João in it but even so, somebody from another part of the USA might think the names do not fit as they are not used in such proximity with Latin cultures.
Sometimes you just can't attach too much local context because of that context. Local context, in a book, is not the real city's local context but the book's social context and, most important, your target readers social context. You can't expect somebody to know the context just because in the real world it is that way.
Basically, before starting a book you need to know who are you writing for.
They first thing you need to have in mind is that if you want to use local names in your book you need to contextualize the names if your target audience is not used to them. Context will allow the users to leave the sound of the name behind and feel like like they know it.
A good example is Robin Hobb, who uses adjectives for names. Fitz Farseer is son of Prince Chivalry Farseer who is married to Lady Patience.
Those names at first seem really strange but within the book you start to like them because you understand that they define the characters, and because Robin contextualizes why the Six Duchies favor adjectives as names instead of 'real' names.
In my current manuscript I have two characters with 'foreign' names: Dexter and Elton. I didn't choose by rolling dice. There's a why and I tried to make it really clear in the book how the characters end up with foreign names in a Brazilian context.
If you contextualize your book's background and names, you can use them as much as you want.