You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship (Commented) (JIRA)" <ji...@apache.org> on 2011/10/28 17:35:32 UTC

[jira] [Commented] (TAP5-1726) JavaScript Assets fail to load for already-minified JS assets in Production mode

    [ https://issues.apache.org/jira/browse/TAP5-1726?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13138452#comment-13138452 ] 

Howard M. Lewis Ship commented on TAP5-1726:
--------------------------------------------

Any idea how to differentiate minimized JS from normal?  

I'm changing to code to log the minimization failure, but then stream the unminimized version.
                
> JavaScript Assets fail to load for already-minified JS assets in Production mode
> --------------------------------------------------------------------------------
>
>                 Key: TAP5-1726
>                 URL: https://issues.apache.org/jira/browse/TAP5-1726
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core, tapestry-yuicompressor
>    Affects Versions: 5.3, 5.4
>            Reporter: Lenny Primak
>
> I have another vendor's minified JavaScript files as assets in my context folder.
> They are obfuscated and don't pass YUI compressor's syntax checking.
> In this case, the process should still let the file through, but right now it fails with HTTP 500 error:
> So right now Tapestry can't load these assets.
> SEVERE: Operations trace:
> SEVERE: [ 1] Streaming context:com.baw.website.gwt.table/sc/modules/ISC_Core.js
> SEVERE: [ 2] Minimizing JavaScript
> SEVERE: Processing of request failed with uncaught exception: Compilation produced 6 syntax errors.
> org.apache.tapestry5.ioc.internal.OperationException: Compilation produced 6 syntax errors.
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
> 	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.run(RegistryImpl.java:1029)
> 	at org.apache.tapestry5.internal.TapestryInternalUtils.performIO(TapestryInternalUtils.java:576)
> 	at org.apache.tapestry5.internal.yuicompressor.AbstractMinimizer.minimize(AbstractMinimizer.java:62)
> 	at org.apache.tapestry5.internal.services.assets.MasterResourceMinimizer.minimize(MasterResourceMinimizer.java:44)
> 	at $ResourceMinimizer_125025d36590963b.minimize(Unknown Source)
> 	at org.apache.tapestry5.internal.services.assets.SRSMinimizingInterceptor.getStreamableResource(SRSMinimizingInterceptor.java:44)
> 	at org.apache.tapestry5.internal.services.assets.SRSCachingInterceptor.getStreamableResource(SRSCachingInterceptor.java:56)
> 	at org.apache.tapestry5.internal.services.assets.SRSCompressingInterceptor.getStreamableResource(SRSCompressingInterceptor.java:40)
> 	at org.apache.tapestry5.internal.services.assets.SRSCachingInterceptor.getStreamableResource(SRSCachingInterceptor.java:56)
> 	at $StreamableResourceSource_125025d365909639.getStreamableResource(Unknown Source)
> 	at org.apache.tapestry5.internal.services.ResourceStreamerImpl$1.perform(ResourceStreamerImpl.java:93)
> 	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:48)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
> 	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.run(RegistryImpl.java:1029)
> 	at org.apache.tapestry5.internal.TapestryInternalUtils.performIO(TapestryInternalUtils.java:576)
> 	at org.apache.tapestry5.internal.services.ResourceStreamerImpl.streamResource(ResourceStreamerImpl.java:86)
> 	at $ResourceStreamer_125025d365909623.streamResource(Unknown Source)
> 	at org.apache.tapestry5.internal.services.assets.ContextAssetRequestHandler.handleAssetRequest(ContextAssetRequestHandler.java:53)
> 	at org.apache.tapestry5.internal.services.AssetDispatcher.dispatch(AssetDispatcher.java:109)
> 	at $Dispatcher_125025d365909634.dispatch(Unknown Source)
> 	at $Dispatcher_125025d365909638.dispatch(Unknown Source)
> 	at $Dispatcher_125025d365909632.dispatch(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302)
> 	at com.flowlogix.web.services.SecurityModule$1.service(SecurityModule.java:85)
> 	at $RequestHandler_125025d365909633.service(Unknown Source)
> 	at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
> 	at $RequestHandler_125025d365909633.service(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
> 	at $RequestHandler_125025d365909633.service(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
> 	at $RequestHandler_125025d365909633.service(Unknown Source)
> 	at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
> 	at $RequestHandler_125025d365909633.service(Unknown Source)
> 	at $RequestHandler_125025d365909628.service(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253)
> 	at com.flowlogix.web.services.internal.GwtCachingFilter.service(GwtCachingFilter.java:102)
> 	at $HttpServletRequestHandler_125025d365909629.service(Unknown Source)
> 	at org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
> 	at $HttpServletRequestHandler_125025d365909629.service(Unknown Source)
> 	at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
> 	at $HttpServletRequestFilter_125025d365909626.service(Unknown Source)
> 	at $HttpServletRequestHandler_125025d365909629.service(Unknown Source)
> 	at org.tynamo.security.services.impl.SecurityConfiguration$2.call(SecurityConfiguration.java:104)
> 	at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
> 	at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
> 	at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:344)
> 	at org.tynamo.security.services.impl.SecurityConfiguration.service(SecurityConfiguration.java:102)
> 	at $HttpServletRequestFilter_125025d365909627.service(Unknown Source)
> 	at $HttpServletRequestHandler_125025d365909629.service(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
> 	at $HttpServletRequestHandler_125025d365909629.service(Unknown Source)
> 	at $HttpServletRequestHandler_125025d365909622.service(Unknown Source)
> 	at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
> 	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
> 	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
> 	at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
> 	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
> 	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:232)
> 	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
> 	at com.sun.grizzly.comet.CometEngine.executeServlet(CometEngine.java:444)
> 	at com.sun.grizzly.comet.CometEngine.handle(CometEngine.java:308)
> 	at com.sun.grizzly.comet.CometAsyncFilter.doFilter(CometAsyncFilter.java:87)
> 	at com.sun.grizzly.arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:171)
> 	at com.sun.grizzly.arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:143)
> 	at com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:94)
> 	at com.sun.grizzly.http.TaskBase.run(TaskBase.java:193)
> 	at com.sun.grizzly.http.TaskBase.execute(TaskBase.java:175)
> 	at com.sun.grizzly.arp.DefaultAsyncHandler.handle(DefaultAsyncHandler.java:145)
> 	at com.sun.grizzly.arp.AsyncProtocolFilter.execute(AsyncProtocolFilter.java:204)
> 	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
> 	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
> 	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
> 	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
> 	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
> 	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
> 	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
> 	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
> 	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
> 	at java.lang.Thread.run(Thread.java:680)
> Caused by: org.mozilla.javascript.EvaluatorException: Compilation produced 6 syntax errors.
> 	at org.apache.tapestry5.internal.yuicompressor.JavaScriptResourceMinimizer$1.runtimeError(JavaScriptResourceMinimizer.java:80)
> 	at org.mozilla.javascript.Parser.parse(Parser.java:392)
> 	at org.mozilla.javascript.Parser.parse(Parser.java:337)
> 	at com.yahoo.platform.yui.compressor.JavaScriptCompressor.parse(JavaScriptCompressor.java:312)
> 	at com.yahoo.platform.yui.compressor.JavaScriptCompressor.<init>(JavaScriptCompressor.java:533)
> 	at org.apache.tapestry5.internal.yuicompressor.JavaScriptResourceMinimizer.doMinimize(JavaScriptResourceMinimizer.java:97)
> 	at org.apache.tapestry5.internal.yuicompressor.AbstractMinimizer$1.perform(AbstractMinimizer.java:68)
> 	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:48)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
> 	... 92 more

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira