So I was creating an underwater dungeon for my server and placing rewards on weapon racks when I noticed some items were getting detached for some reason. Turns out, whenever a worm enemy passed through a mannequin, weapon rack or item frame, the item(s) would pop out of it. I tested it on single player as well and it still happens. It only happens underwater. Items are not detached when worms go through them on dry land. Best place to reproduce is probably on the underground desert due to the frecuent worm spawning, but you will need to do some flooding. Here's a video showing how a tomb crawler detaches items from both weapon racks and item frames.