try {
state = sp.speedoGetHome().readIntention(sp, fieldIds);
} catch (Exception e) {
// Close the PersistenceManager if it has been allocated localy
if (pmAllocated) {
pm.closePOManager();
}
throw new IOException(e.getMessage());
}
} else {
state = sp.speedoGetReferenceState();