Kevin,
My "solution" was to make copies of both RequestFactoryServlet and
SimpleRequestProcessor in a com.google.web.bindery.requestfactory.server
package in my environment, and then inside
MySimpleRequestProcessor.process(), add the following change:
.
.
.
assert invocationResults.size() == invocationSuccess.size();
if (!invocationResults.isEmpty()) {
resp.setInvocationResults(invocationResults);
resp.setStatusCodes(invocationSuccess);
}
// BEGIN CUSTOMIZATION
Iterator<Boolean> successIter = invocationSuccess.iterator();
Iterator<Splittable> resultIter = invocationResults.iterator();
while (successIter.hasNext() && resultIter.hasNext())
{
Boolean success = successIter.next();
Splittable result = resultIter.next();
if (!success)
{
resp.setGeneralFailure(
(AutoBeanCodex.decode(FACTORY,
ServerFailureMessage.class, result)).as());
break;
}
}
// END CUSTOMIZATION
if (!operations.isEmpty()) {
resp.setOperations(operations);
}
}
.
.
.
I then modified MyRequestFactoryServlet to reference
MySimpleRequestProcessor, and modified my application context to launch
MyRequestFactoryServlet instead of RequestFactoryServlet. This is far from
ideal, but it was the only way I could find to force a general failure based
on the invocation failure, since none of the methods in question are
publicly accessible. It also leaves me requiring hand-edits of these files
every time we upgrade to a new GWT version.
--
You received this message because you are subscribed to the Google Groups
"Google Web Toolkit" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/google-web-toolkit/-/Lzizi4zPZRIJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-web-toolkit?hl=en.