ComplianceOnline

Cosmetic Good Manufacturing Practices Guidance

  • By: Staff Editor
  • Date: November 26, 2016
  • Source: http://www.fda.gov/
Access Regulatory Compliance Training sessions led by expert panelists below.

Compliance Webinars | Virtual Seminars for Professionals

Cosmetic Good Manufacturing Practices Guidance

The FD&C Act prohibits the introduction, or delivery for introduction, into interstate commerce of cosmetics that are adulterated or misbranded.

Tampering and other malicious or unlawful activity present additional risks that can also have a direct impact on products’ quality. To help minimize these risks to cosmetics, FDA recommends to consult a separate FDA guidance document entitled “Guidance for Industry: Cosmetic Processors and Transporters of Cosmetics Security Preventive Measures Guidance.

This FDA Guidance is proposed to aid industry and other stakeholders in identifying the standards and issues that can affect the quality of cosmetic products. The guidance revises the “Cosmetic Good Manufacturing (GMP) Guidelines/Inspection Checklist” by updating it to set forth current practice, and clarify certain topic areas based on recent experience.

Summary of Requirements

The Guidance details the requirements for:

  • Documentation
  • Records
  • Buildings and Facilities
  • Equipment
  • Personnel
  • Raw Materials
    • Water
    • Color Additives
    • Prohibited and Restricted Cosmetic Ingredients
  • Production
  • Laboratory Controls
  • Internal Audit
  • Complaints, Adverse Events, and Recalls

Related Training:

FDA Regulations and New Legislation for Marketing Cosmetics in the U.S.

