If in a block dispense event you set the item to be dispensed to ink sack, rose red, cactus green, cocoa beans, lapis lazuli, purple dye, cyan dye, light gray dye, gray dye, pink dye, lime dye, dandelion yellow, magenta dye, orange dye, or bonemeal, or anything else that I may have missed with item ID 351, the server repeatedly creates a new block dispense event when event.setItem() is called.
Because the newly fired event will go through your code that is listening to the event, it will throw the server into an infinite loop resulting in this beautiful error in your console: http://pastebin.com/q50Sc66a
A very similar error appears in the crash report: http://pastebin.com/XDbADfjm
Note that when I use setItem(), I am setting it for a dropper.
Please let me know if you need any more information.