Unable to load SASS when working directory is not $CATALIINA_HOME/bin

Description

The portal fails to load SASS gem if the portal was started as a service and its working directory is not $CATALIINA_HOME/bin.
See the following forum links:
http://www.liferay.com/community/forums/-/message_boards/message/13805435
http://www.liferay.com/community/forums/-/message_boards/message/12390733

Environment

Oracle Linux 5.7

Attachments

1

Activity

Show:

Michael SaechangJuly 23, 2012 at 4:15 PM

Committed on:
Portal 6.1.x CE GIT ID: f20da3dd5319e266dc5e99b8f43dd35018e16b5b.
Portal 6.2.x GIT ID: d9b6174055be1fb0c6288165bc5656fc87bc43da.

Andrius KurtinaitisJuly 9, 2012 at 2:34 AM

After adding suggested property to configuration and restarting the server, I get this stacktrace in the log:

2012-07-09 11:30:26,909 INFO [com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSFilter] Parsing SASS on CSS /u01/tomcat-7.0.25/webapps/ROOT/html/portlet/asset_publisher/css/main.css
2012-07-09 11:30:30,490 ERROR [com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSFilter] Unable to parse SASS on CSS /u01/tomcat-7.0.25/webapps/ROOT/html/portlet/asset_publisher/css/main.css
org.jruby.embed.EvalFailedException: (LoadError) no such file to load – file:/u01/tomcat-7.0.25/webapps/ROOT/WEB-INF/lib/ruby-gems.jar!/gems/sass-3.1.7/lib/sass/../sass
at org.jruby.embed.internal.EmbedEvalUnitImpl.run(EmbedEvalUnitImpl.java:127)
at org.jruby.embed.ScriptingContainer.runUnit(ScriptingContainer.java:1231)
at org.jruby.embed.ScriptingContainer.runScriptlet(ScriptingContainer.java:1224)
at com.liferay.portal.scripting.ruby.RubyExecutor.eval(RubyExecutor.java:148)
at com.liferay.portal.scripting.ruby.RubyExecutor.eval(RubyExecutor.java:105)
at com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSUtil._parseSass(DynamicCSSUtil.java:299)
at com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSUtil.parseSass(DynamicCSSUtil.java:138)
at com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSFilter.getDynamicContent(DynamicCSSFilter.java:144)
at com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSFilter.processFilter(DynamicCSSFilter.java:208)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:55)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:158)
at com.liferay.portal.servlet.filters.minifier.MinifierFilter.processFilter(MinifierFilter.java:467)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:55)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:158)
at com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:123)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:55)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:158)
at com.liferay.portal.servlet.filters.etag.ETagFilter.processFilter(ETagFilter.java:55)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:55)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:158)
at com.liferay.portal.servlet.filters.header.HeaderFilter.processFilter(HeaderFilter.java:150)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:55)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:158)
at com.liferay.portal.servlet.filters.sso.ntlm.NtlmPostFilter.processFilter(NtlmPostFilter.java:83)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:55)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:167)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:167)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:187)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:71)
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:224)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
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:662)
Caused by: org.jruby.exceptions.RaiseException: (LoadError) no such file to load – file:/u01/tomcat-7.0.25/webapps/ROOT/WEB-INF/lib/ruby-gems.jar!/gems/sass-3.1.7/lib/sass/../sass
2012-07-09 11:30:30,509 INFO [com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSFilter] Parsing SASS on CSS /u01/tomcat-7.0.25/webapps/ROOT/html/portlet/asset_publisher/css/main.portal.css
2012-07-09 11:30:30,510 WARN [com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSUtil] No theme found for /html/portlet/asset_publisher/css/main.portal.css
2012-07-09 11:30:30,514 INFO [com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSFilter] Parsing SASS on CSS /u01/tomcat-7.0.25/webapps/ROOT/html/portlet/asset_publisher/css/custom.css
2012-07-09 11:30:30,514 WARN [com.liferay.portal.servlet.filters.dynamiccss.DynamicCSSUtil] No theme found for /html/portlet/asset_publisher/css/custom.css

Raymond AugéJuly 6, 2012 at 12:34 PM

Andrius, can you test this configuration change?

Change it to:

Fixed

Details

Assignee

Reporter

Branch Version/s

6.1.x

Backported to Branch

Committed

Epic/Theme

Fix Priority

5

Git Pull Request

Components

Priority

Zendesk Support

Created June 21, 2012 at 11:27 PM
Updated June 24, 2023 at 3:59 PM
Resolved July 9, 2012 at 11:41 AM
Loading...