[jboss-jira] [JBoss JIRA] Closed: (JBREM-621) http transport should behave more like other transports.

Ron Sigal (JIRA) jira-events at jboss.com
Sun Oct 29 15:38:41 EST 2006


     [ http://jira.jboss.com/jira/browse/JBREM-621?page=all ]

Ron Sigal closed JBREM-621.
---------------------------

    Resolution: Done

Added change to CoyoteInvoker so that it checks if incoming payload is wrapped in an InvocationRequest.  If not, then, even if it is communicating with HTTPClientInvoker, it will not wrap the response in an InvocationResponse.

Unit tests:  org.jboss.test.remoting.transport.http.raw.HTTPInvokerTestCase verifies that the http transport works in both raw and non-raw mode.

> http transport should behave more like other transports.
> --------------------------------------------------------
>
>                 Key: JBREM-621
>                 URL: http://jira.jboss.com/jira/browse/JBREM-621
>             Project: JBoss Remoting
>          Issue Type: Task
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 2.2.0.Beta1 (Bluto)
>            Reporter: Ron Sigal
>         Assigned To: Ron Sigal
>             Fix For: 2.2.0.Beta1 (Bluto)
>
>
> The http transport makes special allowances for the possibility that HTTPClientInvoker might be connected to a server other than CoyoteInvoker and CoyoteInvoker might be connected to a client other than HTTPClientInvoker.  However, it is possible for CoyoteInvoker to detect that its client is HTTPClientInvoker because HTTPClientInvoker sets a request property with key "User-Agent: and value beginning with the String  "JBossRemoting".
> Some work toward this goal has already been committed in connection with JIRA issue JBREM-601.  
> 1. If the return is null, CoyoteInvoker will return a response code of 200 instead of 204 if its client is HTTPClientInvoker.  This is because returning 204 causes the client side response to return an empty input stream, which causes a problem for ObjectInputStream.
> 2. If its client is HTTPClientInvoker, CoyoteInvoker will wrap its response in an InvocationResponse.
> Currently, however, CoyoteInvoker does not treat raw invocations properly.  In particular, if Client.RAW with value of true appears in the InvocationRequest metadata map, the raw payload is sent to the server, but, if it sees that its client is HTTPClientInvoker, CoyoteInvoker will still wrap its response in an InvocationResponse.  The socket transport, on the other hand, will return the raw response in this case. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list