In a medium bowl mix olive oil, lemon juice, garlic, wine, bay leaf, salt, pepper, oregano, and rosemary.
Pour marinade over lamb cubes, stir thoroughly, and refrigerate,covered, at least 24 hours, stirring occasionally.
About 1 hour before serving time, preheat broiler.
Drain lamb kebabs, reserving marinade.
Thread separate skewers of lamb, onion, green pepper, and mushrooms and place on a broiling tray.
Baste vegetables with some of reserved marinade.
Broil about 4 inches from heat, turning frequently, as follows: green pepper, about 7 minutes; onions, about 12 minutes; mushrooms, about 3 minutes.
Remove skewers and allow to cool slightly, until ingredients and skewers can be handled.
Leave broiler on.
Remove skewers from ingredients and rethread 4 or 8 skewers (depending on size of skewers) so that each one includes, in alternating pieces, some lamb, onion, green pepper, mushrooms, and tomato.
Baste again with any remaining marinade.
Return skewers to broiler and, turning frequently, broil until meat is reheated and cooked medium-rare, vegetables are slightly blackened in spots, and tomatoes are very tender but not yet falling off skewers (5 to 7 minutes more).