Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Ler dados POST do aplicativo Oracle Forms


Efetivamente como @Christian13467 mencionado, para Oracle Forms é muito indiferente como as vars HTTP foram enviadas, ou seja, usando os métodos POST ou GET.

Minha solução foi construir uma string contendo todos os meus vars concatenados como em otherparams formato e, em seguida, envie-o via Método POST. Como meu primeiro formulário estava contido em outro aplicativo Oracle Forms, editei um arquivo de modelo chamado basejpi.htm , para adicionar uma seção javascript de cabeçalho com este código:
function sendPostVars(path,params) {
  var method = "post"; 

  var form = document.createElement("form");
  form.setAttribute("method", "post");
  form.setAttribute("action", path);

  var hiddenField = document.createElement("input");
  hiddenField.setAttribute("type", "hidden");
  hiddenField.setAttribute("name", "otherparams");
  hiddenField.setAttribute("value", params);

  form.appendChild(hiddenField);

  document.body.appendChild(form);
  form.submit();
}

Então, do meu primeiro aplicativo Forms, chamei esse método por meio da função de integração javascript 11g assim:
web.javascript_eval_expr(sendPostVars('http://host2:port/forms/frmservlet','name1=param1+name2=param2'))

Finalmente, meus parâmetros foram lidos no meu segundo aplicativo Oracle Forms.