-2

我们正在使用自定义编写的代理类来处理 Mihai Cadaru 提供的 Web 服务通信(附截图),以解决动态链接问题。为了形成 LinkUrl 参数来解析动态链接/组件链接,我们遵循以下示例方法。但它的抛出错误(堆栈跟踪,调试错误)附加。请验证并提供我们出错的输入。请让我们知道我们传递的参数是否正确

我们使用的方法:

-->我们有两个组件 Comp1,Comp2(可以创建相同/不同的架构,猜猜这不是问题)

--> Comp2 被用作 Comp1 中的组件链接(我们在 comp1 中有一个组件链接字段)

--> 为每个组件创建了两个动态 CT 的 DCT1、DCT2(CT 具有简单的 DWT,默认完成操作)注意:还尝试将 DD4T TBB 保持在与其他方法类似的 CT 集中,但最终得到相同的错误结果

-->DWT 代码有 --> SomeLink(用于渲染组件链接,以便 LinkResolver TBB 将解析链接)还保留 OTHWayLink(用于交叉检查)

-->创建了两个页面Page1(有Comp1+DCT1),Page2(有Comp2 +DCT2)并将两个页面都发布到broker DB

--> 我们的目标是解析 Comp1 内容中存在的组件链接 (Comp2),因此,

--> 对于 GetDynamicLink(),我们提供了如下参数。在上面附加的日志跟踪中引发了错误:400(错误请求)和异常。

   Param’s List --> string targetPageUri, string targetComponentUri, string targetTemplateUri, string linkText, bool showTextOnFail, string linkTagAttributes

   Param’s we passed--> Page2 tcmid, Comp2 tcmid, DCT2 tcmid ,”some link txt”,true,”some string”;

--> 对于 GetComponentLink(),我们提供了如下参数。在这种情况下,我们尝试将动态和非动态 CT 的组合保留在页面内,这也会在上面附加的日志跟踪中引发错误:400(错误请求)和异常。

   Param’s List --> string targetComponentUri, string sourcePageUri, string excludeTemplateUri, string linkText, bool showTextOnFail, bool showAnchor, string linkTagAttributes

   Param’s we passed --> Comp2 tcmid, Page1 tcmid, DCT1 tcmid, “some link txt”,true,true,”some string” ;

我们正在参考链接的实时文档

米海代理代码示例:代理类代码 错误信息:错误

4

2 回答 2

1

在我看来,您的 odata 网站未在 d:/inetpub/wwwroot/odata/bin 中正确设置,因为错误消息是找不到类。

您能否确认您已将正确的 SDL Tridion dll/lib 和配置 XML 文件安装/放置到您的网站中?

这是一篇关于 SDL Tridion 如何加载这些文件的精彩文章:http : //www.tridiondeveloper.com/how-tridion-content-delivery-loads-configuration-files-in-dotnet Odata 应用程序/网站启动并运行,这将为您正常工作。

于 2012-09-11T15:29:46.037 回答
0

Content Delivery 链接服务的参数记录在此页面上(需要登录)。我将在下面粘贴一段摘录,但您真的应该简单地将您的字符串与该页面上提到的参数进行比较。

Component Links
Command:/linking/componentLink (Java) or /linking.svc/componentLink (.NET)

Input parameters:
Parameter name        Default value
sourcePageURI         (none)
targetComponentURI    (none)
excludeTemplateURI    (none)
linkTagAttributes     (empty)
linkText              (empty)
showTextOnFail        true
showAnchor            false

通过将这些与您粘贴在屏幕截图中的代码进行交叉检查,一切似乎都排成一行。

那回答你的问题。但我怀疑它是否能解决您的问题,因为这似乎(正如 John Winter 所建议的)更具基础设施:您在相关目录中缺少 cd_link.jar 。

如果您发现难以进一步诊断此问题,我建议联系此自定义代码的原作者(或 SDL 或其合作伙伴之一)。这将确保您从在 JAR、DLL 和配置文件加载故障排除方面经验丰富的人那里获得帮助。

于 2012-09-12T11:31:46.160 回答