You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by "Jacques Le Roux (JIRA)" <ji...@apache.org> on 2008/02/17 14:30:34 UTC

[jira] Commented: (OFBIZ-1652) Dojo i18n rendering

    [ https://issues.apache.org/jira/browse/OFBIZ-1652?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12569696#action_12569696 ] 

Jacques Le Roux commented on OFBIZ-1652:
----------------------------------------

Seems that it's not actually related to Dojo but how it has been used there.

In debug mode (using Firebug) we see in callEditor call (callEditor is defined in WebSiteCMSNav.ftl) that when we want to assign
innerPage.innerHTML = data;

data value is :
__________________________________________________________________________________________________
<div class="screenlet">
<div class="screenlet-title-bar">
<div class="h3">
</div>
</div>
<div class="screenlet-body">

<script type="text/javascript">
    function cmsSave() {
        var simpleFormAction = '/content/control/updateContentCms';
        var editor = dojo.widget.byId("w_editor");
        if (editor) {
            var cmsdata = dojo.byId("cmsdata");
            cmsdata.value = editor.getEditorContent();
        }

        // get the cmsform
        var form = document.cmsform;

        // set the data resource name
        form.dataResourceName.value = form.contentName.value;

        // check to see if we need to change the form action
        var isUpload = form.elements['isUploadObject'];
        if (isUpload && isUpload.value == 'Y') {
            var uploadValue = form.elements['uploadedFile'].value;
            if (uploadValue == null || uploadValue == "") {
                form.action = simpleFormAction;
            }            
        }

        // submit the form
        if (form != null) {
            form.submit();
        } else {
            alert("Cannot find the cmsform!");
        }

        return false;
    }

    function selectDataType(contentId) {
        var selectObject = document.forms['cmsdatatype'].elements['dataResourceTypeId'];
        var typeValue = selectObject.options[selectObject.selectedIndex].value;
        callEditor(true, contentId, '', typeValue);
    }
</script>

<div id="cmsmenu" style="margin-bottom: 8px;">
        <a href="javascript:void(0);" onclick="javascript:callEditor(true, 'CMSS_DEMO_PAGE1_2', '', 'ELECTRONIC_TEXT');" class="tabButton">
Expression uiLabelMap is undefined on line 64, column 145 in component://content/webapp/content/website/WebSiteCMSContent.ftl.
The problematic instruction:
----------
==> ${uiLabelMap.ContentQuickSubContent} [on line 64, column 143 in component://content/webapp/content/website/WebSiteCMSContent.ftl]
----------

Java backtrace for programmers:
----------
freemarker.core.InvalidReferenceException: Expression uiLabelMap is undefined on line 64, column 145 in component://content/webapp/content/website/WebSiteCMSContent.ftl.
	at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
	at freemarker.core.TemplateObject.invalidTypeException(TemplateObject.java:134)
	at freemarker.core.Dot._getAsTemplateModel(Dot.java:78)
	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:196)
	at freemarker.core.MixedContent.accept(MixedContent.java:92)
	at freemarker.core.Environment.visit(Environment.java:196)
	at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)
	at freemarker.core.Environment.visit(Environment.java:196)
	at freemarker.core.MixedContent.accept(MixedContent.java:92)
	at freemarker.core.Environment.visit(Environment.java:196)
	at freemarker.core.Environment.process(Environment.java:176)
	at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:198)
	at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:163)
	at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplateAtLocation(FreeMarkerWorker.java:136)
	at org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:96)
	at org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:139)
	at org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:68)
	at org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:900)
	at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:136)
	at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:222)
	at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:136)
	at org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:281)
	at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:136)
	at org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:281)
	at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:136)
	at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:222)
	at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:142)
	at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:131)
	at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:94)
	at org.ofbiz.widget.screen.ScreenWidgetViewHandler.render(ScreenWidgetViewHandler.java:96)
	at org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:651)
	at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:442)
	at org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:193)
	at org.ofbiz.webapp.control.ControlServlet.doPost(ControlServlet.java:78)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
	at org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:248)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:542)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
	at java.lang.Thread.run(Thread.java:595)
