cancel
Showing results for 
Search instead for 
Did you mean: 

SAP BPM Process start OData service giving error

0 Kudos

Hi,

I am facing the following issue when I try to start process using BPM OData services.

process start data objects are getting appended with symbol "::"

Here I am attaching Process start data response from Odata service

------------------------------------------------------------

"::car": {

                        "__metadata": {

                            "id": "http://host:port/bpmodata/startprocess.svc/demo.sap.com/carexchange~bpm/CarExchangeFlow/%3A%3Acar('e...')",

                            "uri": "http://host:port/bpmodata/startprocess.svc/demo.sap.com/carexchange~bpm/CarExchangeFlow/%3A%3Acar('e...')",

                            "type": "BPMProcessStart.::car"

                        },

                        "EDM_Key": "e0e1b8c6ce79c68d842311e48bb1005056972d0a_1",

                        "make": null,

                        "model": null,

                        "year": null,

                        "color": null,

                        "value": null,

                        "name": null,

                        "email": null,

                        "mobile": null,

                        "customerId": null,

                        "managerId": null,

                        "evaluatorId": null,

                        "salesRepId": null

                    }

-----------------------------------------

process xsd object as follows:

-----------------

<xsd:element name="car">

  <xsd:complexType>

  <xsd:sequence>

  <xsd:element name="make" type="xsd:string" />

  <xsd:element name="model" type="xsd:string" />

  <xsd:element name="year" type="xsd:string" />

  <xsd:element name="color" type="xsd:string" />

  <xsd:element name="value" type="xsd:string" />

  <xsd:element name="name" type="xsd:string" />

  <xsd:element name="email" type="xsd:string" />

  <xsd:element name="mobile" type="xsd:string" />

  <xsd:element name="customerId" type="xsd:string" />

  <xsd:element name="managerId" type="xsd:string" />

  <xsd:element name="evaluatorId" type="xsd:string" />

  <xsd:element name="salesRepId" type="xsd:string" />

  </xsd:sequence>

  </xsd:complexType>

  </xsd:element>

--------------------------

so when I invoked odata process start service not considering that strange symbol, getting odata exception as

com.sap.core.odata.api.exception.ODataApplicationException: com.sap.core.odata.api.ep.EntityProviderException: com.sap.core.odata.api.edm.EdmException: java.net.URISyntaxException: Expected scheme name at index 0: ::car

can you please help me why this strange symbol is appended to process start data object?

Thanks

-Trim

Accepted Solutions (1)

Accepted Solutions (1)

AndreH
Employee
Employee
0 Kudos

You are using an anonymous complex type in your XSD. The OData Service adds the double colons in case he needs to deal with such an anonymous type (see documentation). Just use a named type and the process start should work as always.


Best Regards, Andre

0 Kudos

Thanks a lot Andre.

-trim

Answers (0)