Deployment javascript problem: this bug manifests most frequently for apps
that include prototype.js in deployment mode so I'll use it as an example. 
Prototype has this line:

    attr:
/\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\4]*?)\4|([^'"][^\]]*?)))?\]/

    -----------------------------------------------------------------------^

When JavascriptStripper gets a hold of it, i think it sees that double quote
as the start of a string literal and it will start printing everything as is
after that until it sees a matching closing double quote.  So it interprets
everything after that as a string literal until (much further down in the
prototype.js file)

    document.write("<script id=__onDOMContentLoaded defer
src=//:><\/script>");

The double quote at the beginning of this line ends the string literal,
which means when we get to the double slash at src=//,  it's interpreted as
a comment.  So everything up until this point is actually fine (just not
stripped) but then this line blows up.

I've seen the short answer, which is:
    
    getResourceSettings().setStripJavascriptCommentsAndWhitespace(false); 

Is this a known bug? Should I open a JIRA for it?

Luke
-- 
View this message in context: 
http://www.nabble.com/JavascriptStripper-bug-tp15112541p15112541.html
Sent from the Wicket - Dev mailing list archive at Nabble.com.

Reply via email to