Soak the zucchini in cold water at least 20 minutes, rinse well, trim both ends, and dice.
In a stockpot, cook olive oil, butter, and thin-sliced onion over medium-low until the onion softens and turns a pale gold.
Add carrots and cook 2 to 3 minutes, stirring once or twice. Add celery and cook 2 to 3 minutes, stirring occasionally. Add potatoes and cook the same way.
While those cook, soak and rinse the green beans, trim both ends, and dice. Add green beans to the pot. After 2 to 3 minutes, add zucchini, stirring now and then. After a few minutes, add cabbage and cook 5 to 6 minutes more.
Add broth, the optional cheese crust, tomatoes with their juice, and a sprinkling of salt. Cover and adjust heat so the soup simmers gently.
After 2 1/2 hours, stir in the drained cannellini beans and cook at least 30 minutes longer, until the soup is dense. If it thickens too much before it is finished, thin with more broth, or with water if you started from canned broth.
Right before turning off the heat, remove the cheese crust, stir in the grated cheese, then taste and correct for salt.