You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm currently experiencing an issue when using JAX-RS with Restlet v2.3 under a Google App Engine instance (v1.9.17), when a POST web service exposing an enumas a parameter is being declared. The Restlet unmarshalling process which seem to be coupled with Jackson prints a
INFO] com.fasterxml.jackson.core.JsonParseException: Unexpected character ('L' (code 76)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
[INFO] at [Source: java.io.ByteArrayInputStream@74eb350; line: 1, column: 2]
[INFO] at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1369)
[INFO] at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:532)
[INFO] at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:453)
[INFO] at com.fasterxml.jackson.core.json.UTF8StreamJsonParser._handleUnexpectedValue(UTF8StreamJsonParser.java:2278)
[INFO] at com.fasterxml.jackson.core.json.UTF8StreamJsonParser._nextTokenNotInObject(UTF8StreamJsonParser.java:779)
[INFO] at com.fasterxml.jackson.core.json.UTF8StreamJsonParser.nextToken(UTF8StreamJsonParser.java:665)
[INFO] at com.fasterxml.jackson.databind.ObjectReader._initForReading(ObjectReader.java:1293)
[INFO] at com.fasterxml.jackson.databind.ObjectReader._bindAndClose(ObjectReader.java:1199)
[INFO] at com.fasterxml.jackson.databind.ObjectReader.readValue(ObjectReader.java:798)
[INFO] at org.restlet.ext.jackson.JacksonRepresentation.getObject(JacksonRepresentation.java:309)
[INFO] at org.restlet.ext.jackson.JacksonConverter.toObject(JacksonConverter.java:217)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.params.ParameterList$AbstractParamGetter.convertWithConverterUtils(ParameterList.java:300)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.params.ParameterList$AbstractParamGetter.convertParamValueInner(ParameterList.java:227)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.params.ParameterList$AbstractParamGetter.convertParamValue(ParameterList.java:209)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.params.ParameterList$AbstractParamGetter.convertParamValue(ParameterList.java:176)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.params.ParameterList$FormOrQueryParamGetter.getParamValue(ParameterList.java:571)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.params.ParameterList$QueryParamGetter.getParamValue(ParameterList.java:817)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.params.ParameterList$AbstractParamGetter.getValue(ParameterList.java:451)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.params.ParameterList.get(ParameterList.java:1138)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.AbstractMethodWrapper.internalInvoke(AbstractMethodWrapper.java:169)
[INFO] at org.restlet.ext.jaxrs.internal.wrappers.ResourceMethod.invoke(ResourceMethod.java:292)
[INFO] at org.restlet.ext.jaxrs.JaxRsRestlet.invokeMethod(JaxRsRestlet.java:1005)
[INFO] at org.restlet.ext.jaxrs.JaxRsRestlet.handle(JaxRsRestlet.java:754)
[INFO] at org.restlet.routing.Filter.doHandle(Filter.java:159)
[INFO] at org.restlet.routing.Filter.handle(Filter.java:206)
[INFO] at org.restlet.routing.Filter.doHandle(Filter.java:159)
[INFO] at org.restlet.routing.Filter.handle(Filter.java:206)
[INFO] at org.restlet.routing.Filter.doHandle(Filter.java:159)
[INFO] at org.restlet.engine.application.StatusFilter.doHandle(StatusFilter.java:155)
[INFO] at org.restlet.routing.Filter.handle(Filter.java:206)
[INFO] at org.restlet.routing.Filter.doHandle(Filter.java:159)
[INFO] at org.restlet.routing.Filter.handle(Filter.java:206)
[INFO] at org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:211)
[INFO] at org.restlet.engine.application.ApplicationHelper.handle(ApplicationHelper.java:84)
[INFO] at org.restlet.Application.handle(Application.java:379)
[INFO] at org.restlet.routing.Filter.doHandle(Filter.java:159)
[INFO] at org.restlet.routing.Filter.handle(Filter.java:206)
[INFO] at org.restlet.routing.Router.doHandle(Router.java:431)
[INFO] at org.restlet.routing.Router.handle(Router.java:648)
[INFO] at org.restlet.routing.Filter.doHandle(Filter.java:159)
[INFO] at org.restlet.routing.Filter.handle(Filter.java:206)
[INFO] at org.restlet.routing.Router.doHandle(Router.java:431)
[INFO] at org.restlet.routing.Router.handle(Router.java:648)
[INFO] at org.restlet.routing.Filter.doHandle(Filter.java:159)
[INFO] at org.restlet.routing.Filter.handle(Filter.java:206)
[INFO] at org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:211)
[INFO] at org.restlet.Component.handle(Component.java:401)
[INFO] at org.restlet.Server.handle(Server.java:516)
[INFO] at org.restlet.engine.connector.ServerHelper.handle(ServerHelper.java:72)
[INFO] at org.restlet.engine.adapter.HttpServerHelper.handle(HttpServerHelper.java:152)
[INFO] at org.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:1118)
[INFO] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
[INFO] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
[INFO] at com.smartnsoft.imageservice.ProvisioningFilter.doFilter(ProvisioningFilter.java:38)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:127)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
[INFO] at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
[INFO] at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
[INFO] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
[INFO] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
[INFO] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
[INFO] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
[INFO] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
[INFO] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
[INFO] at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
[INFO] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
[INFO] at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:491)
[INFO] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
[INFO] at org.mortbay.jetty.Server.handle(Server.java:326)
[INFO] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
[INFO] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
[INFO] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
[INFO] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
[INFO] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
[INFO] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
[INFO] at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
I have taken a look at the code, and have detected the following snippet in file restlet-framework-java/modules/org.restlet.ext.jaxrs/src/org/restlet/ext/jaxrs/internal/wrappers/params/ParameterList.java, line 300:
} catch (Exception exception) {
// -- don't worry about it...proceed with reflective calls
exception.printStackTrace();
}
My understanding is that no log should be output, because the caught exception seems to be part of the regular process. Currently, this exception is printed out on every web service invocation.
Could you please take a look at this weird exception stack trace printing, please? And confirm that it is abnormal, and discard it, please?
Thank you for your help and support.
The text was updated successfully, but these errors were encountered:
Hello @edouardmercier , I see the exception trace, and the printStackTrace which must be removed I think. As I don't really reproduce the same behaviour, I would like to know if you can send me some sample code (juste the signature of the annotated method you invoke, and some details about the request).
Best regards.
Hi @edouardmercier, thanks for the input, I've removed the useless calls.
I'm still unable to reproduce exactly your issue, but I'm not sure this is quite important.
I've tried your code with a POST request with a wrong value for the "status" parameter.
@thboileau: thank you. I've integrated the v2.3.1, and no more exception is being logged. My opinion is that the ticket may be closed, as far as I am concerned.
Hello.
I'm currently experiencing an issue when using JAX-RS with Restlet v2.3 under a Google App Engine instance (v1.9.17), when a POST web service exposing an
enum
as a parameter is being declared. The Restlet unmarshalling process which seem to be coupled with Jackson prints aI have taken a look at the code, and have detected the following snippet in file
restlet-framework-java/modules/org.restlet.ext.jaxrs/src/org/restlet/ext/jaxrs/internal/wrappers/params/ParameterList.java
, line 300:My understanding is that no log should be output, because the caught exception seems to be part of the regular process. Currently, this exception is printed out on every web service invocation.
Could you please take a look at this weird exception stack trace printing, please? And confirm that it is abnormal, and discard it, please?
Thank you for your help and support.
The text was updated successfully, but these errors were encountered: