【问题标题】:Tridion New UI Preview Site is not reflecting with the changes unless pulished除非发布,否则 Tridion 新 UI 预览网站不会反映更改
【发布时间】:2012-07-01 02:43:39
【问题描述】:

我有新的 UI 设置,并注意到每当我更新页面时,它并没有随着更新的更改而刷新。我也没有看到 page_{sessionId/GUID}.aspx 创建。

检查了会话预览数据库,我看到 PAGE_CONTENT 表中的更改包含新呈现的内容,因此会话预览似乎工作正常,但预览站点无法获取更改并刷新 UI。

我检查了 .aspx 的所有预览处理程序和映射,并确保它们在 web.config 中是正确的。关于为什么预览网站没有显示更改的任何想法?

我在 cd_storage_conf.xml 中设置了会话预览数据库。

<StorageBindings>
  <Bundle src="preview_dao_bundle.xml"/>
</StorageBindings>
<Wrappers>
  <Wrapper Name="SessionWrapper">
    <Timeout>120000</Timeout>
    <Storage Type="persistence" Id="db-session-webservice" 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="localhost" />
        <Property Name="portNumber" Value="1433" />
        <Property Name="databaseName" Value="Tridion_Broker_SessionPreview" />
        <Property Name="user" Value="usr" />
        <Property Name="password" Value="pwd" />
      </DataSource>
    </Storage>
  </Wrapper>
</Wrappers>

web.config(处理程序):

<add verb="GET" path="*.htm" type="Tridion.ContentDelivery.Preview.Web.StaticFileHandler" />
<add verb="GET" path="*.jpg" type="Tridion.ContentDelivery.Preview.Web.StaticFileHandler" />
<add verb="GET" path="*.png" type="Tridion.ContentDelivery.Preview.Web.StaticFileHandler" />
<add verb="GET" path="*.html" type="Tridion.ContentDelivery.Preview.Web.StaticFileHandler" />
<add name="Tridion.ContentDelivery.Preview.Web.PreviewContentModule" type="Tridion.ContentDelivery.Preview.Web.PreviewContentModule" />

日志(去掉时间戳和DEBUG前缀):

ClaimStore - put: uri=taf:session:id, value=tridion_db59279b-7d37-4b2e-ad98-eaaa6af7038e
ClaimStore - put: uri=taf:session:id, value=tridion_db59279b-7d37-4b2e-ad98-eaaa6af7038e
ClaimStore - put: uri=taf:tracking:id, value=tridion_d1fa1017-a28d-4f48-a790-b74f78c69314
ClaimStore - put: uri=taf:tracking:id, value=tridion_d1fa1017-a28d-4f48-a790-b74f78c69314
SearchClaimProcessor - No match found for referrer string http://uidemo.practice.com/en/Product/musk.aspx
SearchClaimProcessor - No match found for referrer string http://uidemo.practice.com/en/Product/musk.aspx
ClaimStore - put: uri=taf:claim:ambientdata:footprintcartridge:devicetype, value=Desktop
ClaimStore - put: uri=taf:claim:ambientdata:footprintcartridge:devicetype, value=Desktop
ClaimStore - put: uri=taf:claim:ambientdata:footprintcartridge:mobiledevice, value=NotMobile
ClaimStore - put: uri=taf:claim:ambientdata:footprintcartridge:acceptlanguage, value=en-US
ClaimStore - put: uri=taf:claim:ambientdata:footprintcartridge:mobiledevice, value=NotMobile
ClaimStore - put: uri=taf:claim:ambientdata:footprintcartridge:acceptlanguage, value=en-US
PageHandler - The session wrappers are correctly installed.

关于可能出现什么问题的任何想法/指针...? (抱歉,帖子太长了)

