1. In a medium stock pot, saute ham in oil and butter until lightly browned, about 5 minutes, add onion, celery, carrots and garlic over medium heat, until vegetables are softened, not brown.
2. Add chicken broth and seasonings; simmer 15-20 minutes.
3. Stir in cannellini beans, spinach and parsley.
4. Cook briefly just until spinach wilts, about 2-4 minutes.
5. Remove from heat.
6. In a small bowl, combine eggs and Parmesan with a whisk, I like to temper the egg/cheese mixture by adding 2 Tablesppons of the hot liquid from the soup, to the egg/cheese and stir quickly after each addition, then add egg mixture into the soup and stir until smooth.
7. Salt and pepper to taste.