I found my fault. What a shame! After the filter method, I had a finally block with a save and dispose, but the problem was that I had two instances of the same book. So, I saved and disposed of one with all the changes, and then I overwrote it when I saved the second instance.
Sorry, guys. But now I know that the instance that saves the file in memory is not just a link to the file. I hope someone else learns this with my mistake.