Hello,

would I be able to decorate the YUICompressor with my own implementation which 
checks if the file is already minified?
Or could I configure the YUICompressor to exclude files?

Regards,
Daniel P.

-----Ursprüngliche Nachricht-----
Von: Howard Lewis Ship [mailto:hls...@gmail.com] 
Gesendet: Mittwoch, 29. Juli 2015 00:15
An: Tapestry users
Betreff: Re: YUICompressor tries to compress minified resources

Tapestry is not quite smart enough to know that .min.css means a minimized CSS 
file.

You should have access to the non-minimized CSS file, so change it from 
"context:bootstrap/bootstrap.min.css" to "context:bootstrap/bootstrap.css"
(or equivalent).

The whole concept of Tapestry doing the minimization is to simplify the 
developer; it's always the same file, but in production mode it gets all the 
desirable extras (minimization, etc.).


On Tue, Jul 28, 2015 at 11:14 AM, Poggenpohl, Daniel < 
daniel.poggenp...@isst.fraunhofer.de> wrote:

> Hello,
>
> we enabled production mode in our application.
> The Tapestry YUICompressor doesn't seem to recognize already minified 
> JS or CSS files and tries to compress them.
> This results in Exceptions like this one:
> ERROR] AssetsModule.ResourceMinimizer JavaScript compression problems 
> for resource context:bootstrap/js/bootstrap.min.js:
> [ERROR] AssetsModule.ResourceMinimizer String index out of range: 
> 40264
> java.lang.StringIndexOutOfBoundsException: String index out of range: 40264
>         at java.lang.String.substring(String.java:1951)
>         at
> com.yahoo.platform.yui.compressor.JavaScriptCompressor.printSourceString(JavaScriptCompressor.java:267)
>         at
> com.yahoo.platform.yui.compressor.JavaScriptCompressor.parse(JavaScriptCompressor.java:330)
>         at
> com.yahoo.platform.yui.compressor.JavaScriptCompressor.<init>(JavaScriptCompressor.java:533)
>         at
> org.apache.tapestry5.internal.yuicompressor.JavaScriptResourceMinimizer.doMinimize(JavaScriptResourceMinimizer.java:148)
>         at
> org.apache.tapestry5.internal.yuicompressor.AbstractMinimizer$1.perform(AbstractMinimizer.java:67)
>        at
> org.apache.tapestry5.internal.TapestryInternalUtils$5.run(TapestryInternalUtils.java:582)
>         at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
>         at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:49)
>         at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(Operatio
> nTrackerImpl.java:74)
>
> Can we set some options for the Compressor? How do we prevent this error?
>
> Regards,
> Daniel P.
>



--
Howard M. Lewis Ship

Looking for Clojure engagements: coding, archiecture, mentoring & more!

Creator of Apache Tapestry

(971) 678-5210
http://howardlewisship.com
@hlship

Reply via email to