Firstly, when you get an error with that annoying undescriptive message:
Generating Cloud Endpoint has encountered errors and is not complete
you should check the Error Log under Window -> Show View -> Error Log
to get more info.
I did so, and I found that the actual exception is:
java.lang.IllegalArgumentException:
Multiple methods with same rest path "POST facelist": "getOrangers" and "getMangoers"
So, the problem is that your 2 methods have the same path! Adding explicitly a path for your methods will solve the problem:
@ApiMethod(name="getOrangers", path="get_oranges", httpMethod=HttpMethod.POST)
public FaceList getOrangers(UserRequest request) throws NotFoundException {
//...
}
@ApiMethod(name="getMangoers", path="get_mangoers", httpMethod=HttpMethod.POST)
public FaceList getMangoers(UserRequest request) throws NotFoundException {
//...
}
NOTE: As you didn't set paths for your methods, GPE is generating them automatically. It seems that GPE is generating the same path for the 2 methods, using to form the path the HTTP method (POST) and the returned value (facelist), which doesn't correspond with what is said in Google Cloud Endpoints Documentation:
"path: The URI path to use to access this method. If you don't set
this, a default path is used based on the Java method name."
It says that the path is automatically generated using the method name, and in that case you'd not getting any error, since your 2 methods have obviously different names. So I guess it must be a bug (as many others) in Endpoints.