Remove most of the fat from the lamb. Brown the shanks on all sides in the butter and transfer to a large casserole.
Add the onions to the skillet in which lamb was browned and cook, stirring, until wilted. Add remaining ingredients and bring to a boil. Season with salt and pepper to taste. Pour the liquid over the lamb shanks; cover. Bake for three hours, or until meat is very tender.