In this setup, you need to check Every Frame in the Bool Test, and remove the Wait transition (it will cause an infinite loop). This will wait until Contact is True, then send the Explode event.
If an action has an Every Frame option, and you leave it unchecked, then it will only perform its action once when the state is entered then finish.
While the game is running, active actions are highlighted green; actions that have finished are grayed out.
This page on the wiki explains the life cycle of an action in more detail:
https://hutonggames.fogbugz.com/default.asp?W174Another/better way to structure these 2 FSMs is to just send the Explode event to the Cannon Ball FSM (instead of testing a bool every frame). In 1.1 use Send Event To FSM. In 1.2 (coming soon) just use Send Event and set the target.
Hope that helps!