Start a new topic
Answered

Semarchy loads REST API error: "Property $.programName is required"

Hello All,


I am working with a developer who is getting the following error stack while trying to publish data through the REST API into one of our Semarchy xDM environments while using java spring framework:


org.springframework.jms.listener.adapter.ListenerExecutionFailedException: Listener method 'public void com.sherwin.dpimitemdilms.controllers.DPimItemDilController.receiveMessage(javax.jms.Message) throws java.net.URISyntaxException,javax.jms.JMSException,com.fasterxml.jackson.core.JsonProcessingException,java.io.UnsupportedEncodingException' threw exception; nested exception is org.springframework.web.client.HttpClientErrorException$BadRequest: 400 : "{<EOL> "error" : {<EOL> "errorMessage" : "Property $.programName is required",<EOL> "errorId" : "2aa89d9d-2987-4bdb-a5db-3ae79cf00b14",<EOL> "statusCode" : 400<EOL> }<EOL>}"


I'm seeing the following corresponding error from the Semarchy log:


ErrorId:508e7797-0cfb-4d6b-b2b6-ed318611ea8c

ErrorMessage: Property $.programName is required

 (Message reported by logger com.semarchy.mdm.api.rest.errors.PublicRestAPIExceptionMapper, current authenticated user: 'APIKEY_XXXXXX')



1.  The same user is able to successfully persist records through the loads API in Postman.

2.  The same user is able to get a good response from a GET operation against the semarchy/rest/api/loads/DATALOC_DL endpoint


3.  Other developers within my organization are able to run loads using the python requests module


In my opinion,  there has to be something wrong with the POST payload.  Does anyone have an idea on what could be going on in the spring framework call that could potentially corrupt the format of the POST body("unsupported encoding???")?


Best Answer

This has been resolved.  The developer realized that there were some unintentional tags being included when the actual records were being added to the REST template in the  "persistRecords": {} section.

1 Comment

Answer

This has been resolved.  The developer realized that there were some unintentional tags being included when the actual records were being added to the REST template in the  "persistRecords": {} section.

Login to post a comment