Невозможно публиковать двоичные файлы для файловой системы в SDL Web 8.1


4

Я использую новую веб-службу Deployer для SDL Web 8.1 (установлен как службу Windows), но, похоже, не удается опубликовать в файловой системе двоичные файлы ,

Когда я публикую все в базе данных брокера, публикация прошла успешно. Когда я устанавливаю все, чтобы перейти к файловой системе, публикация выходит из строя. Если я удалю изображения из компонентов, публикация будет успешной. В моем сценарии публикации мне нужно все, чтобы перейти в файловую систему.

Сообщение об ошибке в журнале Deployer:

2016-06-24 09:42:12,927 ERROR DeployPipelineExecutor - Unable to start processing deployment package with transactionId: tcm:0-20600-66560 
com.tridion.deployer.ProcessingException: Phase: Deployment Prepare Commit Phase failed. Unable to prepare transaction: tcm:0-20600-66560. Unable to store item inside current transaction 
  at com.tridion.deployer.phases.DeployPipelineExecutor.runMainExecutePhase(DeployPipelineExecutor.java:219) [cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  at com.tridion.deployer.phases.DeployPipelineExecutor.doExecute(DeployPipelineExecutor.java:107) [cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  at com.tridion.deployer.phases.DeployPipelineExecutor.execute(DeployPipelineExecutor.java:71) [cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  at com.tridion.deployer.TransactionManager.lambda $pipelineRunnable$ 1(TransactionManager.java:345) [cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:1.8.0_74] 
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:1.8.0_74] 
  at java.lang.Thread.run(Unknown Source) ~[na:1.8.0_74] 
Caused by: com.tridion.deployer.ProcessingException: Unable to prepare transaction: tcm:0-20600-66560 
  at com.tridion.deployer.phases.PreCommitPhase.handleFailure(PreCommitPhase.java:126) ~[cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  at com.tridion.deployer.phases.PreCommitPhase.execute(PreCommitPhase.java:106) ~[cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  at com.tridion.deployer.phases.DeployPipelineExecutor.runMainExecutePhase(DeployPipelineExecutor.java:207) [cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  ... 6 common frames omitted 
Caused by: com.tridion.deployer.ProcessingException: Unable to store item inside current transaction 
  at com.tridion.deployer.phases.PreCommitPhase.runPrepare(PreCommitPhase.java:156) ~[cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  at com.tridion.deployer.phases.PreCommitPhase.execute(PreCommitPhase.java:101) ~[cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  ... 7 common frames omitted 
Caused by: com.tridion.broker.StorageException: Can't read file c:\tridion\dataweb8\binaryvariant\binaryurl\/Images/opengraph_tcm7-7558.jpg 
  at com.tridion.broker.meta.MetaUtils.readURIFromFile(MetaUtils.java:109) ~[cd_datalayer-8.1.1-1005.jar:8.1.1-1005] 
  at com.tridion.storage.filesystem.binaryvariant.FSBinaryVariantDAO.findByMetaFile(FSBinaryVariantDAO.java:435) ~[cd_datalayer-8.1.1-1005.jar:8.1.1-1005] 
  at com.tridion.storage.filesystem.binaryvariant.FSBinaryVariantDAO.findByURL(FSBinaryVariantDAO.java:223) ~[cd_datalayer-8.1.1-1005.jar:8.1.1-1005] 
  at com.tridion.storage.filesystem.binaryvariant.FSBinaryVariantDAO.findByURL(FSBinaryVariantDAO.java:212) ~[cd_datalayer-8.1.1-1005.jar:8.1.1-1005] 
  at com.tridion.storage.deploy.workers.BinaryCheckerWorker.doDeploy(BinaryCheckerWorker.java:86) ~[cd_datalayer-8.1.1-1005.jar:8.1.1-1005] 
  at com.tridion.deployer.model.transaction.TransactionLogItemWorker.doWork(TransactionLogItemWorker.java:27) ~[cd_model-8.1.1-1005.jar:8.1.1-1005] 
  at com.tridion.deployer.phases.PreCommitPhase.runPrepare(PreCommitPhase.java:150) ~[cd_deployer-8.1.1-1008.jar:8.1.1-1008] 
  ... 8 common frames omitted 
Caused by: java.nio.file.NoSuchFileException: c:\tridion\dataweb8\binaryvariant\binaryurl\Images\opengraph_tcm7-7558.jpg 
  at sun.nio.fs.WindowsException.translateToIOException(Unknown Source) ~[na:1.8.0_74] 
  at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source) ~[na:1.8.0_74] 
  at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source) ~[na:1.8.0_74] 
  at sun.nio.fs.WindowsFileSystemProvider.newByteChannel(Unknown Source) ~[na:1.8.0_74] 
  at java.nio.file.Files.newByteChannel(Unknown Source) ~[na:1.8.0_74] 
  at java.nio.file.Files.newByteChannel(Unknown Source) ~[na:1.8.0_74] 
  at java.nio.file.Files.readAllBytes(Unknown Source) ~[na:1.8.0_74] 
  at com.tridion.util.FileUtils.readFile(FileUtils.java:443) ~[cd_common_util-8.1.1-1002.jar:8.1.1-1002] 
  at com.tridion.util.FileUtils.readFile(FileUtils.java:417) ~[cd_common_util-8.1.1-1002.jar:8.1.1-1002] 
  at com.tridion.broker.meta.MetaUtils.readURIFromFile(MetaUtils.java:101) ~[cd_datalayer-8.1.1-1005.jar:8.1.1-1005] 
  ... 14 common frames omitted 

Права доступа, похоже, не является проблемой, как страница файлы писать хорошо, когда нет изображения в компоненте?

Я использую из коробки По умолчанию шаблон страницы и по умолчанию Component Template

Отрывок из моего файла конфигурации хранилища для Deployer:

<Storages> 
  <Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" Id="defaultFile" defaultFilesystem="false"> 
   <Root Path="c:\tridion\dataweb8" /> 
  </Storage> 
</Storages> 

<ItemTypes defaultStorageId="defaultFile" cached="false"> 
</ItemTypes> 

Версия Детали:

SDL Web Content Manager - Build 8.1.0

Проводник Web Content Manager Explorer - сборка 8.1.0.194

Update Version - Накопительное обновление 1 для СВД Web 8 (март 2016)

UPDATE

кажется, что проблема с отображением типа метаданных, как мои изображения метаданные настроены против них. Установка этого defaultdb и публикации работ:

<Item typeMapping="Metadata" cached="true" storageId="defaultdb"/> 

Установка в defaultFile и публикации не удается:

<Item typeMapping="Metadata" cached="true" storageId="defaultFile"/> 

К сожалению, это не вариант для меня, как я требую все, чтобы перейти в файловую систему

0

Я могу подтвердить, что это известный дефект, так как мы столкнулись с аналогичной проблемой с одним из наших других клиентов, но я не уверен, что для этого было выпущено исправление.

Обращайтесь в службу поддержки клиентов за дополнительной информацией о исправлении.


1

попытаться установить это в вашем cd_storage_conf.xml:

<Storages> 
    <Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" Id="defaultFile" defaultFilesystem="false"> 
     <Root Path="c:\tridion\dataweb8" /> 
    </Storage> 
</Storages> 

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

удачи!

второе издание:

проверить свойства публикации, если вы хорошо настроили свой путь с обратной косой черты «\» или нормальный слэш «/»

enter image description here

  0

Это дает двоичные файлы для публикации, но в моем сценарии я хочу публиковать все в файловой системе, поэтому установка defaultStorageId = "defaultdb" не является вариантом. Я предполагаю, что это означает, что это должно быть одно из других типов, которые являются проблемой? 24 июн. 162016-06-24 11:37:07

  0

Да, я думаю, что это проблема с метаданными typeMapping. Установка этого параметра на defaultdb и публикация страницы прекращается. Установка этого параметра по умолчаниюФайл и публикация не удались 24 июн. 162016-06-24 11:39:56

  0

Что касается вашего обновления второго выпуска: путь в порядке, но в документации он говорит: «Этот параметр больше не уместен, если вы используете новую среду публикации, представленную в SDL Web 8.». 24 июн. 162016-06-24 11:51:50

  0

@ Ryan - так что/Images/не следует читать из свойств публикации, но это так? и обращение к изображениям \ не имеет никакого эффекта? 27 июн. 162016-06-27 09:21:26

  0

Я только что получил ответ от SDL, и у них есть исправление для него, которое я ожидаю, чтобы его отправили, а затем я буду применять его, чтобы проверить, исправляет ли он проблему 27 июн. 162016-06-27 12:52:36


0

Может быть, вы должны ознакомиться с документацией о Метаданные в файловой системе: http://docs.sdl.com/LiveContent/content/en-US/SDL%20Web-v5/GUID-12152D7A-A02C-4073-BE86-B188D108109E «Метаданные, хранящиеся в локальной файловой системе, устарели от SDL Tridion 2011 SP1 в целях хранения метаданных в базе данных. Для хранения метаданных в базе данных требуются лицензии на базы данных».