Hot answers tagged

12

You need two DB Broker DB - It is configured in httpUpload and your Delivery website Session Preview DB - it will be used by Session preview service and this service is consumed by XPM. No separate db for XPM. This db will also configured in storage config of your website. HttpUpload and Odata.svc would be separate websites


10

Take a look at my blog post http://yatb.mitza.net/2013/07/a-java-service-oriented-architecture.html. It explains a Service Oriented approach to consuming OData content from a web-application using Java (namely OData4J). There is an example of the actual OData call.


9

The Tridion oData web service is used to query content, not to insert content in the CMS. If I understand correctly your question, you would like to be able to retrieve the Keyword Metadata by querying the oData web service. This is possible by querying the CustomMetas oData entity with for example this C# Expression query in Linqpad http://www.linqpad.net/...


9

I'm not sure you have the right level of expectations there, as it seems that you would want Java/Eclipse to provide you the same benefits that Microsoft / .NET / LINQ provide when working with OData services. The webservice and its capabilities are exactly the same independently of the client you use - .NET, Odata4j, JayData - but the client itself will ...


8

Tridion Content Delivery does not expose the content fields, it exposes something called a "Component Presentation", which is the result of rendering the components with your Component Templates. A very common approach for fully dynamic application models (like DD4T) is to render the content of the component as structured data (using XML or JSON) and then ...


7

OData is a self-descriptive service, meaning that if you look at http://blah.net/odata.svc/ you will see a list of entities that the service will return: The collection of entities you're interested in is the last one in the list above, i.e. 'Templates'. I think this is the query you're looking for: http://blah.net/odata.svc/Templates(PublicationId=18,...


7

Try the below OData query to get the Parent and Child keyword hierarchy details. /odata.svc/Publications(362)/Keywords/?$expand=Children,Parent This is one web service call and once you have the results, use LINQ to query for a specific keyword. The above using OData expand option to get Parent and Child node details. e.g; expand=Node1 --> expands ...


7

The problem turned out to be the pre-packaged WAR file missing the cd_preview_web.jar. Simply copy this Jar from the install location's lib folder to your app's deployment location.


7

Considering you want the component presentations your main query should be for that and then filter on the presence of specific custom metas like odata.svc/ComponentPresentations?$filter=(TemplateId eq 40) and (PublicationId eq 1) and (Component/CustomMetas/any(m: m/KeyName eq 'Rank' and m/StringValue eq 'A'))&$expand=Component/CustomMetas which should ...


7

It seems like I missed this step in the manual: <ExcludedPaths> <Path>/access_token.svc/</Path> </ExcludedPaths> In the ADF config file


7

The easiest way to find out the endpoint URL is to check the Windows environment variable on the CM server using the following PowerShell command: get-item env:tridion_ttm_serviceurl This should give a value such as: http://localhost:81/ttm201601 Here's some code that I used recently on my Tridion Sites 8.5 environment for getting the Client: ...


6

If you do not need to manage the product data as content in anyway (edit it, translate it, link to it, put it through workflow etc.) there is no reason to put it in a Content Management System like Tridion at all - particularly if it runs to thousands of items. Tridion just becomes a middleman sitting between your web application and Product Information ...


6

I assume you know DD4T for Java is an MVC application (Spring MVC). It uses factories to read Tridion content and metadata and to transform it into DD4T class model. The factories work with different providers, which actually read the content/metadata from the Content Delivery database. One of such providers would be the OData provider. Now funny enough, ...


6

It depends on the roles you have installed in your system. In the HR2 comes all the jars that must be updated depending on your initial setup. It seems that you don't have UGC installed, then you don't need to include the ugc_webservice in your update. You can see this url (login required) to see the list of jars needed to be included, in case you have ...


6

Tridion has a loosely coupled architecture that means that the CD side it not tight to the CM side, there is no information about the dynamic component path in the CD side. If it is necessary to use the path in your web application I would suggest to use custom metadata for it. There are few ways to do it. Add a path field in the metadata section of your ...


