Firstly,
byte[] iv = {00000000000000000000000000000000};
creates an array of bytes of size 1, not an array of bytes of size 32 (if that is your intention).
Secondly, the size of the IV AES should be 16 or 128 bits (this is the size of the AES-128 block). If you are using AES-256, the IV size should be 128 bits large, since the AES standard only allows 128-bit block sizes. The original Rijndael algorithm allowed for other block sizes, including a 256-bit block size.
Thirdly, if you are going to use AES-256, this does not fail. You need to download and install the JCE Unlimited Strength Jurisdiction Policy Files (scroll to the bottom of the page); I also recommend reading the attached license.
This will result in the following change to your code:
byte[] iv = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
Finally, the initialization vector must be unique and unpredictable. A sequence of 16 bytes with each byte represented by a value of 0 is not a suitable candidate for IV. If this is production code, try getting help.