1

I have added a component in a page and published it in Tridion 2013. However after running the application I am not seeing that component on my page. I have a feeling that the content that I published did not stored in the broker database.

Can you please tell me how should I see the value that it got stored in the component in the broker database?

Please send me the query to retrieve the values that were stored in the component.

  • 1
    "component in a page" are you using Dynamic Component Presentations or regular on page ones. If you are using regular ones, then your problem is likely in your template code not writing out the component presentation at publish time. – Chris Morgan Apr 8 '14 at 20:05
  • 2
    When in doubt, use the default templates... – Nuno Linhares Apr 8 '14 at 20:26
1

Documentation regarding your question can be found here : sdllive content (login required)

Also examples can be found here....

1

The best way to find out if a Component Presentation is Published to the Broker is to query the Broker for it. Optionally you could check the Broker database itself, but since the datamodel is officially not public I don't like to suggest that route.

Using the Content Delivery API you can use the following code to check if a Component Presentation exists in the Broker and get its content from there:

int publicationId = 1;
string componentUri = "tcm:1-2";
string templateUri = "tcm:1-4-32";

// get Component Presentation from Broker
using (ComponentPresentationAssembler cpa = new ComponentPresentationAssembler("tcm:0-0-0", Page))
using (ComponentPresentationFactory cpf = new ComponentPresentationFactory(publicationId))
using (ComponentPresentation cp = cpf.GetComponentPresentation(componentUri, templateUri))
{
    if (cp != null)
    {
        // Component Presentation exists in the Broker
        string cUri = string.Format("tcm:{0}-{1}", publicationId, cp.ComponentId);
        string tUri = string.Format("tcm:{0}-{1}-32", publicationId, cp.ComponentTemplateId);

        // use ComponentPresentationAssembler since cp.Content does not resolve REL
        string content = cpa.GetContent(cUri, tUri);
    }
}

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.