动态组件模板不再进入代理db

时间:2012-09-07 09:23:08

标签: tridion tridion-content-delivery

我已经对我的蓝图结构进行了调整,因此以前可发布的网络出版物现在已经变成了父级别的不可发布的网络出版物。已经创建了一个新的子网络出版物来取代它。

因此,这创建了一个新的出版物ID。我已使用此新ID更新了所有配置,并且能够将内容成功发布到文件系统上的演示服务器。动态组件演示文稿也使用新ID发布到代理数据库中。

但是,最近我的一个动态组件模板已停止发布到代理。它发布到文件系统,但该组件的记录不会出现在代理的LINK_INFO表中。这意味着使用此模板的内容动态链接在网站上失败。

有没有人可以告诉我他们是否知道为什么会这样?

更新2:找到一些有趣的东西......动态链接实际上是有效的,但仅适用于某些组件模板。我发现这是通过使用ComponentLink.GetLink(字符串)方法来查看它是否会返回一个链接...对于某些内容类型它,但对于以前有链接的其他人,它现在没有,即使重新发布这些模板:■

更新:cd_storage.xml

<Configuration Version="6.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:noNamespaceSchemaLocation="schemas/cd_storage_conf.xsd">
 <Global>
  <ObjectCache Enabled="false">
   <Policy Type="LRU" Class="com.tridion.cache.LRUPolicy">
    <Param Name="MemSize" Value="16mb"/>
   </Policy>
   <Features>
    <Feature Type="DependencyTracker" Class="com.tridion.cache.DependencyTracker"/>
   </Features>
  </ObjectCache>
  <Storages>
   <StorageBindings>
     <Bundle src="AudienceManagerDAOBundle.xml" />
   </StorageBindings>
   <Storage Type="persistence" Id="defaultdb" dialect="MSSQL"
            Class="com.tridion.storage.persistence.JPADAOFactory">
     <Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" 
           CheckoutTimeout="120" />
     <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
      <Property Name="serverName" Value="lon1udb01.int.rroom.net" />
      <Property Name="portNumber" Value="1433" />
      <Property Name="databaseName" Value="uat_mal_Tridion_Broker_2" />
      <Property Name="user" Value="uat_mal" />
      <Property Name="password" Value="mj][zdvd=h" />
     </DataSource>
    </Storage>
    <Storage Type="persistence" Id="profiledb" dialect="MSSQL" 
          Class="com.tridion.storage.persistence.JPADAOFactory" 
          defaultStorage="false">
      <Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" 
            CheckoutTimeout="120" />
      <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
       <Property Name="serverName" Value="lon1udb01.int.rroom.net" />
       <Property Name="portNumber" Value="1433" />
       <Property Name="databaseName" Value="uat_mal_Tridion_submgmt" />
       <Property Name="user" Value="uat_mal" />
       <Property Name="password" Value="mj][zdvd=h" />
      </DataSource>
    </Storage>
    <Storage Type="persistence" Id="trackingdb" dialect="MSSQL" 
          Class="com.tridion.storage.persistence.JPADAOFactory" 
          defaultStorage="false">
     <Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" 
           CheckoutTimeout="120" />
      <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
        <Property Name="serverName" Value="lon1udb01.int.rroom.net" />
        <Property Name="portNumber" Value="1433" />
        <Property Name="databaseName" Value="uat_mal_Tridion_tracking" />
        <Property Name="user" Value="uat_mal" />
        <Property Name="password" Value="mj][zdvd=h" />
      </DataSource>
    </Storage>
    <Storage Type="filesystem"  Id="defaultFile" 
              Class="com.tridion.storage.filesystem.FSDAOFactory" 
              defaultFilesystem="false" 
              defaultStorage="false">
      <Root Path="c:\websites\live" />
    </Storage>
    <Storage Type="filesystem"  Id="defaultFileAssets" 
                Class="com.tridion.storage.filesystem.FSDAOFactory" 
                defaultFilesystem="false" 
                defaultStorage="true">
      <Root Path="c:\websites\live\malvern.com.en\Assets" />
    </Storage>
    <Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory"
             Id="malenctrls" defaultFilesystem="false" defaultStorage="false">
      <Root Path="c:\websites\live\malvern.com.en\usercontrols" />
    </Storage> 
    <Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" 
             Id="malcnctrls" defaultFilesystem="false" defaultStorage="false">
      <Root Path="c:\websites\live\malvern.com.cn\usercontrols" />
    </Storage>      
    <SearchFilter Name="SearchFilter" 
                  Class="com.tridion.broker.components.meta.MsSqlSearchFilterHome" 
                  defaultStorageId="defaultdb"/>
  </Storages>
  <Transaction Timeout="60000" MonitorInterval="5000"/>
 </Global>
 <ItemTypes defaultStorageId="defaultdb" cached="false">
  <Item storageId="profiledb" typeMapping="AudienceManagerProfile" cached="false"/>
  <Item storageId="trackingdb" typeMapping="AudienceManagerTracking" cached="false" />
  <!-- GLOBAL MASTER -->
  <Publication Id="22" defaultStorageId="defaultdb" cached="false">
    <Item storageId="defaultFile" typeMapping="Page" cached="false" />
    <Item storageId="defaultFile" typeMapping="Binary" cached="false" />
    <Item storageId="malenctrls" typeMapping="ComponentPresentation" 
          itemExtension=".ascx" cached="false" />
  </Publication>
  <!-- CHINESE WEB -->
  <Publication Id="15" defaultStorageId="defaultdb" cached="false">
    <Item storageId="defaultFile" typeMapping="Page" cached="false" />
    <Item storageId="defaultFile" typeMapping="Binary" cached="false" />
    <Item storageId="malcnctrls" typeMapping="ComponentPresentation" 
          itemExtension=".ascx" cached="false" />
  </Publication>
 </ItemTypes>
 <License Location="c:/tridion/config/cd_licenses.xml"/>

3 个答案:

答案 0 :(得分:1)

你有

<Storage Type="filesystem" Id="defaultFileAssets" 
  Class="com.tridion.storage.filesystem.FSDAOFactory" defaultFilesystem="false" 
  defaultStorage="true">

并且cd_storage_conf.xml中的任何位置都没有TypeMappings定义。这使得“defaultFileAssets”成为部署者的首选存储位置。

我通常会期待这样的事情

<ItemTypes defaultStorageId="defaultdb" cached="false">
    <Item typeMapping="Page" cached="false" storageId="defaultFile"/>
<Item typeMapping="Binary" storageId="defaultFile" cached="false"/>
</ItemTypes>
<配置节点中的

确保您发布的配置实际上正在使用也是非常有帮助的;您可以在Tridion生成的日志文件中查看此信息(启用调试日志记录),因为它记录了它正在使用的配置文件;不止一次,我只是因为看到了错误的配置文件而对问题感到困惑......

答案 1 :(得分:1)

我从问题中的存储配置中删除了很多无用的注释。现在很容易看出,正如Quirijn所怀疑的那样,有特定于出版物的配置在起作用。如果您的网络出版物ID之前是15或22,并且这已经改变,那将解释您的问题。

答案 2 :(得分:0)

我认为这个问题可能是由过期的cd_licence文件引起的,但我无法确认,请SDL支持人员告诉我它是否如此