2012-10-20 4 views
5

최근 Tridion 5.3에서 Tridion 2011 SP1로 업그레이드했습니다.ASCX 웹 컨트롤이 데이터베이스에 저장되지 않았습니다.

기존 구현에는 다양한 동적 구성 요소 템플릿이 있습니다. 몇몇 CTs 출력 형식의 경우 CTX 출력 형식의 일부인 ASCX Web Control은 HTML 조각입니다.

출판 후 우리는 을 방문했습니다. 1) ASCX WebControls은 스토리지 데이터베이스 (SQLServer)에 저장되지 않습니다. Tridion 5.3에서 그들은 존재했다. 2) HTML 조각이 데이터베이스에 저장됩니다.

이진 파일, 페이지, 내장 된 구성 요소 템플릿은 파일 시스템에 저장되고 동적 구성 요소 템플릿은 SQL Sever 데이터베이스에 저장됩니다.

우리는 우리의 cd_storage_config에서 뭔가를 놓쳤다 고 생각합니다. 첨부 파일을 찾으십시오.

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration Version="6.1" 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> 
     <Storage Type="persistence" Id="sqlserver" 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="local" /> 
       <Property Name="portNumber" Value="1433" /> 
       <Property Name="databaseName" Value="TridionBroker" /> 
       <Property Name="user" Value="TridionBrokerUser" /> 
       <Property Name="password" Value="mypass" /> 
      </DataSource> 
     </Storage> 
     <Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" Id="defaultFile" defaultFilesystem="false"> 
      <Root Path="d:\Inetpub\MyPortal" /> 
     </Storage> 
     <Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" Id="defaultDataFile" defaultFilesystem="true" defaultStorage="true"> 
      <Root Path="d:\Inetpub\MyPortal\data" /> 
     </Storage> 
     <SearchFilter Name="SearchFilter" Class="com.tridion.broker.components.meta.MsSqlSearchFilterHome" defaultStorageId="sqlserver"/> 
    </Storages> 
</Global> 
<ItemTypes defaultStorageId="defaultDataFile" cached="false"> 
    <Item typeMapping="Query" storageId="sqlserver"/> 
    <Item typeMapping="Page" cached="false" storageId="defaultFile"/> 
    <Item typeMapping="Binary" cached="false" storageId="defaultFile"/> 
    <Item typeMapping="ComponentPresentation" itemExtension=".Jsp" storageId="sqlserver"/> 
    <Item typeMapping="ComponentPresentation" itemExtension=".Asp" storageId="sqlserver"/> 
    <Item typeMapping="ComponentPresentation" itemExtension=".Xml" storageId="sqlserver"/> 
    <Item typeMapping="ComponentPresentation" itemExtension=".Txt" storageId="sqlserver"/> 
    <Item typeMapping="Metadata" cached="true" storageId="sqlserver"/> 
    <Item typeMapping="XSLT" cached="true" storageId="sqlserver"/> 
</ItemTypes> 
<License Location="d:\Tridion\config\cd_licenses.xml"/> 

답변

10

당신은 스토리지 설정에서 바인딩에 ASCX이 없습니다. 5.3에서는 이전에는 Asp 바인딩이었습니다.

변경 다음

<Item typeMapping="ComponentPresentation" itemExtension=".Asp" storageId="sqlserver"/> 

에 :

<Item typeMapping="ComponentPresentation" itemExtension=".ascx" storageId="sqlserver"/> 

또한, tridion 2011 년 각 유형에 대한 매핑을 지정할 필요가 없습니다 (TXT 등, JSP 등)의 경우 당신은 모두 db에 저장되기를 원한다.

당신은 단순히이 작업을 수행 할 수 있습니다 위의 방법이 절대적으로 정확하지만

<Item typeMapping="ComponentPresentation" storageId="sqlserver"/> 
+0

, 나는 우리가 .ASP 태그를 교체하는 대신 다른 항목 typemapping 노드를 추가 할 수 있다고 생각합니다. 귀하의 웹 사이트에이 노드를 교체하여 영향을 미칠 수있는 일부 ASP 컨텐츠가있을 수 있습니다. –

관련 문제