3

I've seen the following cd_dynamic_conf section in a few examples online (on YATB and SO).

<TCDLEngine>
    <Renderer Class="com.tridion.tcdl.TCDLRenderer">
        <Properties>
            <Property Name="prop1" Value="value1" />
            <Property Name="prop2" Value="value2" />
        </Properties>
    </Renderer>
</TCDLEngine>

The schema (schemas/cd_dynamic_conf.xsd) and documentation (requires login) suggest Renderer doesn't belong. For example, I see in cd_core log:

2013-07-30 20:09:28,848 ERROR XMLConfigurationReader - Error while validating file 'cd_dynamic_conf.xml' with schema 'schemas/cd_dynamic_conf.xsd'. cvc-complex-type.2.4.a: Invalid content was found starting with element 'Renderer'. One of '{Properties, TagBundle}' is expected.

The custom SDL Live Content example (requires login) has:

<?xml version="1.0" encoding="UTF-8"?>
<TCDLEngine>
  <Properties>
    <Property Name="myEngineProperty" Value="myEngineValue" />
  </Properties>
  <Tags>
    <Tag Namespace="tcdl" Name="FooApp">
      <Handler Class="com.mycompany.FooAppTagHandler" />
    </Tag>
  </Tags>
</TCDLEngine>

In a related ServerFault post at least in 2013 and UGC TagBundle is okay directly under TCDLEngine.

Is the Renderer node needed and can I remove it? Or in other words, does this control my setup's TCDLRendering?

Update: Removing the parent Renderer node and just leaving properties seems to work okay (after restarting everything). The xsd might be outdated then. Sorry, got this backwards--the old format is outdated, the documentation and xsd seem to be correct. See answer below.

<!--<Renderer Class="com.tridion.tcdl.TCDLRenderer">-->
    <Properties>
       <Property Name="prop1" Value="value1"/>
       <Property Name="prop2" Value="value2"/>
     </Properties>
<!--</Renderer>-->

Examples appreciated but I'll report back any followup. I'd imagine we'd at least want to optionally use the Properties section.

6
  • My experience is that schema changes occasionally get forgotten when a new release is made.
    – Dominic Cronin
    Aug 1 '13 at 22:11
  • 1
    I agree with @DominicCronin, but typically if you see such errors in the logfile and the documentation (or your working example) tell you there is a mismatch, you should report it to Customer Support so the error can be fixed (by a documentation or Schema update, whatever is appropriate). Aug 2 '13 at 8:08
  • btw. could it be that the properties section is only there for Nuno and Mihai? Aug 2 '13 at 8:10
  • Good idea, I've shared the scenario with Support. In this case the documentation and the logfile match and suggest <Renderer Class="com.tridion.tcdl.TCDLRenderer"> probably isn't needed. But it seems significant enough that I'd rather check to be sure.
    – Alvin Reyes
    Aug 2 '13 at 8:51
  • It is very possible we're getting and sharing the same setting (copy/paste error?). Though I see the renderer tag on both a shared training instance as well as my "personal" VM.
    – Alvin Reyes
    Aug 2 '13 at 9:01
3

A documentation defect was put in for this. 2013 GA cd_dynamic_conf.xsd does not have Renderer now. The sample config file also does not include this anymore. So if you upgraded from 2011/2011 SP1, the Renderer part is there but it will continue to work. Just that validation error is thrown. The doc defect requests the CD config upgrade section include a note about this so as to avoid such an error.

Amit Mehta

2
  • Much appreciated, Amit. I removed the unneeded tag and this matches the system.
    – Alvin Reyes
    Aug 2 '13 at 18:43
  • Follow-up: this is described in (at least) the SDL Tridion 2013 SP1 Upgrade Manual that the Renderer section no longer applies, especially if upgrading from 2011 or 2011 SP1.
    – Alvin Reyes
    Dec 24 '13 at 5:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.