Error rendering included template at location [component://content/webapp/content/website/WebSiteCMSContent.ftl]: freemarker.core.InvalidReferenceException: Expression uiLabelMap is undefined on line 64, column 145 in component://content/webapp/content/website/WebSiteCMSContent.ftl.</div>
</div>
__________________________________________________________________________________________________

I don't know how to deal with this at the moment. It needs further investigation. I though about passing real values of each uiLabelMap."values" to callEditor() but this seems not to be the right way to deal with this issue which seems more a design issue...

> Dojo i18n rendering
> -------------------
>
>                 Key: OFBIZ-1652
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-1652
>             Project: OFBiz
>          Issue Type: Bug
>          Components: content
>    Affects Versions: SVN trunk
>            Reporter: Jacques Le Roux
>
> Firts reported by John M. Rinck  on user ML.
> <<I have navigated to "WebSites" tab in the Content application. I had
> selected the "CMSSITE" website. Once that website is selected a sub menu
> with appears. 
> The menu choices are: Website|Content|Parties|CMS. 
> I have selected "CMS". The screen here gives me the "CMS Nav" in a tree on
> the left. If I click on any node I get the following stack trace.>>
> Actually I (JLR) added some uilabelMap in the 1st dojo block (as seen in FTL, see r628363 : http://svn.apache.org/viewvc?rev=628363&view=rev)
> I get now this error :
> 2008-02-16 22:33:08,046 (http-0.0.0.0-18443-Processor4) [ Log4JLoggerFactory.java:96 :ERROR]
> Expression uiLabelMap is undefined on line 64, column 11 in component://content/webapp/content/website/WebSiteCMSContent.ftl.
> The problematic instruction:
> ----------
> ==> ${uiLabelMap} [on line 64, column 9 in component://content/webapp/content/website/WebSiteCMSContent.ftl]
> ----------
> Java backtrace for programmers:
> ----------
> freemarker.core.InvalidReferenceException: Expression uiLabelMap is undefined on line 64, column 11 in component://content/webapp/content/website/WebSiteCMSContent.ftl.
>         at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
>         at freemarker.core.Expression.getStringValue(Expression.java:118)
>         at freemarker.core.Expression.getStringValue(Expression.java:93)
>         at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
>         at freemarker.core.Environment.visit(Environment.java:196)
>         at freemarker.core.MixedContent.accept(MixedContent.java:92)
>         at freemarker.core.Environment.visit(Environment.java:196)
>         at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)
>         at freemarker.core.Environment.visit(Environment.java:196)
>         at freemarker.core.MixedContent.accept(MixedContent.java:92)
>         at freemarker.core.Environment.visit(Environment.java:196)
>         at freemarker.core.Environment.process(Environment.java:176)
>         at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:198)
>         at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:163)
>         at org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplateAtLocation(FreeMarkerWorker.java:136)
>         at org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:96)
>         at org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:139)
>         at org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:68)
>         at org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:900)
>         at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:136)
>         at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:222)
>         at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:136)
>         at org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:281)
>         at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:136)
>         at org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:281)
>         at org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:136)
>         at org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:222)
>         at org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:142)
>         at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:131)
>         at org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:94)
>         at org.ofbiz.widget.screen.ScreenWidgetViewHandler.render(ScreenWidgetViewHandler.java:96)
>         at org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:651)
>         at org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:442)
>         at org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:193)
>         at org.ofbiz.webapp.control.ControlServlet.doPost(ControlServlet.java:78)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:248)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:542)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
>         at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
>         at java.lang.Thread.run(Thread.java:595)
> 2008-02-16 22:33:08,062 (http-0.0.0.0-18443-Processor4) [         HtmlWidget.java:110:ERROR]
> ---- exception report ----------------------------------------------------------
> This seems related to Dojo, not quite sure yet though. I have to know more about Dojo, so if nobody beats me on it, I will have a look.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.