Try to replace readPixels with getPixels.
RasterDataNode (SNAP Engine API) (esa.int)
The read method tells SNAP to explicitly read the data, but there is no reader for this band.
This part of the API is not the best.
Update:
Maybe the issue is with the call of writePixels, instead you can use setPixels.
Marco from EOMasters - Mastering Earth Observation -