6

Session Preview is a feature of Experience Manager that allows editors to make, and then view, updates to content across multiple pages without having to continually check-in and republish the content. It also ensures that if Editor B updates (a different piece of content on) the same page that Editor A is working on, then this is also reflected in what ...


6

After going through all possible API's, I got a solution to retrieve component template based on component template names. Mainly you need to use ItemTitleCriteria to retrieving the component templates by names. Thanks to @NickoliRoussakov for the clue given. using (ItemTypeCriteria mItemTypeCriteria = new ItemTypeCriteria(32)) { using (...


6

Linking service is moved to root of the content service. You can access it like http://my.sdlweb8.server:86/linking For example to get Component link http://localhost:8081/linking/componentLink?sourcePageURI='<id>'&targetComponentURI='<id>'&excludeTemplateURI='<id>'....


6

You could create a (dummy) Page based on a Page Template which collects and renders the required CT metadata of all CTs (in JSON or XML format). Publishing the metadata of all CTs can be achieved by publishing that single (dummy) Page. Likewise, retrieving the metadata of all CTs can be achieved by requesting that single Page.


5

It looks like you need to brush up on your "read the documentation" skills. This functionality was added with Tridion 2011 SP1. Read all about it in this topic in Live Content "Forwarding Claims to a WebService" (login required). Short answer: yes, you can. How to do it is described in the documentation.


5

If you look at http://myserver.com/odata.svc/Keywords you'll see a linear collection of Keyword entities. Keywords that are nested within other Keywords (i.e. Children) will have a <link href=".../Parent" /> property point to the parent keyword, while any Keywords that have nested Keyword (i.e. Parents) will have HasChildren=true and <link href="......


5

This suggests that your Cache is enabled in the OData Web Service, but you didn't configure the Cache Channel Service, which is required for notifications to flow from the deployer to the web application(s). See this section (login required) of the Documentation for details on how to configure cache synchronization. If this is just a dev machine, you could ...


5

Welcome to the Community and thanks for putting up a clear question with all the details needed. At the very first stage I see it as a Java version issue as jdk 1.7 is not officially supported for SDL Tridion 2011 SP1. Can you try installing jdk 1.6 (Not any of the specific version between 1.6.0.26 to 1.6.0.34) and try again. I hope it should resolve the ...


5

--Update based on Nuno's comment below -- OData does not internally use the CD API. It has a different implementation, but like the CD API, is also based on the JPA standard. --end update-- OData caches the results, so does the CD API. However, you must consider where the caches reside and the trip your data has to make to reach the end user upon request....


5

The OData web service is not a public API and has in fact been replaced in SDL Web 8. For that reason, I recommend against attempting to use it like this.


5

In short: no. You can only bind one database to each service. May I ask why you're using 3 different brokers?


5

Whether creating a REST API over OData is a good option for you, nobody can answer but you I would say. Simply using a REST service is commonly accepted as one of the easier ways for external systems to connect, but if that should use OData or something else is something you can come up yourself with best, it might also be depending on the external systems. ...


4

No, the content has to come from the database. It may be that you have local file system binaries or links to urls in your webservice content. In the event that you do, you can manage this via configuring the cd_link_conf.xml file, this allows you to add a domain, protocol and port to any links/paths stored in the db content. So you're perfectly able to to ...


4

There is known bug with OData Tridion 2011 SP1 OData Web Service. Please follow this link from one of Tridion Expert (Mihai) : http://yatb.mitza.net/2013/07/a-java-service-oriented-architecture.html (Look for the below section) You don't need to modify the producer code, you can simply modify the odata4j client code. Trouble with Edm.DateTime There ...


4

OK, annoyingly i found the issue. If I call the url with http://URL/oData.svc/Pages it fails ...if I call it with http://URL/odata.svc/Pages (basically a lowercase D in odata) it works fine. I'm now going to out into the streets and fight a man!


Only top voted, non community-wiki answers of a minimum length are eligible