many thanks karldmoore,
That was a great solution....
For anyone else that's interested, by extending the DelegatedDataSource, and overriding the getConnection method, we can call the stored proc every time the connection is retrieved.
To add the new delegated data source to the config something like the following is required:
Then use the delegatingDataSource bean anytime you'd have previously used the dataSource.....
<bean id="delagatingDataSource" class="xxx.DelegatingDataSource">
<property name="targetDataSource" ref="dataSource"/>
hth, and thanks again karldmoore