Click here to download the file
Method public java.lang.String org.ofbiz.widget.screen.ScreenRenderer.render(java.lang.String) throws org.ofbiz.base.util.GeneralException,java.io.IOException,org.xml.sax.SAXException,javax.xml.parsers.ParserConfigurationException threw an exception when invoked on org.ofbiz.widget.screen.ScreenRenderer@4935e17 with arguments of types [java.lang.String,] The problematic instruction: ---------- ==> ${screens.render("component://ecommerce/widget/CONew2016/BestPracticesPageScreens.xml#trainings-article-detail")} [on line 9, column 17 in component://ecommerce/webapp/ecommerce/CONew2016/bestpractices/article_detail/contentDetailMain.ftl] ---------- Java backtrace for programmers: ---------- freemarker.template.TemplateModelException: Method public java.lang.String org.ofbiz.widget.screen.ScreenRenderer.render(java.lang.String) throws org.ofbiz.base.util.GeneralException,java.io.IOException,org.xml.sax.SAXException,javax.xml.parsers.ParserConfigurationException threw an exception when invoked on org.ofbiz.widget.screen.ScreenRenderer@4935e17 with arguments of types [java.lang.String,] at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:134) at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93) at freemarker.core.Expression.getAsTemplateModel(Expression.java:89) at freemarker.core.Expression.getStringValue(Expression.java:93) at freemarker.core.DollarVariable.accept(DollarVariable.java:76) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.Environment.process(Environment.java:199) at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:257) at org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:225) at org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:270) at org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:130) at org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:920) at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:104) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:191) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:866) at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:104) at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93) at freemarker.core.Expression.getAsTemplateModel(Expression.java:89) at freemarker.core.Expression.getStringValue(Expression.java:93) at freemarker.core.DollarVariable.accept(DollarVariable.java:76) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.Environment.process(Environment.java:199) at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:257) at org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:225) at org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:270) at org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:130) at org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:920) at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:104) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:191) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) at org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:865) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:582) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:547) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:547) at org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:224) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:412) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339) at com.metricstream.SEOServlet.dispatchEcommerceRequest(SEOServlet.java:287) at com.metricstream.SEOServlet.findPattern(SEOServlet.java:236) at com.metricstream.SEOServlet.doGet(SEOServlet.java:49) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 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:99) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: org.ofbiz.widget.screen.ScreenRenderException: Error rendering screen [component://ecommerce/widget/CONew2016/BestPracticesPageScreens.xml#trainings-article-detail]: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object (Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:409) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:866) at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:104) ... 76 more Caused by: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object at org.ofbiz.base.util.ScriptUtil.executeScript(ScriptUtil.java:348) at org.ofbiz.base.util.ScriptUtil.executeScript(ScriptUtil.java:324) at org.ofbiz.widget.ModelWidgetAction$Script.runAction(ModelWidgetAction.java:416) at org.ofbiz.widget.ModelWidgetAction.runSubActions(ModelWidgetAction.java:116) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:184) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) ... 83 more
Best Sellers
Method public java.lang.String org.ofbiz.widget.screen.ScreenRenderer.render(java.lang.String) throws org.ofbiz.base.util.GeneralException,java.io.IOException,org.xml.sax.SAXException,javax.xml.parsers.ParserConfigurationException threw an exception when invoked on org.ofbiz.widget.screen.ScreenRenderer@4935e17 with arguments of types [java.lang.String,] The problematic instruction: ---------- ==> ${screens.render("component://ecommerce/widget/CONew2016/BaseScreens.xml#recently-viewed")} [on line 28, column 1 in component://ecommerce/webapp/ecommerce/CONew2016/bestpractices/article_detail/contentDetailMain.ftl] ---------- Java backtrace for programmers: ---------- freemarker.template.TemplateModelException: Method public java.lang.String org.ofbiz.widget.screen.ScreenRenderer.render(java.lang.String) throws org.ofbiz.base.util.GeneralException,java.io.IOException,org.xml.sax.SAXException,javax.xml.parsers.ParserConfigurationException threw an exception when invoked on org.ofbiz.widget.screen.ScreenRenderer@4935e17 with arguments of types [java.lang.String,] at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:134) at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93) at freemarker.core.Expression.getAsTemplateModel(Expression.java:89) at freemarker.core.Expression.getStringValue(Expression.java:93) at freemarker.core.DollarVariable.accept(DollarVariable.java:76) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.Environment.process(Environment.java:199) at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:257) at org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:225) at org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:270) at org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:130) at org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:920) at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:104) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:191) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:866) at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:104) at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93) at freemarker.core.Expression.getAsTemplateModel(Expression.java:89) at freemarker.core.Expression.getStringValue(Expression.java:93) at freemarker.core.DollarVariable.accept(DollarVariable.java:76) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.Environment.process(Environment.java:199) at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:257) at org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:225) at org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:270) at org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:130) at org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:920) at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:104) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:191) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) at org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:865) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:582) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:547) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:547) at org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:224) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:412) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339) at com.metricstream.SEOServlet.dispatchEcommerceRequest(SEOServlet.java:287) at com.metricstream.SEOServlet.findPattern(SEOServlet.java:236) at com.metricstream.SEOServlet.doGet(SEOServlet.java:49) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 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:99) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: org.ofbiz.widget.screen.ScreenRenderException: Error rendering screen [component://ecommerce/widget/CONew2016/BaseScreens.xml#recently-viewed]: org.ofbiz.entity.transaction.GenericTransactionException: The current transaction is marked for rollback, not beginning a new transaction and aborting current operation; the rollbackOnly was caused by: Error rendering screen [component://ecommerce/widget/CONew2016/BestPracticesPageScreens.xml#trainings-article-detail]: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null objectjava.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object (Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object) (The current transaction is marked for rollback, not beginning a new transaction and aborting current operation; the rollbackOnly was caused by: Error rendering screen [component://ecommerce/widget/CONew2016/BestPracticesPageScreens.xml#trainings-article-detail]: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null objectjava.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object (Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object)) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:423) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:866) at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:104) ... 76 more Caused by: org.ofbiz.entity.transaction.GenericTransactionException: The current transaction is marked for rollback, not beginning a new transaction and aborting current operation; the rollbackOnly was caused by: Error rendering screen [component://ecommerce/widget/CONew2016/BestPracticesPageScreens.xml#trainings-article-detail]: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null objectjava.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object (Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object) at org.ofbiz.entity.transaction.TransactionUtil.begin(TransactionUtil.java:159) at org.ofbiz.entity.transaction.TransactionUtil.begin(TransactionUtil.java:127) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:388) ... 83 more Caused by: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object at org.ofbiz.base.util.ScriptUtil.executeScript(ScriptUtil.java:348) at org.ofbiz.base.util.ScriptUtil.executeScript(ScriptUtil.java:324) at org.ofbiz.widget.ModelWidgetAction$Script.runAction(ModelWidgetAction.java:416) at org.ofbiz.widget.ModelWidgetAction.runSubActions(ModelWidgetAction.java:116) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:184) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) ... 83 more
Method public java.lang.String org.ofbiz.widget.screen.ScreenRenderer.render(java.lang.String) throws org.ofbiz.base.util.GeneralException,java.io.IOException,org.xml.sax.SAXException,javax.xml.parsers.ParserConfigurationException threw an exception when invoked on org.ofbiz.widget.screen.ScreenRenderer@4935e17 with arguments of types [java.lang.String,] The problematic instruction: ---------- ==> ${screens.render("component://ecommerce/widget/CONew2016/BaseScreens.xml#main-footer")} [on line 11, column 1 in component://ecommerce/webapp/ecommerce/CONew2016/templates/articleDetail.ftl] ---------- Java backtrace for programmers: ---------- freemarker.template.TemplateModelException: Method public java.lang.String org.ofbiz.widget.screen.ScreenRenderer.render(java.lang.String) throws org.ofbiz.base.util.GeneralException,java.io.IOException,org.xml.sax.SAXException,javax.xml.parsers.ParserConfigurationException threw an exception when invoked on org.ofbiz.widget.screen.ScreenRenderer@4935e17 with arguments of types [java.lang.String,] at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:134) at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93) at freemarker.core.Expression.getAsTemplateModel(Expression.java:89) at freemarker.core.Expression.getStringValue(Expression.java:93) at freemarker.core.DollarVariable.accept(DollarVariable.java:76) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.Environment.process(Environment.java:199) at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:257) at org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:225) at org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:270) at org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:130) at org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:920) at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:104) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:191) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) at org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:865) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:582) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:547) at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:547) at org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:224) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:412) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339) at com.metricstream.SEOServlet.dispatchEcommerceRequest(SEOServlet.java:287) at com.metricstream.SEOServlet.findPattern(SEOServlet.java:236) at com.metricstream.SEOServlet.doGet(SEOServlet.java:49) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 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:99) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: org.ofbiz.widget.screen.ScreenRenderException: Error rendering screen [component://ecommerce/widget/CONew2016/BaseScreens.xml#main-footer]: org.ofbiz.entity.transaction.GenericTransactionException: The current transaction is marked for rollback, not beginning a new transaction and aborting current operation; the rollbackOnly was caused by: Error rendering screen [component://ecommerce/widget/CONew2016/BestPracticesPageScreens.xml#trainings-article-detail]: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null objectjava.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object (Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object) (The current transaction is marked for rollback, not beginning a new transaction and aborting current operation; the rollbackOnly was caused by: Error rendering screen [component://ecommerce/widget/CONew2016/BestPracticesPageScreens.xml#trainings-article-detail]: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null objectjava.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object (Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object)) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:423) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:866) at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:104) ... 53 more Caused by: org.ofbiz.entity.transaction.GenericTransactionException: The current transaction is marked for rollback, not beginning a new transaction and aborting current operation; the rollbackOnly was caused by: Error rendering screen [component://ecommerce/widget/CONew2016/BestPracticesPageScreens.xml#trainings-article-detail]: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null objectjava.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object (Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object) at org.ofbiz.entity.transaction.TransactionUtil.begin(TransactionUtil.java:159) at org.ofbiz.entity.transaction.TransactionUtil.begin(TransactionUtil.java:127) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:388) ... 60 more Caused by: java.lang.IllegalArgumentException: Error running script at location [component://ecommerce/webapp/ecommerce/WEB-INF/actions/CONew2016/bestpractices/article_detail/trainings_articleDetail.groovy]: javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method getString() on null object at org.ofbiz.base.util.ScriptUtil.executeScript(ScriptUtil.java:348) at org.ofbiz.base.util.ScriptUtil.executeScript(ScriptUtil.java:324) at org.ofbiz.widget.ModelWidgetAction$Script.runAction(ModelWidgetAction.java:416) at org.ofbiz.widget.ModelWidgetAction.runSubActions(ModelWidgetAction.java:116) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:184) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:866) at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:104) at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93) at freemarker.core.Expression.getAsTemplateModel(Expression.java:89) at freemarker.core.Expression.getStringValue(Expression.java:93) at freemarker.core.DollarVariable.accept(DollarVariable.java:76) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:221) at freemarker.core.Environment.process(Environment.java:199) at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:257) at org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:225) at org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:270) at org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:130) at org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:920) at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:104) at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:191) at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:396) ... 60 more