On May 25, 2010, at 7:07 PM, Morten wrote:
> Great. I also plead guilty to asserts on injects.
>
> Another thing I do is to add a error handler on the service side
> that attaches the exception trace to the error message + this code
> on the client side:
>
Jersey used to send the exception as a response entity if no entity
was present. However, this can interfere with the application. We need
to make something like this available in a development mode. I was
thinking the stack trace could be sent as a response header, if
clients won't barf over headers with many multiple lines.
Paul.
> protected <T> T getRequest(String etagHeader, EntityTag etag,
> Class<T> clazz, URI uri, String mediaType) throws Exception
> {
> WebResource res = jerseyClient.resource(uri);
> Builder builder = res.accept(mediaType).acceptLanguage(locale);
> if (etag!=null && etag.getValue()!=null &&
> etag.getValue().length()>0 && etagHeader!=null)
> builder=builder.header(etagHeader, etagHeaderString(etag));
>
> // Get request result in a safe way so we get the full error
> description if there are errors.
> ClientResponse clientResponse = builder.get(ClientResponse.class);
> if (clazz.equals(ClientResponse.class))
> return (T)clientResponse;
>
> if (clientResponse.getStatus()<=MAX_NO_ERROR_HTTP_CODE) {
> return clientResponse.getEntity(clazz);
> } else {
> String errStr = getFullErrorString(uri, clientResponse);
> throw new UniformInterfaceException(errStr, clientResponse,
> false);
> }
> }
>
> --- Den tirs 25/5/10 skrev Paul Sandoz <Paul.Sandoz_at_Sun.COM>:
>
>> Fra: Paul Sandoz <Paul.Sandoz_at_Sun.COM>
>> Emne: [Jersey] Started work on improving Jersey's error reporting
>> Til: "Jersey-Users Mailing List" <users_at_jersey.dev.java.net>
>> Dato: tirsdag 25. maj 2010 18.44
>> Hi,
>>
>> I finally got around to working on improving Jersey's error
>> reporting. After seeing that some developers were using
>> asserts for checking injected dependencies themselves i
>> simply could not let this languish any more.
>>
>> I have made a first commit that just logs warnings of
>> un-bound dependencies for injection and class construction
>> issues.
>>
>> Once i sort out contextual error reporting i will unify the
>> above with errors related to the JAX-RS model and such
>> errors will result in deployment or a 500 runtime error. As
>> many errors as possible will be reported to avoid the
>> developer being trapped in an annoying compile and fix
>> loop.
>>
>> Paul.
>>
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe_at_jersey.dev.java.net
>> For additional commands, e-mail: users-help_at_jersey.dev.java.net
>>
>>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_jersey.dev.java.net
> For additional commands, e-mail: users-help_at_jersey.dev.java.net
>