6

When querying a fresh install of SDL 8.5 Content Delivery content service at http://example.com:8081/client/v4/content.svc/Components(ItemId=13,PublicationId=3) we keep getting the following error:

<metadata:error>
    <metadata:code>1000</metadata:code><metadata:message>`?' expected but `C' found</metadata:message>
</metadata:error>

And this is what we get in the cd_core.log:

2018-04-27 11:31:37,999 DEBUG ODataParserImpl - Parsing URI: 
http://example.com:8081/client/v4/content.svc/Components(ItemId=13,PublicationId=3)
2018-04-27 11:31:38,001 DEBUG ODataMessageRouter - Sending error message for exception:
com.sdl.odata.api.parser.ODataUriParseException: `?' expected but `C' found
        at com.sdl.odata.parser.ODataUriParser.parseUri(ODataUriParser.scala:34)
        at com.sdl.odata.parser.ODataParserImpl.parseUri(ODataParserImpl.java:37)
        at com.sdl.odata.service.actor.ODataParserActor$$anonfun$receive$1.applyOrElse(ODataParserActor.scala:34)
        at akka.actor.Actor$class.aroundReceive(Actor.scala:480)
        at com.sdl.odata.service.actor.ODataParserActor.aroundReceive(ODataParserActor.scala:27)
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
        at akka.actor.ActorCell.invoke(ActorCell.scala:495)
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
2018-04-27 11:31:38,001 ERROR ODataRendererActor - Invalid request - com.sdl.odata.api.parser.ODataUriParseException: '`?' expected but `C' found'
com.sdl.odata.api.parser.ODataUriParseException: `?' expected but `C' found
        at com.sdl.odata.parser.ODataUriParser.parseUri(ODataUriParser.scala:34)
        at com.sdl.odata.parser.ODataParserImpl.parseUri(ODataParserImpl.java:37)
        at com.sdl.odata.service.actor.ODataParserActor$$anonfun$receive$1.applyOrElse(ODataParserActor.scala:34)
        at akka.actor.Actor$class.aroundReceive(Actor.scala:480)
        at com.sdl.odata.service.actor.ODataParserActor.aroundReceive(ODataParserActor.scala:27)
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
        at akka.actor.ActorCell.invoke(ActorCell.scala:495)
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

The services installed are: discovery deployer deployer-worker content

All were started with the --auto-register flag and they all registered successfully with the discovery service. They're running on a UNIX box


UPDATE Content Svc Config

@Atila Sos

<?xml version="1.0" encoding="UTF-8"?><Configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="8.5" xsi:noNamespaceSchemaLocation="schemas/cd_storage_conf.xsd">
<Namespace default="${namespaceprefix:-tcm}"/>
<Global>
    <Storages>
        <Storage Class="com.tridion.storage.persistence.JPADAOFactory" Id="defaultdb" Type="persistence" dialect="MSSQL">
            <Pool CheckoutTimeout="120" IdleTimeout="120" MonitorInterval="60" Size="10" Type="jdbc"/>
            <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
                <Property Name="serverName" Value="123.com"/>
                <Property Name="portNumber" Value="123"/>
                <Property Name="databaseName" Value="BROKER"/>
                <Property Name="user" Value="BrokerUser"/>
                <Property Name="password" Value="tridion"/>
            </DataSource>
        </Storage>
    </Storages>
</Global>
<ItemTypes cached="false" defaultStorageId="defaultdb"/>
<License Location="/cd_licenses.xml"/>
<ConfigRepository CacheEnabled="true" CacheExpirationDuration="600" ClientId="registration" xxx ConnectionTimeout="40000" ServiceMonitorPollDuration="10" ServiceUri="http://123:8282/discovery.svc" TokenServiceUrl="http://123:8282/token.svc">
    <Roles>
        <Role Name="ContentServiceCapability" Url="http://123:8281/content.svc"/>
    </Roles>
</ConfigRepository>

  • Can you check v2, does it show the same error? Also, can you share the configuration of the Content Service? – Atila Sos Apr 27 '18 at 19:22
1

Issue looks to have been resolved after updating cd_storage_config.xml file and republishing publication to the broker DB.

  • Good one Terry! Can you please also put the details of what was changed. will be easy to find fix in future. – Vikas Kumar May 3 '18 at 20:15
  • 1
    I wasn't directly involved, but basically the problem was that the expected content wasn't published to the broker DB. Issue resolved after verifying publishing was successful. – Terry Kim May 4 '18 at 13:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.