Bom dia, pessoal!
Estou tendo problemas ao tentar consumir um WS SOAP do PROTHEUS via dataset. Estou recebendo a seguinte mensagem de erro:
javax.xml.ws.soap.SOAPFaultException: WEBSERVICE ERROR : Argument Missing : Required field DDTVALID not found.
Estou passando esse campo DDTVALID em branco, que não é obrigatório, tanto que quando consumo o WS via SoapUI, funciona normalmente. Porém, no dataset ele me retorna esse erro. Esse dataset foi criado automaticamente pelo Fluig através do painel de controle. Porém, importei ele e dei um log.info em dois trechos do código do dataset e descobri onde está o problema:
log.info("Antes ------------------> " + serviceHelper.getDate(getParamValue(params.ddtvalid, assigns.ddtvalid)));
var serviceLocator = serviceHelper.instantiate(serviceData.locatorClass);
var service = serviceLocator.getMOVINTERNASOAP();
var response = service.putmovint(getParamValue(params.cemp, assigns.cemp), getParamValue(params.cfil, assigns.cfil),
getParamValue(params.ctpmov, assigns.ctpmov), getParamValue(params.cproduto, assigns.cproduto),
getParamValue(params.cdoc, assigns.cdoc), serviceHelper.getDate(getParamValue(params.demissao, assigns.demissao)),
getParamValue(params.ncusto, assigns.ncusto), getParamValue(params.ccc, assigns.ccc),
getParamValue(params.nquant, assigns.nquant), getParamValue(params.clocal, assigns.clocal),
getParamValue(params.clocaliz, assigns.clocaliz), getParamValue(params.clote, assigns.clote),
serviceHelper.getDate(getParamValue(params.ddtvalid, assigns.ddtvalid)));
log.info("Depois ------------------> " + serviceHelper.getDate(getParamValue(params.ddtvalid, assigns.ddtvalid)));
Ao que parece, quando não passo nenhum valor pra variável, e ela fica nula, o serviceHelper.getDate(getParamValue(params.ddtvalid, assigns.ddtvalid)) tenta pegar o valor do parâmetro e ocorre o erro.
Alguém sabe como posso resolver esse problema para poder passar o parâmetro em branco?