Christopher Schultz wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Aryeh,
>
> On 3/2/2010 3:48 PM, Aryeh M. Friedman wrote:
>
>> Christopher Schultz wrote:
>>
>>
>>> Is this a new client, or just a new data format? Mark's suggestion that
>>> you may be using POST without the proper Content-Type would result in
>>> getting null for this parameter (because Tomcat will not parse it for
>>> you). If this is the case, you should either fix the new client to use
>>> the proper Content-Type, or fall-back to reading and parsing the request
>>> body manually when these requirements are not met.
>>>
>>>
>> New format same frontend client code which does use the proper content
>> type. (the content type is defined at a lower level then the format and
>> that code has not changed [using firebug on firefox confirms that fact])
>>
>
> Hmm.
>
> So, POST + application/x-www-form-urlencoded yields a null parameter
> with your new payload?
>
> I know this sounds silly, but we're getting down to the
> grasping-at-straws level, here, so bear with me: have you checked to see
> that your request body is actually in the correct format (that is,
> urlencoded, etc.)? I haven't looked at the Tomcat code, but Tomcat might
> give up if the request body is not parsable.
>
> Have you tried calling request.getInputStream and dumping the request
> body when the parameter is null? That might give you some indication of
> what's happening.
>
> - -chris
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (MingW32)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iEYEARECAAYFAkuNe+AACgkQ9CaO5/Lv0PArcwCdHf9ddwqWTKkoYb0jA9BHDs+/
> LUoAnj6gNWY5mdPoCAxmgfKceWxSBy6r
> =wn5q
> -----END PGP SIGNATURE-----
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
>
Also forgot to mention I already refactored the servlet to use pure hex
encoding (namely we convert the entire request into a hex string so for
example a old format message of "call=default.Session.getSession()" gets
translated into
"63616c6c3d64656661756c742e53657373696f6e2e67657453657373696f6e2829"
which the servlet then decodes and then does it own parsing (in both
formats the "call" param [our does it all param] has roughly the format
above [i.e. a psedo method call like format])... by new format I only
mean we got a query string that exceeds 1k for the first time
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
|