I think that when you are submitting the page, the arrayList is no longer full of name objects (I'm assuming you are using request scope). So Struts says, "Give me name #x from the arrayList so I can call setName() on it. What? There's no object? Exception!"