我一直在JSP开发站点上配置XPM(Tridion 2012 UI Update)。它是一个多功能的一揽子软件包,在同一台服务器上使用Content Manager,Databases和Staging进行开发。
我做了以下配置:
定义的临时Web应用程序(称为JSPStaging并设置为jspstaging.project.dev的主机头),它接收内容并将此内容从HTTPUpload Web App放入其自己的文件夹中,该应用程序在出版物中定义目标在CME
我添加了Java Session Preview Webservice(名为cd_preview_webservice)
目前我的网站由Tomcat 7运行,IIS 7.5用于将请求路由到处理jspstaging.project.dev的端口8080(Tomcat)。
我知道这不是一个理想的情况,但我必须做。
手头的问题: 我目前已经成功实现了XPM(或者至少是仪表板,编辑组件并保存它们的能力) 但是,只要您想要更新页面,它有时会刷新,有时会返回错误:
The remote server returned an error: (404) Not Found.
这是(橙色)Tridion消息。我不完全确定上面描述的404错误与SDL Live Content中记录的错误相同。
这是服务器上事件查看器中的错误:
Unable to update the changes using OData Service. The remote server returned an error: (404) Not Found. Component: Tridion.SiteEdit.FastTrackPublishing Errorcode: 1003 User: NT AUTHORITY\NETWORK SERVICE
因此,我正在追随这个彻头彻尾的惊人blogpost阿尔伯特罗姆斯写道,在他的文章的第2点他提到导航到odata.svc。我似乎无法在我的临时或会话预览Web应用程序中的任何位置找到该文件。我以前安装过Tridion的.NET应用程序,虽然安装介质上的.NET应用程序(以及其他文件中)有一个acces_token和一个odata.svc文件,我注意到会话预览的Web服务的JAVA安装没有有这些文件。但是,稍后在install guide中您需要这些文件来设置发布。
当我按照JSP站点部分并填写发布目标的会话预览选项卡上的字段时,我无法导航到服务器本身的这个odata URL,现在是
http://localhost:8080/cd_preview_webservice/cdws/odata.svc/
Tridion Logging没有说错误,用于登台和会话预览Web应用程序,以及Tomcat日志。他们甚至说OData工作得很好,据我所知......
如果我无法导航到上面发布的网址,这是否意味着有问题,或者404错误是因为这个?
修改
我的登台web.xml:
<?xml version="1.0" encoding="UTF-8"?>
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd” id =“WebApp_ID”version =“2.5”&gt; 内容交付Web服务
<jsp-config>
<taglib>
<taglib-uri>cd_tags</taglib-uri>
<taglib-location>/WEB-INF/lib/cd_tags.tld</taglib-location>
</taglib>
</jsp-config>
<listener>
<listener-class>
com.tridion.storage.persistence.session.SessionManagementContextListener
</listener-class>
</listener>
<!--
OData and linking Web service
-->
<servlet>
<servlet-name>Content Delivery Web service</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.resourceConfigClass</param-name>
<param-value>com.sun.jersey.api.core.ClassNamesResourceConfig</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.config.property.classnames</param-name>
<param-value>com.tridion.webservices.odata.ODataWebservice;com.tridion.webservices.linking.LinkingService;com.tridion.webservices.odata.JAXBContextResolver</param-value>
</init-param>
</servlet>
<filter>
<filter-name>Ambient Data Framework</filter-name>
<filter-class>com.tridion.ambientdata.web.AmbientDataServletFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Ambient Data Framework</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet-mapping>
<servlet-name>Content Delivery Web service</servlet-name>
<url-pattern>/cdws/*</url-pattern>
</servlet-mapping>
<filter>
<filter-name>Page Content Filter</filter-name>
<filter-class>com.tridion.preview.web.PageContentFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Page Content Filter</filter-name>
<url-pattern>/cdws/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>com.tridion.webservices.odata.ODataContextListener</listener-class>
</listener>
<filter>
<filter-name>Binary Content Filter</filter-name>
<filter-class>com.tridion.preview.web.BinaryContentFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Binary Content Filter</filter-name>
<url-pattern>/Images/*</url-pattern>
</filter-mapping>
答案 0 :(得分:0)
您提到已添加cd_preview_webservice,但是,错误消息指示它无法正常工作。在Java方面,你不会看到odata.svc文件,因为这个url是由jar中的一个类处理的,所以不用担心。
在Tomcat控制台中,是否显示应用程序已部署/启动且没有错误?
您提到的“/cd_preview_webservice/cdws/odata.svc/”的网址中也包含“/ cdws /”。这看起来有点不规律。通常,url是“/cd_preview_webservice/odata.svc”。你的web.xml是什么样的?