Как получить тело из POST звонка.JAX-RS - PullRequest
0 голосов
/ 19 октября 2018

Я выполняю вызов POST-типа в eclipse / java, используя JAX-RS

Я не могу обработать возврат в методе predictCid

Этот метод отправляет параметр textToPredict и получаетвозвращаемая строка, как я могу получить это значение и установить его в переменную textPredicted?

@Path("Predicao")
public class PredicaoCIDResource extends BaseResource {
    @POST
    @Path("predicaoCid")
    public RetornoGenerico<PredicaoCidVo> predizerCid(PredicaoCidVo predicaoVo) {
        System.out.print("\nentrou no método java");
        RetornoGenerico<PredicaoCidVo> retorno = new RetornoGenerico<PredicaoCidVo>();
        String nomeMetodo = "predicaoCid";
        super.criarRetornoSucesso(nomeMetodo, retorno);
        System.out.print("passou pelo super");
        try {
            System.out.print("\nentrou no try");
            PredicaoCidVo predicaoCidVo = new PredicaoCidVo();
            Response retornoPred = predictCid(predicaoVo.getTextToPredict());
            System.out.print("retornou do método predict");
            predicaoCidVo.setTextPredicted(retornoPred.getEntity().toString());

            retorno.setRetorno(predicaoCidVo);
        } catch (Exception e) {
            super.trataExececao(retorno, e, nomeMetodo);
        }
        return retorno;
    }

    @POST
    @Path("http://127.0.0.1:5000/predict")
    @Consumes("application/x-www-form-urlencoded")
    private Response predictCid(@FormParam("textToPredict") String predicaoVo) throws IOException {
        System.out.print("\nentrou no método predict");

        //How get te return ??? String

    }

PredicaoVo:

@XmlRootElement
public class PredicaoCidVo implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = 2471424108047814793L;
    private String textToPredict;
    private String textPredicted;

    public String getTextToPredict() {
        return textToPredict;
    }

    public void setTextToPredict(String textToPredict) {
        this.textToPredict = textToPredict;
    }

    public String getTextPredicted() {
        return textPredicted;
    }

    public void setTextPredicted(String textPredicted) {
        this.textPredicted = textPredicted;
    }

}

Вызов сделан правильно (predictCid),возвращается со статусом 200 (ОК).Но я не могу вернуть одну из переменных класса PredicaoVo.

Как мне сделать этот возврат, заполнив, например, объект textPredicted?

Возвращение в методе, которыйделает POST, это простая строка

Ниже приведены отзывы о тестировании SOAPUI:

<Response xmlns="http://app-homolog/overcare-ws/rest/Profissional/predicaoCid">
   <retorno>
      <textPredicted>predicao.PredicaoCidVo@3372c9d7</textPredicted>
      <textToPredict null="true"/>
   </retorno>
   <retornoMensagem>
      <dsMensagem>predicaoCid.sucesso</dsMensagem>
      <dsStackTrace null="true"/>
      <dsTitulo>predicaoCid.titulo</dsTitulo>
      <idCamada>SUCESSO</idCamada>
   </retornoMensagem>
</Response>

Кто отправляет возврат в soapUI, это метод predizerCid

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...