4

I have just configured Tridion publishing and its working without any error. status of each publishing file/page shows "success" but on file system it writes some schema folders it doesn't copy the actual file I published. some of the folders I can see on my file system directory are

  • componentmeta
  • componentpresentationmeta
  • metas
  • references
  • schemas

Can anybody help me to understand why my published file is not being copied and why these folders are being created.

If I delete these folders and republish my page again, it automatically creates these folders aagain.

Below is is peice of the settings in my cd_storage_conf.xml file

<Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" Id="dmoFile" defaultFilesystem="true">
  <Root Path="C:\inetpub\Final" />
</Storage>
<ItemTypes defaultStorageId="dmoFile" cached="false">   
  <Item typeMapping="Page" cached="false" storageId="dmoFile"/>
  <Item typeMapping="Binary" cached="false" storageId="dmoFile"/>

I have a mapping for page and binaries and both are configured to use file system, so far I don't have any sql server mapping.

3 Answers 3

6

Your cd_storage_conf.xml looks fine, however when only using filesystem storage, you might want to add a Data root separate from the web root.

For that I believe you just setup two filesystem storages, one being the default and the other for your Pages and binaries. Something like this:

<Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" Id="data">
  <Root Path="c:\inetpub\website-data" />
</Storage>
<Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" Id="website">
  <Root Path="c:\inetpub\website" />
</Storage>

<ItemTypes defaultStorageId="data" cached="false">
  <Item typeMapping="Page" cached="false" storageId="website" />
  <Item typeMapping="Binary" cached="false" storageId="website" />
</ItemTypes>

Please note when you set the attribute defaultFilesystem="true", items from different Publications are stored in separate subfolders. The subfolders are created in the location indicated by the Path attribute using the name PubID , where ID is the ID of the Publication. For example, if <Root Path="c:\website\", then items published from a Publication with TCMURI tcm:0-23-1 are stored in the folder c:\website\Pub23\.

3
  • I have added 2 folders now, one for website and second for data, data folder is getting updated with some files but website folder is blank, it has just bin folder with same configuration files as my httpdeployer has, I also noticed that my "tridion\incoming\zip" folder is always blank, when i do publishing some file are created and deleted automatically from incoming folder but zip folder is always blank.
    – Ali
    Nov 6, 2013 at 6:38
  • @ShafaqatAli I'm a bit at a loss here, you have accepted my answer, which would indicate it is solved, but if still nothing ends up in your website folder, then there obviously is no solution yet. With regards to the deployment and the transport package, can you edit your question and add the information about your Publication Target configuration? Anything related to the question should always be in the question, and not in the comments, the risk of that information getting lost or not seen is too big and that will not help you in getting your question correctly answered. Nov 6, 2013 at 8:56
  • yes it is solved now.
    – Ali
    Nov 6, 2013 at 23:40
4

Take a look at your cd_storage_conf.xml and confirm is the Page mapped to database or to file system. It is explained here (login required). In summary, you should see the following element:

    <ItemTypes defaultStorageId="defaultdb" cached="false">
...
        <Item typeMapping="Page" storageId="defaultFile" cached="false" />

Either you will not have the typeMapping="Page" element and your defaultStorageId="defaultdb" will be database, or you will have a page mapping and it will be overridden to database. All of the storageId should also be defined in that same configuration file. If you are using an http deployer then the configuration file should be in the bin\config otherwise it should be in [TRIDION_HOME]\config.

3
  • Did you ensure that you are looking at the the right config file? The deployer will try to look for a config directory in its own bin directory and if not found will revert to the tridion_home bin directory. Also after ensuring the the config restart the deployer.
    – Likhan
    Nov 5, 2013 at 7:28
  • For the time being i have copied same configuration in all 3 config files, which includes bin\config in home directory, bin\config in http uploader and bin\config in the directory where i am trying to copy the files, I did reset IIS, all tridion windows services and just did system restart. I believe configuration is fine but actual file I published is not being copied instead some metadata is getting copied.
    – Ali
    Nov 5, 2013 at 7:46
  • Recommend ensuring that the page is resolved, if yes, then stop the deployer and then publish, and check the zipped package to ensure it contains the page in the page folder. The zipped transport package will be placed where the destination for the publication target has been configured and the deployers incoming directory. Apologies if all my questions seems stupid, however, it is probably better to check everything anyways.
    – Likhan
    Nov 5, 2013 at 8:28
3

Do following:

  • Change the defaultFilesystem=true to false as shown below
<Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory"
                                             Id="dmoFile" defaultFilesystem="false">

this will ensure nothing else apart from Page (and folders corresponding to SG) is published to the File System

  • Ensure in your Storage Config, there is no separate entry for the specific publication from which you are publishing and if it is, then for Page type mapping a DB storage id is specified there as well

Can you check and share the result and we will be in more better position to help you.

3
  • I changed the "defaultfilesystem" attribute to false and even tried to remove this attribute, did IIS reset, restarted windows services but no change, my "final" folder is getting updated every time i publish any thing but it creates some xml files in some folders defined above in original question. It was working well don't know what happened suddenly.
    – Ali
    Nov 6, 2013 at 0:17
  • one thing i have noticed it that I have defined a mapping for page but I am publishing a "component" from CMS, do i need to define a separate mapping for "component"? some of them are ".xml" files and I have defined mapping for them but nothing happens.<Item typeMapping="ComponentPresentation" itemExtension=".Xml" storageId="dmoFile"/>
    – Ali
    Nov 6, 2013 at 4:29
  • 1
    If you are publishing a component, then all the pages on which this component has been used will be published- In the Publish Modal you may check all them by clicking - Show All Items to Publish. If the underlying schema of the component is also associated with a Dynamic Template and if you have not define a defaultdb storage type then the corresponding xml presentation will go to the file system. I would recommend defining a default DB storage type and apply it at the top level, then for all the items that you want to get publish at FS, make an entry for it in config and assign the FS storage Nov 6, 2013 at 5:31

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.