the resources are registered via the fully qualified name of the class
that acts as scope. if we registered them as fqn.tolowercase() then
there are possibilities of collisions. if the browser chooses to
ignore case sensitivity of a url then it deserves a 404.

-igor

On Wed, Jun 2, 2010 at 8:40 PM, Chris Colman
<[email protected]> wrote:
> Would it be possible to wrap the resource loader code in a try/catch and if 
> it fails retry with a lowercase form of the class name?
>
>>-----Original Message-----
>>From: Chris Colman [mailto:[email protected]]
>>Sent: Thursday, 3 June 2010 12:42 PM
>>To: [email protected]
>>Subject: RE: Unable to lazily register wicket-event.js - incorrect case?
>>
>>I did some more analysis:
>>
>>One offending User-Agent is 'reported' to be:
>>
>>Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
>>
>>But the very first request this agent makes, according to matching IP
>>addresss, is robots.txt so it's probably not really a normal client browser
>>but a robot/spider.
>>
>>Another User-Agent is 'reported' to be:
>>
>>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;
>>MAXTHON 2.0)
>>
>>Not sure if this is actually IE 6 (another robot/spider?) - amazing that
>>someone is still able to surf the net using that browser.
>>
>>
>>>-----Original Message-----
>>>From: Igor Vaynberg [mailto:[email protected]]
>>>Sent: Thursday, 3 June 2010 12:11 PM
>>>To: [email protected]
>>>Subject: Re: Unable to lazily register wicket-event.js - incorrect case?
>>>
>>>i doubt it was wicket, probably some weird browser that transformed
>>>the url into lower case before requesting the resource.
>>>
>>>-igor
>>>
>>>On Wed, Jun 2, 2010 at 7:02 PM, Chris Colman
>>><[email protected]> wrote:
>>>> My logs reveal a rather interesting resource loading error:
>>>>
>>>> ERROR - haredResourceRequestTarget - unable to lazily register shared
>>>> resource
>>>> org.apache.wicket.markup.html.wicketeventreference/wicket-event.js
>>>> java.lang.ClassNotFoundException:
>>>> org.apache.wicket.markup.html.wicketeventreference
>>>>        at
>>>> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader
>>>> .java:1387)
>>>>
>>>>
>>>>
>>>> The request log reveals the cause:
>>>>
>>>> Here's a request for wicket-event.js that fails (404):
>>>>
>>>> "GET
>>>> /resources/org.apache.wicket.markup.html.wicketeventreference/wicket-eve
>>>> nt.js HTTP/1.0" 404 952
>>>>
>>>> Here's a request for wicket-event.js that succeeds (200):
>>>>
>>>> "GET
>>>> /resources/org.apache.wicket.markup.html.WicketEventReference/wicket-eve
>>>> nt.js HTTP/1.1" 200 2317
>>>>
>>>> Note the difference: The case is different for the word
>>>> [W|w]icket[E|e]vent[R|r]eference in each case. Tomcat is running on a
>>>> Linux server so obviously case will be an issue. This bug probably does
>>>> not reveal itself on a Windows server.
>>>>
>>>> Why would wicket make two different types of requests to get the same
>>>> resource?
>>>>
>>>> I'm using only wicket and wicket-extensions, built from sources taken
>>>> from SVN 1.4.x trunk on May 24, 2010.
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [email protected]
>>>> For additional commands, e-mail: [email protected]
>>>>
>>>>
>>>
>>>---------------------------------------------------------------------
>>>To unsubscribe, e-mail: [email protected]
>>>For additional commands, e-mail: [email protected]
>>
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: [email protected]
>>For additional commands, e-mail: [email protected]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to