[ https://issues.apache.org/jira/browse/TAP5-1729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Howard M. Lewis Ship closed TAP5-1729. -------------------------------------- Resolution: Fixed Fix Version/s: 5.4 5.3.4 Assignee: Howard M. Lewis Ship Trickiest part was getting the tapestry-yuicompressor POM to include the repository that the customized yuicompressor can be drawn from. > Sometimes YUICompressor can fail with java.util.EmptyStackException > ------------------------------------------------------------------- > > Key: TAP5-1729 > URL: https://issues.apache.org/jira/browse/TAP5-1729 > Project: Tapestry 5 > Issue Type: Bug > Components: tapestry-yuicompressor > Affects Versions: 5.3 > Reporter: Howard M. Lewis Ship > Assignee: Howard M. Lewis Ship > Priority: Blocker > Fix For: 5.3.4, 5.4 > > > [ERROR] ioc.Registry java.util.EmptyStackException > [ERROR] ioc.Registry Operations trace: > [ERROR] ioc.Registry [ 1] Streaming asset stack en/core.js > [ERROR] ioc.Registry [ 2] Minimizing JavaScript > [ERROR] TapestryModule.RequestExceptionHandler Processing of request failed > with uncaught exception: org.apache.tapestry5.ioc.internal.OperationException > org.apache.tapestry5.ioc.internal.OperationException > 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:1109) > 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_1250535a97d2196c.minimize(Unknown Source) > at > org.apache.tapestry5.internal.services.assets.StackAssetRequestHandler.assembleStackContent(StackAssetRequestHandler.java:175) > at > org.apache.tapestry5.internal.services.assets.StackAssetRequestHandler.assembleStackContent(StackAssetRequestHandler.java:163) > at > org.apache.tapestry5.internal.services.assets.StackAssetRequestHandler.getUncompressedResource(StackAssetRequestHandler.java:146) > at > org.apache.tapestry5.internal.services.assets.StackAssetRequestHandler.getResource(StackAssetRequestHandler.java:123) > at > org.apache.tapestry5.internal.services.assets.StackAssetRequestHandler.access$100(StackAssetRequestHandler.java:40) > at > org.apache.tapestry5.internal.services.assets.StackAssetRequestHandler$1.perform(StackAssetRequestHandler.java:103) > 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:1109) > at > org.apache.tapestry5.internal.TapestryInternalUtils.performIO(TapestryInternalUtils.java:576) > at > org.apache.tapestry5.internal.services.assets.StackAssetRequestHandler.handleAssetRequest(StackAssetRequestHandler.java:96) > at > org.apache.tapestry5.internal.services.AssetDispatcher.dispatch(AssetDispatcher.java:109) > at $Dispatcher_1250535a97d21963.dispatch(Unknown Source) > at $Dispatcher_1250535a97d21967.dispatch(Unknown Source) > at $Dispatcher_1250535a97d21961.dispatch(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302) > at > org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26) > at $RequestHandler_1250535a97d21962.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902) > at $RequestHandler_1250535a97d21962.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892) > at $RequestHandler_1250535a97d21962.service(Unknown Source) > at > org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90) > at $RequestHandler_1250535a97d21962.service(Unknown Source) > at group.app.web.services.AppModule$1.service(AppModule.java:90) > at $RequestFilter_1250535a97d2195d.service(Unknown Source) > at $RequestHandler_1250535a97d21962.service(Unknown Source) > at $RequestHandler_1250535a97d21956.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253) > at > org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53) > at $HttpServletRequestHandler_1250535a97d21958.service(Unknown Source) > at > org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) > at $HttpServletRequestFilter_1250535a97d21955.service(Unknown Source) > at $HttpServletRequestHandler_1250535a97d21958.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852) > at $HttpServletRequestHandler_1250535a97d21958.service(Unknown Source) > at $HttpServletRequestHandler_1250535a97d21953.service(Unknown Source) > at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:140) > at > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:680) > Caused by: java.util.EmptyStackException > at java.util.Stack.peek(Stack.java:85) > at > com.yahoo.platform.yui.compressor.JavaScriptCompressor.getCurrentScope(JavaScriptCompressor.java:559) > at > com.yahoo.platform.yui.compressor.JavaScriptCompressor.printSymbolTree(JavaScriptCompressor.java:1105) > at > com.yahoo.platform.yui.compressor.JavaScriptCompressor.compress(JavaScriptCompressor.java:553) > at > org.apache.tapestry5.internal.yuicompressor.JavaScriptResourceMinimizer.doMinimize(JavaScriptResourceMinimizer.java:98) > 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) > ... 66 more > This is especially annoying because it is not failing on core.js, making it > useless. -- 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