[ 
https://issues.apache.org/jira/browse/WINK-73?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12730058#action_12730058
 ] 

Nadav Fischer commented on WINK-73:
-----------------------------------

It seems that we have no choice but to implement it as Bryant suggested, but I 
really really really hate that we have to have special handling for a weird 
requirement of the SRV spec. I mean, I can't see the benefit of being able to 
use with the include() method only the original request or wrappers of the 
original request (and response). It's so very easy to fool the validation 
process to think that we're using the original request and response, so what's 
the point?

Anyway, the patch looks excellent, though I'm not sure we need the {{"if 
(contextClass.isInterface() == false)"}} or the proxy creation stuff in 
ServletContextAccessor.

I think it's sufficient to have the {{"if (runtimeContext != null)"}} bit and 
the HttpServletRequest and HttpServletResponse stuff because the 
ServerContextParam class guarantees that we will use the ServletContextAccessor 
class only if the injectable parameters are HttpServletRequest/Response.

> Cannot run QADefect example on Geronimo-tomcat6
> -----------------------------------------------
>
>                 Key: WINK-73
>                 URL: https://issues.apache.org/jira/browse/WINK-73
>             Project: Wink
>          Issue Type: Bug
>          Components: Examples
>         Environment: OS name: "windows xp" version: "5.1"
> Java version: 1.5.0_12
> geronimo-tomcat6-javaee5-2.1.4
> Apache Ant version 1.7.0
>            Reporter: Shiva Kumar H R
>         Attachments: WINK-73.patch
>
>
> I downloaded wink-dist-0.1-SNAPSHOT.zip from 
> http://hudson.zones.apache.org/hudson/view/Wink/job/Wink-Trunk-JDK15/lastBuild/org.apache.wink$wink-dist/artifact/org.apache.wink/wink-dist/0.1-SNAPSHOT/
>  , and then built "examples\apps\QADefect" sample using "ant dist" command.
> I then deployed the built "QADefect.war" using Geronimo Admin Console. Deploy 
> is successful. However when I run http://localhost:8080/QADefect/rest/defects 
> it throws the following error:
> HTTP Status 500
> description: The server encountered an internal error () that prevented it 
> from fulfilling this request.
> Below is the error reported in Geronimo server's command console:
> WebApplicationException (500 - Internal Server Error) occured during the 
> handlers chain invocation
> javax.ws.rs.WebApplicationException: javax.servlet.ServletException: Original 
> SevletRequest or wrapped original ServletRequest not passed to 
> RequestDispatcher in violation of SRV.8.2 and SRV.14.2.5.1
>       at 
> org.apache.wink.server.internal.providers.entity.html.HtmlProvider.include(HtmlProvider.java:81)
>       at 
> org.apache.wink.server.internal.providers.entity.html.HtmlProvider.writeTo(HtmlProvider.java:106)
>       at 
> org.apache.wink.server.internal.providers.entity.html.HtmlProvider.writeTo(HtmlProvider.java:46)
>       at 
> org.apache.wink.server.internal.providers.entity.html.HtmlSyndFeedProvider.writeTo(HtmlSyndFeedProvider.java:63)
>       at 
> org.apache.wink.server.internal.providers.entity.html.HtmlSyndFeedProvider.writeTo(HtmlSyndFeedProvider.java:39)
>       at 
> org.apache.wink.common.internal.providers.entity.AssetProvider.writeTo(AssetProvider.java:97)
>       at 
> org.apache.wink.server.internal.handlers.FlushResultHandler.handleResponse(FlushResultHandler.java:149)
>       at 
> org.apache.wink.server.handlers.AbstractHandler.handleResponse(AbstractHandler.java:37)
>       at 
> org.apache.wink.server.handlers.ResponseHandlersChain.handle(ResponseHandlersChain.java:26)
>       at 
> org.apache.wink.server.handlers.ResponseHandlersChain.handle(ResponseHandlersChain.java:22)
>       at 
> org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:56)
>       at 
> org.apache.wink.server.handlers.AbstractHandler.handleResponse(AbstractHandler.java:38)
>       at 
> org.apache.wink.server.handlers.ResponseHandlersChain.handle(ResponseHandlersChain.java:26)
>       at 
> org.apache.wink.server.handlers.ResponseHandlersChain.handle(ResponseHandlersChain.java:22)
>       at 
> org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:56)
>       at 
> org.apache.wink.server.handlers.AbstractHandler.handleResponse(AbstractHandler.java:38)
>       at 
> org.apache.wink.server.handlers.ResponseHandlersChain.handle(ResponseHandlersChain.java:26)
>       at 
> org.apache.wink.server.handlers.ResponseHandlersChain.handle(ResponseHandlersChain.java:22)
>       at 
> org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:56)
>       at 
> org.apache.wink.server.handlers.AbstractHandlersChain.run(AbstractHandlersChain.java:44)
>       at 
> org.apache.wink.server.internal.RequestProcessor.handleRequestWithoutFaultBarrier(RequestProcessor.java:131)
>       at 
> org.apache.wink.server.internal.RequestProcessor.handleRequest(RequestProcessor.java:110)
>       at 
> org.apache.wink.server.internal.servlet.RestServlet.service(RestServlet.java:98)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>       at 
> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
>       at 
> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:406)
>       at 
> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>       at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
>       at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>       at 
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>       at java.lang.Thread.run(Thread.java:595)
> Caused by: javax.servlet.ServletException: Original SevletRequest or wrapped 
> original ServletRequest not passed to RequestDispatcher in violation of 
> SRV.8.2 and SRV.14.2.5.1
>       at 
> org.apache.catalina.core.ApplicationDispatcher.checkSameObjects(ApplicationDispatcher.java:941)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:484)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
>       at 
> org.apache.wink.server.internal.providers.entity.html.HtmlProvider.include(HtmlProvider.java:78)
>       ... 39 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to