我最近使用Tridion 2011 SP1(带有修补程序SP1)安装并配置了Smarttarget 2011。
发布页面时,我在部署期间收到错误。
以下是我在部署者日志中看到的错误部分。
2012-06-13 16:44:29,781 INFO模块 - 未配置TransformProcessor,在部署模块com.tridion.deployer.modules.SchemaDeploy之前不会转换文件 2012-06-13 16:44:29,781 DEBUG TCDLEngine - TCDL:使用内置标签注册表 2012-06-13 16:44:29,781 DEBUG TCDLEngine - 加载TCDL标签包com / tridion / smarttarget / tcdl / tagbundle.xml 2012-06-13 16:44:29,781 ERROR ModuleFactory - 无法创建模块 com.tridion.util.TridionReflectionException:目标类的构造函数抛出异常,null,null at com.tridion.util.ReflectionUtil.loadClassInstanceWithTypes(ReflectionUtil.java:74)[cd_core.jar:na] 在com.tridion.deployer.ModuleFactory.createModule(ModuleFactory.java:109)〜[cd_deployer.jar:na] 在com.tridion.deployer.Processor.configure(Processor.java:81)[cd_deployer.jar:na] 在com.tridion.deployer.Processor。(Processor.java:65)[cd_deployer.jar:na] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)[na:1.6.0_11] at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)[na:1.6.0_11] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)[na:1.6.0_11] at java.lang.reflect.Constructor.newInstance(Unknown Source)[na:1.6.0_11] at com.tridion.util.ReflectionUtil.loadClassInstanceWithTypes(ReflectionUtil.java:63)[cd_core.jar:na] 在com.tridion.util.ReflectionUtil.loadClassInstance(ReflectionUtil.java:106)[cd_core.jar:na] 在com.tridion.deployer.ProcessorFactory.createProcessor(ProcessorFactory.java:130)[cd_deployer.jar:na] 在com.tridion.deployer.ProcessorFactory.createProcessors(ProcessorFactory.java:114)[cd_deployer.jar:na] 在com.tridion.deployer.workers.ProcessorWorker.doWork(ProcessorWorker.java:61)[cd_deployer.jar:na] 在com.tridion.deployer.phases.ProcessingPhase.execute(ProcessingPhase.java:73)[cd_deployer.jar:na] at com.tridion.deployer.phases.DeployPipelineExecutor.runMainExecutePhase(DeployPipelineExecutor.java:186)[cd_deployer.jar:na] 在com.tridion.deployer.phases.DeployPipelineExecutor.doExecute(DeployPipelineExecutor.java:97)[cd_deployer.jar:na] 在com.tridion.deployer.phases.DeployPipelineExecutor.execute(DeployPipelineExecutor.java:61)[cd_deployer.jar:na] 在com.tridion.deployer.TransactionManager.handleDeployPackage(TransactionManager.java:80)[cd_deployer.jar:na] 在com.tridion.deployer.queue.QueueLocationHandler $ 1.run(QueueLocationHandler.java:176)[cd_deployer.jar:na] at java.util.concurrent.Executors $ RunnableAdapter.call(Unknown Source)[na:1.6.0_11] at java.util.concurrent.FutureTask $ Sync.innerRun(Unknown Source)[na:1.6.0_11] at java.util.concurrent.FutureTask.run(Unknown Source)[na:1.6.0_11] at java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(Unknown Source)[na:1.6.0_11] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source)[na:1.6.0_11] 在java.lang.Thread.run(未知来源)[na:1.6.0_11] 2012-06-13 16:44:29,781 ERROR ProcessorFactory - 无法加载处理器 com.tridion.util.TridionReflectionException:目标类的构造函数抛出异常,null,null at com.tridion.util.ReflectionUtil.loadClassInstanceWithTypes(ReflectionUtil.java:74)〜[cd_core.jar:na] 在com.tridion.util.ReflectionUtil.loadClassInstance(ReflectionUtil.java:106)〜[cd_core.jar:na] 在com.tridion.deployer.ProcessorFactory.createProcessor(ProcessorFactory.java:130)[cd_deployer.jar:na] 在com.tridion.deployer.ProcessorFactory.createProcessors(ProcessorFactory.java:114)[cd_deployer.jar:na] 在com.tridion.deployer.workers.ProcessorWorker.doWork(ProcessorWorker.java:61)[cd_deployer.jar:na] 在com.tridion.deployer.phases.ProcessingPhase.execute(ProcessingPhase.java:73)[cd_deployer.jar:na] at com.tridion.deployer.phases.DeployPipelineExecutor.runMainExecutePhase(DeployPipelineExecutor.java:186)[cd_deployer.jar:na] 在com.tridion.deployer.phases.DeployPipelineExecutor.doExecute(DeployPipelineExecutor.java:97)[cd_deployer.jar:na] 在com.tridion.deployer.phases.DeployPipelineExecutor.execute(DeployPipelineExecutor.java:61)[cd_deployer.jar:na] 在com.tridion.deployer.TransactionManager.handleDeployPackage(TransactionManager.java:80)[cd_deployer.jar:na] 在com.tridion.deployer.queue.QueueLocationHandler $ 1.run(QueueLocationHandler.java:176)[cd_deployer.jar:na] at java.util.concurrent.Executors $ RunnableAdapter.call(Unknown Source)[na:1.6.0_11] at java.util.concurrent.FutureTask $ Sync.innerRun(Unknown Source)[na:1.6.0_11] at java.util.concurrent.FutureTask.run(Unknown Source)[na:1.6.0_11] at java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(Unknown Source)[na:1.6.0_11] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source)[na:1.6.0_11] 在java.lang.Thread.run(未知来源)[na:1.6.0_11] 2012-06-13 16:44:29,781 ERROR ProcessorWorker - 无法配置处理器 com.tridion.configuration.ConfigurationException:无法加载处理器,目标类的构造函数抛出异常,null,null,目标类的构造函数抛出异常,null,null 在com.tridion.deployer.ProcessorFactory.createProcessor(ProcessorFactory.java:133)〜[cd_deployer.jar:na] 在com.tridion.deployer.ProcessorFactory.createProcessors(ProcessorFactory.java:114)〜[cd_deployer.jar:na] 在com.tridion.deployer.workers.ProcessorWorker.doWork(ProcessorWorker.java:61)〜[cd_deployer.jar:na] 在com.tridion.deployer.phases.ProcessingPhase.execute(ProcessingPhase.java:73)[cd_deployer.jar:na] at com.tridion.deployer.phases.DeployPipelineExecutor.runMainExecutePhase(DeployPipelineExecutor.java:186)[cd_deployer.jar:na] 在com.tridion.deployer.phases.DeployPipelineExecutor.doExecute(DeployPipelineExecutor.java:97)[cd_deployer.jar:na] 在com.tridion.deployer.phases.DeployPipelineExecutor.execute(DeployPipelineExecutor.java:61)[cd_deployer.jar:na] 在com.tridion.deployer.TransactionManager.handleDeployPackage(TransactionManager.java:80)[cd_deployer.jar:na] 在com.tridion.deployer.queue.QueueLocationHandler $ 1.run(QueueLocationHandler.java:176)[cd_deployer.jar:na] at java.util.concurrent.Executors $ RunnableAdapter.call(Unknown Source)[na:1.6.0_11] at java.util.concurrent.FutureTask $ Sync.innerRun(Unknown Source)[na:1.6.0_11] at java.util.concurrent.FutureTask.run(Unknown Source)[na:1.6.0_11] at java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(Unknown Source)[na:1.6.0_11] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source)[na:1.6.0_11] 在java.lang.Thread.run(未知来源)[na:1.6.0_11]
更新了部署者配置。
<Processors>
<!-- A Processor is triggered by the Deployer to process an incoming
TransportPackage based on the 'Action' command in the
ProcessorInstructions. The default Processor triggers modules
sequentially as they are defined in a Processor section. The 'Class'
attribute defines the Processor class that will be used for processing an action.
'Phase' attribute is optional and it defines in which processing phase this processor is active. 'Phase'
attribute can have following values: pre-processing, processing, post-processing, pre-transaction and post-transaction-->
<!-- <Processor Action="Deploy" Class="com.tridion.deployer.Processor" Phase="post-transaction"> -->
<Processor Action="Deploy" Class="com.tridion.deployer.Processor">
<!-- A Module is triggered by a Processor to process incoming instructions.
The 'Type' attribute needs to be unique within a Processor and serves
as a symbolic identifier. The 'Class' attribute defines the
implementation used for any type of Module. Replace or add modules to
implement custom Deployer behavior. -->
<Module Type="SchemaDeploy" Class="com.tridion.deployer.modules.SchemaDeploy"/>
<Module Type="PageDeploy" Class="com.tridion.deployer.modules.PageDeploy">
<!-- The transformer enables the TCDL Engine -->
<Transformer Class="com.tridion.deployer.TCDLTransformer"/>
</Module>
<Module Type="BinaryDeploy" Class="com.tridion.deployer.modules.BinaryDeploy"/>
<Module Type="ComponentDeploy" Class="com.tridion.deployer.modules.ComponentDeploy"/>
<Module Type="TemplateDeploy" Class="com.tridion.deployer.modules.TemplateDeploy"/>
<Module Type="PublicationDeploy" Class="com.tridion.deployer.modules.PublicationDeploy"/>
<!-- This module enables deployment of taxonomies -->
<Module Type="TaxonomyDeploy" Class="com.tridion.deployer.modules.TaxonomyDeploy"/>
<Module Type="ComponentPresentationDeploy" Class="com.tridion.deployer.modules.ComponentPresentationDeploy">
<!-- The transformer enables the TCDL Engine -->
<Transformer Class="com.tridion.deployer.TCDLTransformer"/>
</Module>
<!-- This module enables deployment of structure groups -->
<Module Type="StructureGroupDeploy" Class="com.tridion.deployer.modules.StructureGroupDeploy"/>
</Processor>
<Processor Action="Undeploy" Class="com.tridion.deployer.Processor">
<Module Type="PageUndeploy" Class="com.tridion.deployer.modules.PageUndeploy"/>
<Module Type="ComponentPresentationUndeploy" Class="com.tridion.deployer.modules.ComponentPresentationUndeploy"/>
<!-- This module enables the undeploy of taxonomies -->
<Module Type="TaxonomyUndeploy" Class="com.tridion.deployer.modules.TaxonomyUndeploy"/>
<!-- This module enables the undeploy of structure groups -->
<Module Type="StructureGroupUndeploy" Class="com.tridion.deployer.modules.StructureGroupUndeploy"/>
</Processor>
<Processor Action="Deploy" Class="com.tridion.deployer.Processor" Phase="post-transaction">
<Module Type="SmartTargetDeploy" Class="com.tridion.smarttarget.deployer.FredhopperDeployerModule">
<Transformer Class="com.tridion.deployer.TCDLTransformer"/>
</Module>
</Processor>
<Processor Action="Undeploy" Class="com.tridion.deployer.Processor" Phase="post-transaction">
<Module Type="SmartTargetUndeploy" Class="com.tridion.smarttarget.deployer.FredhopperUndeployModule"/>
</Processor>
答案 0 :(得分:1)
Bukubapi解释说这是缺少SmartTarget罐子的特例。以下是一些其他安装细节和步骤,帮助我完成了一些最近的SmartTarget安装。
使用Install SDL SmartTarget 2011 SP2.bat
为内容交付安装SmartTarget SP1提供了3个选项:
此外,它还允许您选择Webapp root path
,Deployer config location
和32对64位选项。
通过选择更新部署者的选项,它更新了以下内容(此特定设置适用于带有ASP.NET的Windows Server 2008 R2上的httpupload站点。)
我可能不应该选择部署者更新,因为我使用的是httpupload。
由于Tridion内容传送错误(除了代码)通常涉及dll,jar或configs,因此通过执行以下操作(对于SmartTarget或任何类型的CD安装),有助于了解更改的内容。
dir/l/b > files.txt
提示中的 cmd
是另一种快速而又脏的方法来解决CD广口,dll或配置问题。