如何输出tRESTClient

时间:2015-03-13 12:41:34

标签: rest output talend

我从JSON文件中读取了一些参数,对于每个参数,我应该发送请求。 当我将输出移动到任何元素时,我得到错误:

Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
    statusCode cannot be resolved or is not a field
    string cannot be resolved or is not a field
    body cannot be resolved or is not a field
    The method getHeaders() is undefined for the type Response

    at pricing.pricing_0_1.Pricing.tFileInputJSON_1Process(Pricing.java:3334)
    at pricing.pricing_0_1.Pricing.tREST_1Process(Pricing.java:1783)
    at pricing.pricing_0_1.Pricing.runJobInTOS(Pricing.java:4634)
    at pricing.pricing_0_1.Pricing.main(Pricing.java:4366)

enter image description here

3 个答案:

答案 0 :(得分:1)

我有相同的错误消息(也有JSON文件作为输入和输出),我发现解决方案是将输入,响应和错误模式与他们最初在tRESTClient中的结构保持一致。 输入模式包含正文和字符串。在这里你可以使用tXMLMap来定义主体结构(这对我来说不起作用)或者将JSON文件作为带有tMap的字符串直接发送到tRESTClient。 Response具有架构statusCode,body和string。再次,只需使用tMap和tLogRow检索字符串就可以获得tRestClient的输出。 我希望这会有所帮助。

答案 1 :(得分:1)

在JSON中包含statusCode变量

答案 2 :(得分:-2)

我也遇到了同样的错误,我遇到的是因为trestclient期待stausCode,body和String形式的架构输入。 而输入作为模式的键和值对提供。所以我们收到错误为enter image description here

所以我使用了tconvertType并将tconverttype中的传出行转换为stausCode,body和String,并且它开始工作。 enter image description here

并且所有错误都消失了。

谢谢,