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:
Code:
<bean id="delagatingDataSource" class="xxx.DelegatingDataSource">
<property name="targetDataSource" ref="dataSource"/>
</bean>
Then use the delegatingDataSource bean anytime you'd have previously used the dataSource.....
hth, and thanks again karldmoore 
Chris.