I think the question should be changed from "how an Factory Pattern would be useful in a WebBased application" to "why or when we need to use Factory Pattern". The beauty of the Factory Pattern is you can "inject" new implementation to your system without large scale change. Factory Pattern encapsulate (or hide away) the creation of the real instance. That means, if you need to provide different sub-class of the class or interface, you don't need to change large segment of code.

As your example, if you need to introduce new kind of Person (e.g. ET), you just need to change one place (the "getDetails(..) function).