【问题讨论】:

    标签: tridion tridion-2011 tridion-content-delivery


    【解决方案1】:

    在“正确安装了会话包装器”之后。消息,一旦我做出更改,我会在我的日志中得到很多反馈(在调试中)。这是短版...

    DEBUG PageHandler - The session wrappers are correctly installed.
    DEBUG SessionManagerImpl - Retrieved the session on the current execution thread: PreviewSession [sessionId=db5c1e84-649f-4635-bbdd-fb6683e98b07, expirationDate=2012-06-29 12:31:24.65].
    DEBUG PageHandler - The session db5c1e84-649f-4635-bbdd-fb6683e98b07 was found loaded!
    DEBUG DynamicMetaRetriever - Searching for pageMeta for url='http://localhost:81/'.
    DEBUG MetaResolverFactory - Fetching meta resolver for PAGE_META meta data type.
    DEBUG MetaResolverFactory - Fetching meta resolver for PAGE_META meta data type.
    DEBUG MappingsResolverImpl - Getting publication mapping for http://localhost:81/
    DEBUG MappingsStrategyContext - Resolving url using strategy com.tridion.dynamiccontent.publication.mappingsstrategy.impl.StaticMappingsStrategy
    DEBUG StaticMappingsStrategy - Resolving: http://localhost:81/
    DEBUG ProtocolOptionMatcher - Mapped Protocol match with the url. Protocol is [http].
    DEBUG ProtocolOptionMatcher - The calculated weight is [1].
    DEBUG DomainOptionMatcher - The Domain extracted from the url is: [localhost]
    DEBUG DomainOptionMatcher - The mapped Domain is: [localhost]
    DEBUG DomainOptionMatcher - Mapped Domain match with the url. Mapped Domain is [localhost] and extracted Domain is [localhost].
    DEBUG DomainOptionMatcher - The calculated weight is [10000].
    DEBUG PortOptionMatcher - The Port extracted from the url is: [:81]
    DEBUG PortOptionMatcher - The mapped Port is: [81]
    

    [...]

    DEBUG JPAPreviewSessionDAO - Retrieving PreviewSession by sessionId: db5c1e84-649f-4635-bbdd-fb6683e98b07
    

    [...]

    SessionManagerImpl - Retrieved the session on the current execution thread: PreviewSession [sessionId=db5c1e84-649f-4635-bbdd-fb6683e98b07, expirationDate=Fri Jun 29 12:31:25 EDT 2012].
    

    然后它会加载正确的更新。

    我没有发现您发布的配置有任何问题,所以这是我的 cd_ambient_conf.xml 配置;

    <Configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="6.1" xsi:noNamespaceSchemaLocation="schemas/cd_ambient_conf.xsd">
      <Cartridges>
        <Cartridge File="cd_webservice_preview_cartridge.xml"/>
        <Cartridge File="footprint_cartridge_conf.xml"/>
      </Cartridges>
      <ClaimStoreProvider>com.tridion.siteedit.preview.PreviewClaimStoreProvider</ClaimStoreProvider>
    </Configuration>
    

    和 cd_dynamic_conf:

    <?xml version="1.0" encoding="UTF-8"?>
    <Configuration Version="6.1"
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                   xsi:noNamespaceSchemaLocation="schemas/cd_dynamic_conf.xsd">
        <URLMappings>
            <StaticMappings>
                <Publications>
                    <Publication Id="5">
                        <Host Domain="localhost" Port="81" Protocol="http" Path=""/>
                    </Publication>
                </Publications>
            </StaticMappings>
            <StorageMapping IdentifyPublicationByProperty="publicationUrl"/>
        </URLMappings>
        <TCDLEngine>
            <Renderer Class="com.tridion.tcdl.TCDLRenderer">
                <Properties>
                    <Property Name="prop1" Value="value1"/>
                    <Property Name="prop2" Value="value2"/>
                </Properties>
            </Renderer>
        </TCDLEngine>
    </Configuration>
    

    希望这会有所帮助。

    没有

    【讨论】:

    • 谢谢努诺。我也在仔细检查配置和日志条目..
    • 我想我找到了问题所在,但还不确定解决方案。我在同一个 IIS 目录下有两种语言的网站,一种是 /en,另一种是 /fr。由于某种原因,UI 无法理解或无法正常使用虚拟目录 /en 和 /fr。我什至添加了 ,但没有运气。我尝试了相同的配置,没有虚拟目录并且 UI 工作正常..
    • 有趣。这应该可行 - 您可以尝试在 cd_link_conf 上使用相同的配置(使用路径设置)吗?
    • 我已将ROOT结构组目录更改为/en或/es。链接配置没有任何路径设置,我也假设 cd_dynamic_conf.xml 也是如此。由于它不起作用,所以我尝试将路径添加到动态 conf。现在我尝试对 link_conf 使用相同的方法,现在链接解析显示多个 /en (无论如何).. UI 仍然没有更新.. 我正在为 IIS 上的失败请求启用一些跟踪,看看我是否能得到任何东西..
    • 更新:我能够完成它的某些部分,基本上我从 webapp 和服务的 cd_dynamic_conf.xml 中删除了 /en。现在我看到我正在编辑的页面正在使用 guid 等创建临时页面,但是预览会引发错误,例如无法找到文件 artdetails.aspx,即使 artdetail.aspx 和 artdetails_GUID.aspx 都存在于 docroot 上。当您有虚拟目录时,用户界面会感到困惑。我会为此开一张支持票..仅供参考..如果我删除虚拟目录并将所有内容保留在根目录下,一切正常..
    【解决方案2】:

    解决方案/修复

    在预览应用程序上应用新的 hotifx“CD_2011.1.1.81686”解决了这个问题。 Hotifx可以从https://www.sdltridionworld.com/downloads/hotfixes/SDL_Tridion_2011_SP1_1/index.aspx下载(需要登录)

    【讨论】:

      【解决方案3】:

      编辑此文件 cd_ambient_conf.xml;取消注释以下行

      <Cartridge File="footprint_cartridge_conf.xml"/>
      

      然后尝试编辑您将能够预览更改

      感谢和问候 阿比吉特·安格尔

      【讨论】:

        猜你喜欢
        • 2012-07-06
        • 1970-01-01
        • 2015-03-09
        • 1970-01-01
        • 1970-01-01
        • 2016-05-05
        • 2011-05-26
        • 2020-10-21
        • 2016-05-27
        相关资源
        最近更新 更多