Place a large roasting pan in the oven and preheat to 375°F.
Mash 1 can of the beans together with the oregano, sage, paprika, fennel, salt, and pepper.
Add the ground beef to the mashed beans and mix until well blended.
Roll the mixture into about 50 small meatballs (there should be 8-10 meatballs per serving).
Place 2 tablespoons of the olive oil in the roasting pan and add the meatballs.
Place the pan back in the oven and roast the meatballs for 20 minutes. Shake the pan occasionally so they don’t stick.
While the meatballs are cooking, place a large skillet over medium high heat.
Add the remaining 1 tablespoon olive oil and the garlic and cook for about 3 minutes.
Add the onions, celery, and carrot and cook for about 5 minutes.
Add the diced tomatoes, stir, and add the second can of white beans, the sliced olives, and the vegetable stock.
Reduce the heat to a simmer and cook for 20 minutes. Stir frequently.
Add the contents of the skillet and the cabbage to the roasting pan with the roasted meatballs. Stir gently.
Cook for 10 minutes until the cabbage is wilted, stirring occasionally. Serve.
