Setting up Experience Optimization for use with Experience Manager in a file system publishing environment
If you use Experience Optimization in combination with Experience Manager, and if you use custom TCDL tags in an environment that uses publishing to a file system, some steps are required to make your setup work.
Procedure
- From the installation media folder Content Delivery\roles\xo\extension-deployer\lib\, copy the following files to the services\preview-service\ subfolder of your Preview Service microservice root location:
- xo-configuration-common-VERSION.jar
- xo-tcdl-VERSION.jar
where VERSION is the version and build number of the JAR file.
- Copy smarttarget_conf.xml from the configuration location of the Experience Optimization Management Service to the configuration location of the Preview Service.
- Open smarttarget_conf.xml in its new location for editing.
- Ensure the presence of a
<Tcdl>section, directly below the<Analytics>section, with the following content, specifically the<Prefix>section and the<OutputHandlers>element:<Tcdl> <Prefix> <Java>smarttarget</Java> <DotNet>smarttarget</DotNet> <Jstl> <Core>c</Core> </Jstl> </Prefix> <!-- TCDL Placeholders and replacements --> <Placeholder> <Pattern>##(.+?)##</Pattern> <Replace> <DotNet> <Query><![CDATA[<%# Eval("$1") %>]]></Query> <!-- configuration for deprecated controls. left for backward compatibility --> <ItemContentInfo><![CDATA[<%# ((ItemContent)Container.Parent).$1 %>]]></ItemContentInfo> <!-- end deprecated --> <ItemsHeader><![CDATA[<%# ((Items)Container.Parent).$1 %>]]></ItemsHeader> <NavigationSection><![CDATA[<%#((NavigationSection)Container.Parent).$1 %>]]></NavigationSection> </DotNet> <Java> <Query>\${item.$1}</Query> <!-- configuration for deprecated tags. left for backward compatibility --> <ItemContent>\${searchResult.$1}</ItemContent> <ItemContentInfo>\${$1}</ItemContentInfo> <!-- end deprecated --> <Items>\${searchResult.$1}</Items> <ItemsHeader>\${$1}</ItemsHeader> <NavigationSection><![CDATA[<c:out value="\${section.$1}" />]]></NavigationSection> </Java> <Rel> <Default>#{$1}</Default> <ComponentPresentation>#{item.$1}</ComponentPresentation> <NavigationSection>#{section.$1}</NavigationSection> <NavigationSectionHeader>#{section.$1}</NavigationSectionHeader> <NavigationSectionFooter>#{section.$1}</NavigationSectionFooter> <NavigationLink>#{link.$1}</NavigationLink> <ItemTemplate>#{item.$1}</ItemTemplate> </Rel> </Replace> </Placeholder> <OutputHandlers>com.tridion.smarttarget.tcdl.JavaTagOutputHandler,com.tridion.smarttarget.tcdl.DotNetServerControlOutputHandler</OutputHandlers> </Tcdl> - Save and close smarttarget_conf.xml.
- In the same location, open tcdl-conf.xml for editing.
- In the file, ensure the presence of the following below the
<Properties>section:<DefaultTags Name="${tcdltags:-tcm}"/> <TagBundle Resource="com/tridion/smarttarget/conf/tagbundle.xml"/> - Save and close tcdl-conf.xml.
- Restart the Preview Service microservice.