You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wink.apache.org by rf...@apache.org on 2011/09/08 22:53:59 UTC
svn commit: r1166899 - in /incubator/wink/trunk:
wink-common/src/main/java/org/apache/wink/common/internal/registry/
wink-common/src/main/resources/org/apache/wink/common/internal/i18n/
wink-server/src/main/java/org/apache/wink/server/internal/contexts...
Author: rfeng
Date: Thu Sep 8 20:53:59 2011
New Revision: 1166899
URL: http://svn.apache.org/viewvc?rev=1166899&view=rev
Log:
Adding more error logs for BAD_REQUEST (400)
Modified:
incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/Injectable.java
incubator/wink/trunk/wink-common/src/main/resources/org/apache/wink/common/internal/i18n/resource.properties
incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/contexts/HttpHeadersImpl.java
incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/registry/ServerInjectableFactory.java
Modified: incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/Injectable.java
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/Injectable.java?rev=1166899&r1=1166898&r2=1166899&view=diff
==============================================================================
--- incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/Injectable.java (original)
+++ incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/registry/Injectable.java Thu Sep 8 20:53:59 2011
@@ -25,6 +25,7 @@ import java.lang.annotation.Annotation;
import java.lang.reflect.Member;
import java.lang.reflect.Type;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
@@ -138,4 +139,14 @@ public abstract class Injectable {
*/
public abstract Object getValue(RuntimeContext runtimeContext) throws IOException;
+ @Override
+ public String toString() {
+ StringBuilder builder = new StringBuilder();
+ builder.append("Injectable [paramType=").append(paramType).append(", type=").append(type)
+ .append(", genericType=").append(genericType).append(", member=").append(member).append(", annotations=")
+ .append(Arrays.toString(annotations)).append("]");
+ return builder.toString();
+ }
+
+
}
Modified: incubator/wink/trunk/wink-common/src/main/resources/org/apache/wink/common/internal/i18n/resource.properties
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-common/src/main/resources/org/apache/wink/common/internal/i18n/resource.properties?rev=1166899&r1=1166898&r2=1166899&view=diff
==============================================================================
--- incubator/wink/trunk/wink-common/src/main/resources/org/apache/wink/common/internal/i18n/resource.properties (original)
+++ incubator/wink/trunk/wink-common/src/main/resources/org/apache/wink/common/internal/i18n/resource.properties Thu Sep 8 20:53:59 2011
@@ -95,7 +95,10 @@ unhandledExceptionToContainer=An unhandl
exceptionOccurredDuringInvocation=The following error occurred during the invocation of the handlers chain: {0} with message ''{1}'' while processing {2} request sent to {3}
# Contexts
-uriBadBaseURI=The following base URI syntax is not valid: {0}
+uriBadBaseURI=The following base URI syntax is not valid: {0}
+illegalAcceptHeader=Illegal Accept request header: {0}
+
+conversionError=Error converting parameter {0} with value {1}
# Error Flow
exceptionOccurredDuringExceptionMapper=An exception occurred while processing the toResponse method of the {0} ExceptionMapper.
Modified: incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/contexts/HttpHeadersImpl.java
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/contexts/HttpHeadersImpl.java?rev=1166899&r1=1166898&r2=1166899&view=diff
==============================================================================
--- incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/contexts/HttpHeadersImpl.java (original)
+++ incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/contexts/HttpHeadersImpl.java Thu Sep 8 20:53:59 2011
@@ -37,6 +37,7 @@ import javax.ws.rs.core.Cookie;
import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.Response.Status;
import org.apache.wink.common.RestConstants;
import org.apache.wink.common.internal.CaseInsensitiveMultivaluedMap;
@@ -152,8 +153,8 @@ public class HttpHeadersImpl implements
logger.trace("getAcceptHeader() returns {}", acceptHeader); //$NON-NLS-1$
return acceptHeader;
} catch (IllegalArgumentException e) {
- logger.trace("Illegal Accept request header: {}", e); //$NON-NLS-1$
- throw new WebApplicationException(e, 400);
+ logger.error(Messages.getMessage("illegalAcceptHeader", acceptValue), e);
+ throw new WebApplicationException(e, Status.BAD_REQUEST);
}
}
Modified: incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/registry/ServerInjectableFactory.java
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/registry/ServerInjectableFactory.java?rev=1166899&r1=1166898&r2=1166899&view=diff
==============================================================================
--- incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/registry/ServerInjectableFactory.java (original)
+++ incubator/wink/trunk/wink-server/src/main/java/org/apache/wink/server/internal/registry/ServerInjectableFactory.java Thu Sep 8 20:53:59 2011
@@ -48,6 +48,7 @@ import javax.ws.rs.ext.Providers;
import org.apache.wink.common.RuntimeContext;
import org.apache.wink.common.internal.PathSegmentImpl;
+import org.apache.wink.common.internal.i18n.Messages;
import org.apache.wink.common.internal.registry.BoundInjectable;
import org.apache.wink.common.internal.registry.ContextAccessor;
import org.apache.wink.common.internal.registry.Injectable;
@@ -60,8 +61,12 @@ import org.apache.wink.common.internal.u
import org.apache.wink.common.utils.ProviderUtils;
import org.apache.wink.common.utils.ProviderUtils.PROVIDER_EXCEPTION_ORIGINATOR;
import org.apache.wink.server.internal.handlers.SearchResult;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class ServerInjectableFactory extends InjectableFactory {
+
+ private final static Logger logger = LoggerFactory.getLogger(ServerInjectableFactory.class);
@Override
public Injectable createContextParam(Class<?> classType, Annotation[] annotations, Member member) {
@@ -403,6 +408,7 @@ public class ServerInjectableFactory ext
// http://jcp.org/aboutJava/communityprocess/maintenance/jsr311/311ChangeLog.html:
// "400 status code should be returned if an exception is
// raised during @FormParam-annotated parameter construction"
+ logger.error(Messages.getMessage("conversionError", this, values), e);
throw new WebApplicationException(e.getCause(), Response.Status.BAD_REQUEST);
}
}
@@ -543,6 +549,7 @@ public class ServerInjectableFactory ext
try {
return getConvertor().convert(values);
} catch (ConversionException e) {
+ logger.error(Messages.getMessage("conversionError", this, values), e);
throw new WebApplicationException(e.getCause(), Response.Status.BAD_REQUEST);
}
}
@@ -598,6 +605,7 @@ public class ServerInjectableFactory ext
try {
return getConvertor().convert(value);
} catch (ConversionException e) {
+ logger.error(Messages.getMessage("conversionError", this, value), e);
throw new WebApplicationException(e.getCause(), Response.Status.BAD_REQUEST);
}
}