我有一个SDL Tridion 2011 SP1 HR1映像,其中安装了Experience Manager。我可以成功浏览我的登台网站,登录ExM并更改内容和页面。但是,当我尝试创建新页面时,我收到400(错误请求)错误。这是记录的错误:
无法使用OData服务更新更改 远程服务器返回错误:(400)错误请求。
组件:Tridion.SiteEdit.FastTrackPublishing
错误代码:1003
用户:NT AUTHORITY \ NETWORK SERVICEStackTrace信息详情:
在System.Net.HttpWebRequest.GetResponse()
在System.Data.Services.Client.DataServiceContext.SaveResult.BatchRequest(Boolean replaceOnUpdate)
在System.Data.Services.Client.DataServiceContext.SaveChanges(SaveChangesOptions选项)
在Tridion.SiteEdit.FastTrackPublishing.ServiceImplementation.Preview(IEnumerable1 publishedItemsInfo, TcmUri publishingTargetId)
1 publishedItemsInfo,TcmUri publishingTargetId)
at Tridion.SiteEdit.FastTrackPublishing.ServiceImplementation.Preview(IEnumerable
在SyncInvokePreview(Object,Object [],Object [])
在System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(对象实例,对象[]输入,对象[]和输出)
在System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
在System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
在System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)
在System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
我刚检查了CD日志文件,可以看到此错误:
012-10-16 12:29:05,782错误JPADAOFactory - 无法加载JPA DAO,名称为:TrackedRequest和class:com.tridion.storage.TrackedRequestDAO,因DAO构造过于异常 org.springframework.beans.factory.BeanCreationException:在URL中定义名为'TrackedRequestDAO'的bean时出错[jar:file:/ C:/ASP.NET/Preview/httpupload/bin/lib/tracking_core.jar!/ com / tridion /storage/TrackedRequestDAO.class]:bean的实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例化bean类[com.tridion.storage.TrackedRequestDAO]:构造函数抛出异常;嵌套异常是com.tridion.configuration.ConfigurationException:遇到意外的方言:。应将TrackedRequest项类型配置为使用受支持的数据库。
我收到图片时已为已发布的内容启用了内联编辑,但我需要自己创建内容类型和页面类型。我以通常的方式执行此操作,创建一个页面,将其标记为页面类型,向其添加原型内容,以及配置命名和存储(用于创建的内容)的设置。我还重新启动了IIS,关闭了COM +包并重新启动了Tridion服务主机和发布服务。
任何人都可以解释为什么我会收到此错误,以及如何修复它?
修改
因此错误表明存储配置中存在问题。以下是相关部分:
<Storage Id="trackingDB" Class="com.tridion.storage.persistence.JPADAOFactory" Type="persistence" dialect="MSSQL">
<Pool CheckoutTimeout="120" IdleTimeout="120" MonitorInterval="60" Size="5" Type="jdbc"/>
<DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
<Property Name="serverName" Value="SDLPE.pe.local"/>
<Property Name="portNumber" Value="1433"/>
<Property Name="databaseName" Value="tridion_tracking"/>
<Property Name="user" Value="encrypted:u9aIOj9uX2IcL1rI6U5ndA=="/>
<Property Name="password" Value="encrypted:vprUfrnluvIQAVRNSMTx5g=="/>
</DataSource>
</Storage>
和
<Item cached="true" typeMapping="TrackedRequest" storageId="trackingDB"/>
修改
我刚刚浏览了日志文件,发现了这个:
2012-10-16 14:12:43,448 DEBUG ConfigurationItemTypeLoader - 加载映射:trackedrequest to storage:trackingDB
2012-10-16 14:12:43,448 DEBUG ConfigurationItemTypeLoader - 加载映射:trackingbatch到存储:trackingDB
2012-10-16 14:12:43,448 DEBUG ConfigurationItemTypeLoader - 加载映射:同步记录到存储:trackingDB
2012-10-16 14:12:43,448 DEBUG ConfigurationItemTypeLoader - 加载映射:trackingitem到存储:trackingDB
似乎应该正确地选择配置,但它仍然无法从相关的存储定义中读取方言。
答案 0 :(得分:2)
最后,该问题与为页面类型指定的页面元数据有关。我看到的错误记录不会影响网站的性能,因此误导了我。