7

None of the comp links in my staging website are getting resolved. I have checked that Tridion tag has been registered in web.config. Also the deployer output is given below.

<tridion:ComponentLink runat="server" ComponentURI="tcm:1-23" LinkText="something" 
                       LinkAttributes="" 
                       PageURI="tcm:1-34-64" TemplateURI="tcm:0-0-0" 
                       AddAnchor="false" TextOnFail="false" />

I have checked the cd_core log in debug mode and here are it's stamp. Please suggest.

2013-10-25 09:41:27,718 DEBUG ComponentLink - ComponentLink.getLinkInfo(): is not null
2013-10-25 09:41:27,718 DEBUG ComponentLink - ComponentLink.getLinkInfo(): read all published components for component 748
2013-10-25 09:41:27,718 DEBUG ComponentLink - ComponentLink Could not find metadata for page: 1666
2013-10-25 09:41:27,718 DEBUG ComponentLink - ComponentLink.getLink(): start retrieving pathinfo for this page: 1666
2013-10-25 09:41:27,718 DEBUG ComponentLink - Found component with score 2147483647
2013-10-25 09:41:27,718 INFO  ComponentLink - ComponentLink.getLink(): couldn't create a link to any other instance of component presentation 748:0 from page 1666

Update 1 - I am using Tridion 2011 SP1 and the same links works in dev and test.

Update 2 - Hi Bart, yes the TridionDB in deployer's storage config is different from the website's storage config. Is this the cause?

7
  • the fact that this link works in dev and test means nothing, if you forgot to publish a Page in production, then it is expected behavior for the link to not resolve of course. republising the Page where you expect the link to go to should be one of the first things I would do when figuring out why the link doesn't resolve. The next step would be to check the cd_storage_conf.xml from the Deployer and the website and make sure they are pointing to the same locations (and database). Commented Oct 28, 2013 at 12:20
  • We have tried republishing. I can browse all the pages directly but cannot browse via the comp links are they are coming as dead links. I was thinking as the configs are copied normally from one environment to another so had mentioned that the same configuration is working in dev/test
    – user734
    Commented Oct 28, 2013 at 13:08
  • the cd_storage_conf.xml can only be copied if you are not using a database, else I would expect that the database server and/or database names would at least differ between environments. So still worth showing your Deployer cd_storage_conf.xml. Commented Oct 28, 2013 at 13:41
  • Sure. I have asked for the same as I don't have access on stage. I have one logical question. Since deployer deploys the contents so it must refer it's storage config to check the mappings. I always think why then any delivery website also has the storage config since it's not required to deploy anything.
    – user734
    Commented Oct 28, 2013 at 15:11
  • The delivery website needs to read info which is stored (linking info in your case), hence it needs to details of where it was stored by the Deployer. So the same configuration is used for that. Commented Oct 28, 2013 at 15:24

2 Answers 2

2

Looking at the results of your logfile it is resolving, but not finding a link:

2013-10-25 09:41:27,718 DEBUG ComponentLink - Found component with score 2147483647

This line tells you the link is resolved and it "found" a Component with the maximum score (which if I recall correctly means that the Component cannot be found on a published Page).

Then right after it you find a line which you will always see at the end of the resolve action:

2013-10-25 09:41:27,718 INFO ComponentLink - ComponentLink.getLink(): couldn't create a link to any other instance of component presentation 748:0 from page 1666

This line basically indicates the end of the resolve action. Please note that this line does NOT mean that no link could be found, it indicates resolving is done and no other results for your Component are available. As mentioned, the actual result you should find in the previous lines.

So what I can conclude from this is that either the Pages which the Component is on your are linking to are not Published, or your linking information isn't configured correctly. The latter could be a missmatch in the configuration from the Deployer and the actual website. To give you more details on this, please edit your question and add the required information (what version of SDL Tridion are you using, and what Deployer/website configuration to you have?).

2
  • Shall I share the cd_link config for the deployer and website?
    – user734
    Commented Oct 28, 2013 at 12:00
  • No please share the cd_storage_conf.xml from your Deployer and make sure that its settings match those of the website. The cd_link_conf.xml just hold information on how the link is generated, not from where it is resolved. Commented Oct 28, 2013 at 12:19
3

If you have write access to the Staging server then you can try switching the TextOnFail attribute from "false" to "true" (and back). This will tell you whether the control is executing (and thus registered correctly).

If changing the TextOnFail attribute does affect whether or not the text is displayed on the rendered page, then it will be because the Tridion Content Delivery doesn't think that the Component that you are linking to is published.

Some things to check:

  1. The connection details in your cd_Storage_conf.xml are correct (incl. Database connection strings and Publication overrides)
  2. The 'Priority' of the Component Template that is rendering the Component (that you are linking to) is not set to 'Never link'.
  3. That the Cache Channel Service is configured correctly. (You could try temporarily turning off the caching.)

UPDATE: It is also worth double-checking that you have definitely published the Component that you are linking to! Can you browse to the page that this is on?

3
  • I dont of access on the staging server, need to ask somebody. Also i have cross checked #2 and it's not 'Never'. How can I find Cache service on CMS.
    – user734
    Commented Oct 28, 2013 at 10:04
  • @user734 The Cache Channel Service is configured on the Content Delivery side - normally on the Staging server (unless the system has been out-scaled). In Tridion 2011, this is configured within the 'ObjectCache' section at the top of the cd_storage_conf.xml file. Commented Oct 28, 2013 at 10:09
  • Yes I can browse all the pages directly but cannot browse via the comp links are they are coming as dead links. I have checked the 'ObjectCache' and it's Enabled property is set as false.
    – user734
    Commented Oct 28, 2013 at 11:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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