You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Sean Dawson <se...@gmail.com> on 2015/02/20 22:10:37 UTC

undefined method

We have a GWT app deployed to tomcat (7_59) and fairly often when we send a
bunch of request quickly we're seeing undefined methods in the logs - and
the calls fail, causing issues with our app.  We make calls via RestyGwt
(latest version) but GwtRequests all show this - both though after a number
of REST calls in a short period of time.  So for example...

[ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1 HTTP/1.1" 200 304
[ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2 HTTP/1.1" 200 310
[ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path3 HTTP/1.1" 200 307
[ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path4
HTTP/1.1" 501 304
[ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path5 HTTP/1.1" 200 304
[ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path6 HTTP/1.1" 200 310
[ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path7 HTTP/1.1" 200 307
[ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path8
HTTP/1.1" 501 304

Similarly...

...
.... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136

Very little info online, but did come across this old bug...

https://bz.apache.org/bugzilla/show_bug.cgi?id=49779

In fiddler, the headers are identical between the requests that work and
those that fail.  Resending the failed request completes normally.

So far we've only be able to reproduce this when using Internet Explorer
(10 & 11) and we've spent a lot of time trying to figure out what's going
on - but have been unable.  Any pointers/explanations?

Thanks!

Re: undefined method

Posted by Sean Dawson <se...@gmail.com>.
Thanks for the additional suggestions! Will try those on Monday.


On Sat, Feb 21, 2015 at 3:26 PM, Christopher Schultz <
chris@christopherschultz.net> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> Sean,
>
> On 2/20/15 5:00 PM, Sean Dawson wrote:
> > On Fri, Feb 20, 2015 at 4:41 PM, Konstantin Kolinko
> > <kn...@gmail.com> wrote:
> >
> >> 2015-02-21 0:10 GMT+03:00 Sean Dawson
> >> <se...@gmail.com>:
> >>> We have a GWT app deployed to tomcat (7_59) and fairly often
> >>> when we
> >> send a
> >>> bunch of request quickly we're seeing undefined methods in the
> >>> logs - and the calls fail, causing issues with our app.  We
> >>> make calls via RestyGwt (latest version) but GwtRequests all
> >>> show this - both though after a
> >> number
> >>> of REST calls in a short period of time.  So for example...
> >>>
> >>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1
> >>> HTTP/1.1" 200
> >> 304
> >>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2
> >>> HTTP/1.1" 200
> >> 310
> >>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path3
> >>> HTTP/1.1" 200
> >> 307
> >>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE
> >>> /path4 HTTP/1.1" 501 304 [ip-addr] - - [20/Feb/2015:15:24:34
> >>> -0500] "DELETE /path5 HTTP/1.1" 200
> >> 304
> >>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path6
> >>> HTTP/1.1" 200
> >> 310
> >>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path7
> >>> HTTP/1.1" 200
> >> 307
> >>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE
> >>> /path8 HTTP/1.1" 501 304
> >>>
> >>> Similarly...
> >>>
> >>> ... .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
> >>>
> >>> Very little info online, but did come across this old bug...
> >>>
> >>> https://bz.apache.org/bugzilla/show_bug.cgi?id=49779
> >>>
> >>> In fiddler, the headers are identical between the requests that
> >>> work and those that fail.  Resending the failed request
> >>> completes normally.
> >>>
> >>> So far we've only be able to reproduce this when using Internet
> >>> Explorer (10 & 11) and we've spent a lot of time trying to
> >>> figure out what's going on - but have been unable.  Any
> >>> pointers/explanations?
> >>>
> >>> Thanks!
> >>
> >> "undefined" is a JavaScript word.  In Java I would expect "null"
> >> instead of that word.
> >>
> >>> In fiddler, the headers are identical between the requests that
> >>> work and those that fail.
> >>
> >> The string in access log is not a header.  It is HTTP request
> >> line. The first line of an HTTP request.
> >>
> >>
> > Ok, but this is in the standard tomcat access logs, using standard
> > logging, and is in the method name, not URL.  Maybe I'm not
> > understanding what you're saying here.
> >
> >
> >> BTW, a similar issue at stackoverflow (but the "undefined" string
> >> was added to URL part of request line):
> >>
> >>
> >>
> http://stackoverflow.com/questions/11017609/undefined-randomly-appended-in-1-of-requested-urls-on-my-website-since-12-jun
> >>
> >>
> Title: “undefined” randomly appended in 1% of requested urls on my
> >> website since 12 june 2012
> >>
> >>
> > We did come across it but again our's is in the method, not in the
> > URL.
> >
> >
> >>
> >> One of theories there is that some browser addon was
> >> malfunctioning.
> >>
> >>
> > Ok, this has happened on about 5 people's machines with a couple
> > different versions of IE - I don't think we have any addons at all
> > in some cases.
> >
> >
> >> If nothing else helps, it should be easy to implement a Valve
> >> for Tomcat that will fix the wrong request.getMethod() value
> >> before passing it to a web application.
> >>
> >>
> > I don't know much about that but we could give it a try - so....
> > someone else is changing the method somewhere before it gets to
> > tomcat? and the Valve will change it back?
>
> Fiddler isn't the authority when it comes to what is going across the
> wire. It's possible that something is happening after Fiddler takes
> its samples.
>
> Are you able to hook-up something like Wireshark or other
> packet-capturing software to see what actually goes over the wire?
>
> - -chris
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1
> Comment: GPGTools - http://gpgtools.org
>
> iQIcBAEBCAAGBQJU6On7AAoJEBzwKT+lPKRY8vEQAJiupeJotnZVWXFeL5wbwAfw
> 5nDiXz1wu6IcY0FNingOx/cgorIxJP1Ti6qNY06gXfEG/sJ+Fk1MNn4bbtxoPv5P
> nRpMjSC1jloxmMK+Y6RKTt5815yCAiggd/mJONzK6NN+vfG6hg4C0l9GnCnuuMte
> 9mDUkkqogkn2EGYJQua3JiCoQT+qAJbOA+zxRJJcLHB+GzSQLHT48KYAmJQVRWH2
> CRtFXQxPtuE0QVaMCWJQcSKqFuJ2y9ZiP77E2DJfo644/4VP2sDk2rIk3MtJCT3F
> gfLWbMMFcV27QTXQvH3uYXhdEfrVhTUGxurio95gVD6y0g7F4pMYeJAcvTnYVV8Y
> C9OhHLJrn4NXJ34D7XIzefTaVc8kcp/oVKe7irLK9IapIIqdX+H0P3uHuFCPFEPg
> aKSNVJ80jD72/yjUAiULgagjOJ7k4b9WhnsrZJFCRydT5yCcK7w3UrNdIDgQSltp
> TjfJTfCitCzb6/pXMnT+DE7PyPQyeIviU+7rCs89xBNHAoFyYJ+agJOu6CE/hMhg
> LT672uLvkt4XD2eLE5yUYOHY7KkIKV6WfYPtyyamnoy9vpCPLTxlH6ZyRg+xt17D
> zP201nRf4Hyay6x7vi+cB4SZ1f5nUS8eV5hPrDZmLiIksdSqzkZFD/a5/JMsa07C
> esM43RAOa8/LxmJCiyqz
> =gMzK
> -----END PGP SIGNATURE-----
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Re: undefined method

Posted by Christopher Schultz <ch...@christopherschultz.net>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Sean,

On 2/20/15 5:00 PM, Sean Dawson wrote:
> On Fri, Feb 20, 2015 at 4:41 PM, Konstantin Kolinko
> <kn...@gmail.com> wrote:
> 
>> 2015-02-21 0:10 GMT+03:00 Sean Dawson
>> <se...@gmail.com>:
>>> We have a GWT app deployed to tomcat (7_59) and fairly often
>>> when we
>> send a
>>> bunch of request quickly we're seeing undefined methods in the
>>> logs - and the calls fail, causing issues with our app.  We
>>> make calls via RestyGwt (latest version) but GwtRequests all
>>> show this - both though after a
>> number
>>> of REST calls in a short period of time.  So for example...
>>> 
>>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1
>>> HTTP/1.1" 200
>> 304
>>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2
>>> HTTP/1.1" 200
>> 310
>>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path3
>>> HTTP/1.1" 200
>> 307
>>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE
>>> /path4 HTTP/1.1" 501 304 [ip-addr] - - [20/Feb/2015:15:24:34
>>> -0500] "DELETE /path5 HTTP/1.1" 200
>> 304
>>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path6
>>> HTTP/1.1" 200
>> 310
>>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path7
>>> HTTP/1.1" 200
>> 307
>>> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE
>>> /path8 HTTP/1.1" 501 304
>>> 
>>> Similarly...
>>> 
>>> ... .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
>>> 
>>> Very little info online, but did come across this old bug...
>>> 
>>> https://bz.apache.org/bugzilla/show_bug.cgi?id=49779
>>> 
>>> In fiddler, the headers are identical between the requests that
>>> work and those that fail.  Resending the failed request
>>> completes normally.
>>> 
>>> So far we've only be able to reproduce this when using Internet
>>> Explorer (10 & 11) and we've spent a lot of time trying to
>>> figure out what's going on - but have been unable.  Any
>>> pointers/explanations?
>>> 
>>> Thanks!
>> 
>> "undefined" is a JavaScript word.  In Java I would expect "null" 
>> instead of that word.
>> 
>>> In fiddler, the headers are identical between the requests that
>>> work and those that fail.
>> 
>> The string in access log is not a header.  It is HTTP request
>> line. The first line of an HTTP request.
>> 
>> 
> Ok, but this is in the standard tomcat access logs, using standard
> logging, and is in the method name, not URL.  Maybe I'm not
> understanding what you're saying here.
> 
> 
>> BTW, a similar issue at stackoverflow (but the "undefined" string
>> was added to URL part of request line):
>> 
>> 
>> http://stackoverflow.com/questions/11017609/undefined-randomly-appended-in-1-of-requested-urls-on-my-website-since-12-jun
>>
>> 
Title: “undefined” randomly appended in 1% of requested urls on my
>> website since 12 june 2012
>> 
>> 
> We did come across it but again our's is in the method, not in the
> URL.
> 
> 
>> 
>> One of theories there is that some browser addon was
>> malfunctioning.
>> 
>> 
> Ok, this has happened on about 5 people's machines with a couple
> different versions of IE - I don't think we have any addons at all
> in some cases.
> 
> 
>> If nothing else helps, it should be easy to implement a Valve
>> for Tomcat that will fix the wrong request.getMethod() value
>> before passing it to a web application.
>> 
>> 
> I don't know much about that but we could give it a try - so....
> someone else is changing the method somewhere before it gets to
> tomcat? and the Valve will change it back?

Fiddler isn't the authority when it comes to what is going across the
wire. It's possible that something is happening after Fiddler takes
its samples.

Are you able to hook-up something like Wireshark or other
packet-capturing software to see what actually goes over the wire?

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org

iQIcBAEBCAAGBQJU6On7AAoJEBzwKT+lPKRY8vEQAJiupeJotnZVWXFeL5wbwAfw
5nDiXz1wu6IcY0FNingOx/cgorIxJP1Ti6qNY06gXfEG/sJ+Fk1MNn4bbtxoPv5P
nRpMjSC1jloxmMK+Y6RKTt5815yCAiggd/mJONzK6NN+vfG6hg4C0l9GnCnuuMte
9mDUkkqogkn2EGYJQua3JiCoQT+qAJbOA+zxRJJcLHB+GzSQLHT48KYAmJQVRWH2
CRtFXQxPtuE0QVaMCWJQcSKqFuJ2y9ZiP77E2DJfo644/4VP2sDk2rIk3MtJCT3F
gfLWbMMFcV27QTXQvH3uYXhdEfrVhTUGxurio95gVD6y0g7F4pMYeJAcvTnYVV8Y
C9OhHLJrn4NXJ34D7XIzefTaVc8kcp/oVKe7irLK9IapIIqdX+H0P3uHuFCPFEPg
aKSNVJ80jD72/yjUAiULgagjOJ7k4b9WhnsrZJFCRydT5yCcK7w3UrNdIDgQSltp
TjfJTfCitCzb6/pXMnT+DE7PyPQyeIviU+7rCs89xBNHAoFyYJ+agJOu6CE/hMhg
LT672uLvkt4XD2eLE5yUYOHY7KkIKV6WfYPtyyamnoy9vpCPLTxlH6ZyRg+xt17D
zP201nRf4Hyay6x7vi+cB4SZ1f5nUS8eV5hPrDZmLiIksdSqzkZFD/a5/JMsa07C
esM43RAOa8/LxmJCiyqz
=gMzK
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: undefined method

Posted by Yogesh Rao <yo...@gmail.com>.
Hello Sean,

If all the requests are originating from one browser then try running http
watch or any other browser plugin of your preference to check the status
codes for your request...

Also another handy tool is nettool to sniff the requests..

Good luck!

Regards,
-Yogesh

On Saturday, February 21, 2015, Sean Dawson <se...@gmail.com>
wrote:

> Ok thanks for the replies.  It's weird that everything works fine except in
> the case that there are a bunch of requests in a short period and that's
> the only time we see this issue - if we debug, slow it down, etc - no
> problem.  Feels to me like a threading issue - but that can't be the case
> on the (browser/js) client.
>
> We may also try with jboss to see if it reproduces there - probably won't
> get to that before Monday though.
>
> I have no idea who would be adding the undefined - maybe RestyGwt?
>
>
> On Fri, Feb 20, 2015 at 5:44 PM, Konstantin Kolinko <
> knst.kolinko@gmail.com <javascript:;>>
> wrote:
>
> > 2015-02-21 1:00 GMT+03:00 Sean Dawson <seandawson2015@gmail.com
> <javascript:;>>:
> > > On Fri, Feb 20, 2015 at 4:41 PM, Konstantin Kolinko <
> > knst.kolinko@gmail.com <javascript:;>>
> > > wrote:
> > >
> > >> 2015-02-21 0:10 GMT+03:00 Sean Dawson <seandawson2015@gmail.com
> <javascript:;>>:
> > >> >
> > >> > ...
> > >> > .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
> > >> >
> > >> > <...>
> > >>
> > >> > In fiddler, the headers are identical between the requests that work
> > and
> > >> > those that fail.
> > >>
> > >> The string in access log is not a header.  It is HTTP request line.
> > >> The first line of an HTTP request.
> > >>
> > >>
> > > Ok, but this is in the standard tomcat access logs, using standard
> > logging,
> > > and is in the method name, not URL.  Maybe I'm not understanding what
> > > you're saying here.
> >
> > I mean that your phrase "the headers are identical" is irrelevant.
> > The broken value is not in a header, but in the request line of an
> > HTTP request.
> >
> > HTTP request  = request line + CRLF  + headers + CRLF CRLF + body
> >
> >
> > >
> > >> BTW, a similar issue at stackoverflow (but the "undefined" string was
> > >> added to URL part of request line):
> > >>
> > >>
> > >>
> >
> http://stackoverflow.com/questions/11017609/undefined-randomly-appended-in-1-of-requested-urls-on-my-website-since-12-jun
> > >> Title: “undefined” randomly appended in 1% of requested urls on my
> > >> website since 12 june 2012
> > >>
> > >>
> > > We did come across it but again our's is in the method, not in the URL.
> >
> > You are also using strings, concatenation, and javascript.
> >
> > >>
> > >> One of theories there is that some browser addon was malfunctioning.
> > >>
> > >>
> > > Ok, this has happened on about 5 people's machines with a couple
> > different
> > > versions of IE - I don't think we have any addons at all in some cases.
> >
> > Some addons are popular.  Some people do not pay attention when
> > installing 3rd party toolbars bundled with legit software installers.
> >
> > >
> > >> If nothing else helps, it should be easy to implement a Valve for
> > >> Tomcat that will fix the wrong request.getMethod() value before
> > >> passing it to a web application.
> > >>
> > >>
> > > I don't know much about that but we could give it a try - so....
> someone
> > > else is changing the method somewhere before it gets to tomcat? and the
> > > Valve will change it back?
> >
> > Yes.
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> <javascript:;>
> > For additional commands, e-mail: users-help@tomcat.apache.org
> <javascript:;>
> >
> >
>

Re: undefined method

Posted by Sean Dawson <se...@gmail.com>.
Ok thanks for the replies.  It's weird that everything works fine except in
the case that there are a bunch of requests in a short period and that's
the only time we see this issue - if we debug, slow it down, etc - no
problem.  Feels to me like a threading issue - but that can't be the case
on the (browser/js) client.

We may also try with jboss to see if it reproduces there - probably won't
get to that before Monday though.

I have no idea who would be adding the undefined - maybe RestyGwt?


On Fri, Feb 20, 2015 at 5:44 PM, Konstantin Kolinko <kn...@gmail.com>
wrote:

> 2015-02-21 1:00 GMT+03:00 Sean Dawson <se...@gmail.com>:
> > On Fri, Feb 20, 2015 at 4:41 PM, Konstantin Kolinko <
> knst.kolinko@gmail.com>
> > wrote:
> >
> >> 2015-02-21 0:10 GMT+03:00 Sean Dawson <se...@gmail.com>:
> >> >
> >> > ...
> >> > .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
> >> >
> >> > <...>
> >>
> >> > In fiddler, the headers are identical between the requests that work
> and
> >> > those that fail.
> >>
> >> The string in access log is not a header.  It is HTTP request line.
> >> The first line of an HTTP request.
> >>
> >>
> > Ok, but this is in the standard tomcat access logs, using standard
> logging,
> > and is in the method name, not URL.  Maybe I'm not understanding what
> > you're saying here.
>
> I mean that your phrase "the headers are identical" is irrelevant.
> The broken value is not in a header, but in the request line of an
> HTTP request.
>
> HTTP request  = request line + CRLF  + headers + CRLF CRLF + body
>
>
> >
> >> BTW, a similar issue at stackoverflow (but the "undefined" string was
> >> added to URL part of request line):
> >>
> >>
> >>
> http://stackoverflow.com/questions/11017609/undefined-randomly-appended-in-1-of-requested-urls-on-my-website-since-12-jun
> >> Title: “undefined” randomly appended in 1% of requested urls on my
> >> website since 12 june 2012
> >>
> >>
> > We did come across it but again our's is in the method, not in the URL.
>
> You are also using strings, concatenation, and javascript.
>
> >>
> >> One of theories there is that some browser addon was malfunctioning.
> >>
> >>
> > Ok, this has happened on about 5 people's machines with a couple
> different
> > versions of IE - I don't think we have any addons at all in some cases.
>
> Some addons are popular.  Some people do not pay attention when
> installing 3rd party toolbars bundled with legit software installers.
>
> >
> >> If nothing else helps, it should be easy to implement a Valve for
> >> Tomcat that will fix the wrong request.getMethod() value before
> >> passing it to a web application.
> >>
> >>
> > I don't know much about that but we could give it a try - so.... someone
> > else is changing the method somewhere before it gets to tomcat? and the
> > Valve will change it back?
>
> Yes.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Re: undefined method

Posted by Konstantin Kolinko <kn...@gmail.com>.
2015-02-21 1:00 GMT+03:00 Sean Dawson <se...@gmail.com>:
> On Fri, Feb 20, 2015 at 4:41 PM, Konstantin Kolinko <kn...@gmail.com>
> wrote:
>
>> 2015-02-21 0:10 GMT+03:00 Sean Dawson <se...@gmail.com>:
>> >
>> > ...
>> > .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
>> >
>> > <...>
>>
>> > In fiddler, the headers are identical between the requests that work and
>> > those that fail.
>>
>> The string in access log is not a header.  It is HTTP request line.
>> The first line of an HTTP request.
>>
>>
> Ok, but this is in the standard tomcat access logs, using standard logging,
> and is in the method name, not URL.  Maybe I'm not understanding what
> you're saying here.

I mean that your phrase "the headers are identical" is irrelevant.
The broken value is not in a header, but in the request line of an
HTTP request.

HTTP request  = request line + CRLF  + headers + CRLF CRLF + body


>
>> BTW, a similar issue at stackoverflow (but the "undefined" string was
>> added to URL part of request line):
>>
>>
>> http://stackoverflow.com/questions/11017609/undefined-randomly-appended-in-1-of-requested-urls-on-my-website-since-12-jun
>> Title: “undefined” randomly appended in 1% of requested urls on my
>> website since 12 june 2012
>>
>>
> We did come across it but again our's is in the method, not in the URL.

You are also using strings, concatenation, and javascript.

>>
>> One of theories there is that some browser addon was malfunctioning.
>>
>>
> Ok, this has happened on about 5 people's machines with a couple different
> versions of IE - I don't think we have any addons at all in some cases.

Some addons are popular.  Some people do not pay attention when
installing 3rd party toolbars bundled with legit software installers.

>
>> If nothing else helps, it should be easy to implement a Valve for
>> Tomcat that will fix the wrong request.getMethod() value before
>> passing it to a web application.
>>
>>
> I don't know much about that but we could give it a try - so.... someone
> else is changing the method somewhere before it gets to tomcat? and the
> Valve will change it back?

Yes.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: undefined method

Posted by Sean Dawson <se...@gmail.com>.
On Fri, Feb 20, 2015 at 4:41 PM, Konstantin Kolinko <kn...@gmail.com>
wrote:

> 2015-02-21 0:10 GMT+03:00 Sean Dawson <se...@gmail.com>:
> > We have a GWT app deployed to tomcat (7_59) and fairly often when we
> send a
> > bunch of request quickly we're seeing undefined methods in the logs - and
> > the calls fail, causing issues with our app.  We make calls via RestyGwt
> > (latest version) but GwtRequests all show this - both though after a
> number
> > of REST calls in a short period of time.  So for example...
> >
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1 HTTP/1.1" 200
> 304
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2 HTTP/1.1" 200
> 310
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path3 HTTP/1.1" 200
> 307
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path4
> > HTTP/1.1" 501 304
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path5 HTTP/1.1" 200
> 304
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path6 HTTP/1.1" 200
> 310
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path7 HTTP/1.1" 200
> 307
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path8
> > HTTP/1.1" 501 304
> >
> > Similarly...
> >
> > ...
> > .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
> >
> > Very little info online, but did come across this old bug...
> >
> > https://bz.apache.org/bugzilla/show_bug.cgi?id=49779
> >
> > In fiddler, the headers are identical between the requests that work and
> > those that fail.  Resending the failed request completes normally.
> >
> > So far we've only be able to reproduce this when using Internet Explorer
> > (10 & 11) and we've spent a lot of time trying to figure out what's going
> > on - but have been unable.  Any pointers/explanations?
> >
> > Thanks!
>
> "undefined" is a JavaScript word.  In Java I would expect "null"
> instead of that word.
>
> > In fiddler, the headers are identical between the requests that work and
> > those that fail.
>
> The string in access log is not a header.  It is HTTP request line.
> The first line of an HTTP request.
>
>
Ok, but this is in the standard tomcat access logs, using standard logging,
and is in the method name, not URL.  Maybe I'm not understanding what
you're saying here.


> BTW, a similar issue at stackoverflow (but the "undefined" string was
> added to URL part of request line):
>
>
> http://stackoverflow.com/questions/11017609/undefined-randomly-appended-in-1-of-requested-urls-on-my-website-since-12-jun
> Title: “undefined” randomly appended in 1% of requested urls on my
> website since 12 june 2012
>
>
We did come across it but again our's is in the method, not in the URL.


>
> One of theories there is that some browser addon was malfunctioning.
>
>
Ok, this has happened on about 5 people's machines with a couple different
versions of IE - I don't think we have any addons at all in some cases.


> If nothing else helps, it should be easy to implement a Valve for
> Tomcat that will fix the wrong request.getMethod() value before
> passing it to a web application.
>
>
I don't know much about that but we could give it a try - so.... someone
else is changing the method somewhere before it gets to tomcat? and the
Valve will change it back?

Thanks.

Best regards,
> Konstantin Kolinko
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Re: undefined method

Posted by Konstantin Kolinko <kn...@gmail.com>.
2015-02-21 0:10 GMT+03:00 Sean Dawson <se...@gmail.com>:
> We have a GWT app deployed to tomcat (7_59) and fairly often when we send a
> bunch of request quickly we're seeing undefined methods in the logs - and
> the calls fail, causing issues with our app.  We make calls via RestyGwt
> (latest version) but GwtRequests all show this - both though after a number
> of REST calls in a short period of time.  So for example...
>
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1 HTTP/1.1" 200 304
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2 HTTP/1.1" 200 310
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path3 HTTP/1.1" 200 307
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path4
> HTTP/1.1" 501 304
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path5 HTTP/1.1" 200 304
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path6 HTTP/1.1" 200 310
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path7 HTTP/1.1" 200 307
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path8
> HTTP/1.1" 501 304
>
> Similarly...
>
> ...
> .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
>
> Very little info online, but did come across this old bug...
>
> https://bz.apache.org/bugzilla/show_bug.cgi?id=49779
>
> In fiddler, the headers are identical between the requests that work and
> those that fail.  Resending the failed request completes normally.
>
> So far we've only be able to reproduce this when using Internet Explorer
> (10 & 11) and we've spent a lot of time trying to figure out what's going
> on - but have been unable.  Any pointers/explanations?
>
> Thanks!

"undefined" is a JavaScript word.  In Java I would expect "null"
instead of that word.

> In fiddler, the headers are identical between the requests that work and
> those that fail.

The string in access log is not a header.  It is HTTP request line.
The first line of an HTTP request.

BTW, a similar issue at stackoverflow (but the "undefined" string was
added to URL part of request line):

http://stackoverflow.com/questions/11017609/undefined-randomly-appended-in-1-of-requested-urls-on-my-website-since-12-jun
Title: “undefined” randomly appended in 1% of requested urls on my
website since 12 june 2012


One of theories there is that some browser addon was malfunctioning.


If nothing else helps, it should be easy to implement a Valve for
Tomcat that will fix the wrong request.getMethod() value before
passing it to a web application.

Best regards,
Konstantin Kolinko

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: undefined method

Posted by Sean Dawson <se...@gmail.com>.
On Fri, Feb 20, 2015 at 4:24 PM, Christopher Schultz <
chris@christopherschultz.net> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> Sean,
>
> On 2/20/15 4:10 PM, Sean Dawson wrote:
> > We have a GWT app deployed to tomcat (7_59) and fairly often when
> > we send a bunch of request quickly we're seeing undefined methods
> > in the logs - and the calls fail, causing issues with our app.  We
> > make calls via RestyGwt (latest version) but GwtRequests all show
> > this - both though after a number of REST calls in a short period
> > of time.  So for example...
> >
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1 HTTP/1.1"
> > 200 304 [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2
> > HTTP/1.1" 200 310 [ip-addr] - - [20/Feb/2015:15:24:34 -0500]
> > "DELETE /path3 HTTP/1.1" 200 307 [ip-addr] - -
> > [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path4 HTTP/1.1" 501
> > 304 [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path5
> > HTTP/1.1" 200 304 [ip-addr] - - [20/Feb/2015:15:24:34 -0500]
> > "DELETE /path6 HTTP/1.1" 200 310 [ip-addr] - -
> > [20/Feb/2015:15:24:34 -0500] "DELETE /path7 HTTP/1.1" 200 307
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path8
> > HTTP/1.1" 501 304
> >
> > Similarly...
> >
> > ... .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
> >
> > Very little info online, but did come across this old bug...
> >
> > https://bz.apache.org/bugzilla/show_bug.cgi?id=49779
> >
> > In fiddler, the headers are identical between the requests that
> > work and those that fail.  Resending the failed request completes
> > normally.
> >
> > So far we've only be able to reproduce this when using Internet
> > Explorer (10 & 11) and we've spent a lot of time trying to figure
> > out what's going on - but have been unable.  Any
> > pointers/explanations?
>
> Which connector? Can you post the configuration for that?
>
>
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               asyncTimeout="35000" />


> Any reverse proxy (e.g. Apache httpd) involved? If yes, is the above
> from Tomcat's access log or the web server's?
>

No, tomcat logs.


>
> - -chris
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1
> Comment: GPGTools - http://gpgtools.org
>
> iQIcBAEBCAAGBQJU56XyAAoJEBzwKT+lPKRYidsQAKnX6H5IxY1cIW1fN8F0oAH3
> WRux2sUvj2AGJTC1hUcKBSjwboEd+V0JOQOpoYqzPSWpSQkhD3FXgnSFjFZTk3G9
> mgGohyk4o8KUldYnlRnT3RukauV9z+ZdrAEE3rM5ie9r+LnsmcMcY9bwlRm6Ua8+
> E6utVB6raitZNnAm5a+TmJySczvabhlzyv5/ORMTUK0/yALIrIGZ0+e6EQXHRFOB
> /+BY2SENvSlw/qI/hEIIRKLnK270oGavfybjKHu4t+kjKsNdfJHu3arkfsvr2+u9
> z6/Hb+46XRY6YaMLCeEocXecAuVLL6QWndquT/b/kSao5/hWbn6NlFLiQEZGaj0M
> qkrySOhCfURUeyh/QJ2iroyX27VqPRanbqxypEE3hhSy9aRiCQOedMsnjO+8h0Xm
> n7f/VaZJxNYwSn34tghd286X2vorl9rzTGF/mOX7fXp/ZEd3jB6NTSWqeeisJaBF
> t1MHhVK4qvThrpj7ZX5MPpN8HrHc5dnJ5gl8VCa/e5Bwz73QfEumECoMdMbnvK4v
> a4svfOITrzUMrJXesqknfA18jrROvy/JnYc9r4dLgx/vquQaqfbF33uTrwU64F6M
> /ZCZ0w9q75QaaZDyCgzLTYanqQxK84hi9RPYCXYxKzjDiIZ1BdBAUS+HC+VEPI1v
> WxWikxmugyodrx4XK5ci
> =mb5/
> -----END PGP SIGNATURE-----
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Re: undefined method

Posted by Christopher Schultz <ch...@christopherschultz.net>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Sean,

On 2/20/15 4:10 PM, Sean Dawson wrote:
> We have a GWT app deployed to tomcat (7_59) and fairly often when
> we send a bunch of request quickly we're seeing undefined methods
> in the logs - and the calls fail, causing issues with our app.  We
> make calls via RestyGwt (latest version) but GwtRequests all show
> this - both though after a number of REST calls in a short period
> of time.  So for example...
> 
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1 HTTP/1.1"
> 200 304 [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2
> HTTP/1.1" 200 310 [ip-addr] - - [20/Feb/2015:15:24:34 -0500]
> "DELETE /path3 HTTP/1.1" 200 307 [ip-addr] - -
> [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path4 HTTP/1.1" 501
> 304 [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path5
> HTTP/1.1" 200 304 [ip-addr] - - [20/Feb/2015:15:24:34 -0500]
> "DELETE /path6 HTTP/1.1" 200 310 [ip-addr] - -
> [20/Feb/2015:15:24:34 -0500] "DELETE /path7 HTTP/1.1" 200 307 
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path8 
> HTTP/1.1" 501 304
> 
> Similarly...
> 
> ... .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
> 
> Very little info online, but did come across this old bug...
> 
> https://bz.apache.org/bugzilla/show_bug.cgi?id=49779
> 
> In fiddler, the headers are identical between the requests that
> work and those that fail.  Resending the failed request completes
> normally.
> 
> So far we've only be able to reproduce this when using Internet
> Explorer (10 & 11) and we've spent a lot of time trying to figure
> out what's going on - but have been unable.  Any
> pointers/explanations?

Which connector? Can you post the configuration for that?

Any reverse proxy (e.g. Apache httpd) involved? If yes, is the above
from Tomcat's access log or the web server's?

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org

iQIcBAEBCAAGBQJU56XyAAoJEBzwKT+lPKRYidsQAKnX6H5IxY1cIW1fN8F0oAH3
WRux2sUvj2AGJTC1hUcKBSjwboEd+V0JOQOpoYqzPSWpSQkhD3FXgnSFjFZTk3G9
mgGohyk4o8KUldYnlRnT3RukauV9z+ZdrAEE3rM5ie9r+LnsmcMcY9bwlRm6Ua8+
E6utVB6raitZNnAm5a+TmJySczvabhlzyv5/ORMTUK0/yALIrIGZ0+e6EQXHRFOB
/+BY2SENvSlw/qI/hEIIRKLnK270oGavfybjKHu4t+kjKsNdfJHu3arkfsvr2+u9
z6/Hb+46XRY6YaMLCeEocXecAuVLL6QWndquT/b/kSao5/hWbn6NlFLiQEZGaj0M
qkrySOhCfURUeyh/QJ2iroyX27VqPRanbqxypEE3hhSy9aRiCQOedMsnjO+8h0Xm
n7f/VaZJxNYwSn34tghd286X2vorl9rzTGF/mOX7fXp/ZEd3jB6NTSWqeeisJaBF
t1MHhVK4qvThrpj7ZX5MPpN8HrHc5dnJ5gl8VCa/e5Bwz73QfEumECoMdMbnvK4v
a4svfOITrzUMrJXesqknfA18jrROvy/JnYc9r4dLgx/vquQaqfbF33uTrwU64F6M
/ZCZ0w9q75QaaZDyCgzLTYanqQxK84hi9RPYCXYxKzjDiIZ1BdBAUS+HC+VEPI1v
WxWikxmugyodrx4XK5ci
=mb5/
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: undefined method

Posted by Martin Grigorov <mg...@apache.org>.
On Sat, Feb 21, 2015 at 12:25 AM, Mark Thomas <ma...@apache.org> wrote:

> On 20/02/2015 21:10, Sean Dawson wrote:
> > We have a GWT app deployed to tomcat (7_59) and fairly often when we
> send a
> > bunch of request quickly we're seeing undefined methods in the logs - and
> > the calls fail, causing issues with our app.  We make calls via RestyGwt
> > (latest version) but GwtRequests all show this - both though after a
> number
> > of REST calls in a short period of time.  So for example...
> >
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1 HTTP/1.1" 200
> 304
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2 HTTP/1.1" 200
> 310
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path3 HTTP/1.1" 200
> 307
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path4
> > HTTP/1.1" 501 304
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path5 HTTP/1.1" 200
> 304
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path6 HTTP/1.1" 200
> 310
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path7 HTTP/1.1" 200
> 307
> > [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path8
> > HTTP/1.1" 501 304
> >
> > Similarly...
> >
> > ...
> > .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
> >
> > Very little info online, but did come across this old bug...
> >
> > https://bz.apache.org/bugzilla/show_bug.cgi?id=49779
> >
> > In fiddler, the headers are identical between the requests that work and
> > those that fail.  Resending the failed request completes normally.
> >
> > So far we've only be able to reproduce this when using Internet Explorer
> > (10 & 11) and we've spent a lot of time trying to figure out what's going
> > on - but have been unable.  Any pointers/explanations?
>
> The text "undefined" only appears in comments in Tomcat code. I can't
> see anyway that this could be coming from Tomcat. Is there a proxy
> involved? Are you sure the client isn't sending this? It might be time
> to take a look at the bytes on the wire with wireshark.
>

It is definitely coming from the client.
GWT translates Java to JS. It uses HttpXmlRequest to make the requests. And
it seems during the construction of the url something is undefined and just
blindly put in the url path and send to the server. The server just logs
the sent url ...


>
> Mark
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Re: undefined method

Posted by Mark Thomas <ma...@apache.org>.
On 20/02/2015 21:10, Sean Dawson wrote:
> We have a GWT app deployed to tomcat (7_59) and fairly often when we send a
> bunch of request quickly we're seeing undefined methods in the logs - and
> the calls fail, causing issues with our app.  We make calls via RestyGwt
> (latest version) but GwtRequests all show this - both though after a number
> of REST calls in a short period of time.  So for example...
> 
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path1 HTTP/1.1" 200 304
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path2 HTTP/1.1" 200 310
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path3 HTTP/1.1" 200 307
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path4
> HTTP/1.1" 501 304
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path5 HTTP/1.1" 200 304
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path6 HTTP/1.1" 200 310
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "DELETE /path7 HTTP/1.1" 200 307
> [ip-addr] - - [20/Feb/2015:15:24:34 -0500] "undefinedDELETE /path8
> HTTP/1.1" 501 304
> 
> Similarly...
> 
> ...
> .... "undefinedPOST /gwtRequest HTTP/1.1" 501 1136
> 
> Very little info online, but did come across this old bug...
> 
> https://bz.apache.org/bugzilla/show_bug.cgi?id=49779
> 
> In fiddler, the headers are identical between the requests that work and
> those that fail.  Resending the failed request completes normally.
> 
> So far we've only be able to reproduce this when using Internet Explorer
> (10 & 11) and we've spent a lot of time trying to figure out what's going
> on - but have been unable.  Any pointers/explanations?

The text "undefined" only appears in comments in Tomcat code. I can't
see anyway that this could be coming from Tomcat. Is there a proxy
involved? Are you sure the client isn't sending this? It might be time
to take a look at the bytes on the wire with wireshark.

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org