Your tomcat instance is presenting log statements such as the following
Jul 12, 2011 9:22:11 AM org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaksSEVERE: The web application [/idp] created a ThreadLocal with key of type [org.apache.xml.security.utils.UnsyncBufferedOutputStream$1] (value [org.apache.xml.security.utils.UnsyncBufferedOutputStream$1@4f02e8b5]) and a value of type [byte] (value [[B@7c90caed]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak. Jul 12, 2011 9:22:11 AM org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeak
This is expected behavior according to advice from the Shibboleth development team and relates to issues in the way that Tomcat allocates resources to context instances. So long as you're always starting and stopping the tomcat instance itself and not hot deploying your IdP (modifying the idp war or idp.xml context descriptor while Tomcat is running) this will not cause you any memory leaks and can be safely ignored.
You can see further discussion of this issue at: