Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
REMINDER: Qlik Cloud: Removing the deprecated Developer role and Enable API keys toggle: Get Details
cancel
Showing results for 
Search instead for 
Did you mean: 
LiehrMa
Contributor
Contributor

tRESTClient giving error "No message body reader has been found for class org.dom4j.Document..."

I found similar question several times, but most of the times I get lost with all the very deep tech talk about the problem and have no idea where you would set the suggested parameters. Sorry for being such a dummy.
Someone may has a easy to understand idea how to tackle the problem the way it appears on my side.

For investigation I have set up a very simple job:
tRESTClient followed by tLogRow to display the response
Main setting: Accept JSON, Convert Response to DOM Document = active, Wrap JSON Response = Active
With URL being our productive environment all is nice and smooth.
I call Adobe Commerce api for a certain store at endpoint  /rest/at_DE/V1/products/{productid}
Response:

| tLogRow_2 |

|=---------+----+-------------------------------------------------------------------------------------------------------------------------------

|statusCode|body|string |

|=---------+----+-------------------------------------------------------------------------------------------------------------------------------

|200 |null|{"sku":"V311030BE000","name":"M.Zuiko Digital 45mm F1.8 (schwarz)","price":349,"extension_attributes":{"stock_item":{"is_in_stock":true}}}|

'----------+----+-------------------------------------------------------------------------------------------------------------------------------

 

Identical settings, just changing the URL to our Testing environment I get below error message:

Exception in component tRESTClient_1 (SomeTests)

jakarta.ws.rs.client.ResponseProcessingException: No message body reader has been found for class org.dom4j.Document, ContentType: text/html;charset=UTF-8

at org.apache.cxf.jaxrs.impl.ResponseImpl.reportMessageHandlerProblem(ResponseImpl.java:553)

at org.apache.cxf.jaxrs.impl.ResponseImpl.doReadEntity(ResponseImpl.java:506)

at org.apache.cxf.jaxrs.impl.ResponseImpl.readEntity(ResponseImpl.java:410)

at org.apache.cxf.jaxrs.impl.ResponseImpl.readEntity(ResponseImpl.java:400)

at omdg_bibu.sometests_0_1.SomeTests.tRESTClient_1Process(SomeTests.java:1400)

at omdg_bibu.sometests_0_1.SomeTests.runJobInTOS(SomeTests.java:2323)

at omdg_bibu.sometests_0_1.SomeTests.main(SomeTests.java:1928)

[ERROR] 10:20:39 org.apache.cxf.jaxrs.utils.JAXRSUtils- No message body reader has been found for class org.dom4j.Document, ContentType: text/html;charset=UTF-8

 

 

What struggles me, is that I do the same in POSTMAN and I get the same good response for both environments.

POSTMAN response o.k.POSTMAN response o.k.
 
 

Any idea why Talend produces an error, while POSTMAN doesn't?

 

 

Labels (1)
  • Cloud

1 Solution

Accepted Solutions
LiehrMa
Contributor
Contributor
Author

Sorry folks, 

forget it. The problem is in front of the PC.
I tested another STAGE environment, which is not currently updated version of Adobe commerce and it worked. So I figured it is not Talend, but the environment called. On the 100th attempt looking closer I found it.
Reason for it was that in POSTMAN the environments were correctly set up, while in Talend job I had to set up the environment in question and it included .../admin/....by accident in the URL.
With the correct URL path without /admin/ it works.
Sorry again for bothering you guys.

View solution in original post

1 Reply
LiehrMa
Contributor
Contributor
Author

Sorry folks, 

forget it. The problem is in front of the PC.
I tested another STAGE environment, which is not currently updated version of Adobe commerce and it worked. So I figured it is not Talend, but the environment called. On the 100th attempt looking closer I found it.
Reason for it was that in POSTMAN the environments were correctly set up, while in Talend job I had to set up the environment in question and it included .../admin/....by accident in the URL.
With the correct URL path without /admin/ it works.
Sorry again for bothering you guys.