pt.despodata.java.webappl.html
Class HtmlForm

java.lang.Object
  extended bypt.despodata.java.webappl.html.HtmlForm

public class HtmlForm
extends java.lang.Object

HtmlForm.java Company MoreData

Version:
$Revision: 1.1.1.1 $
Author:
Paulo Carmo

Constructor Summary
HtmlForm()
           
 
Method Summary
static int getLineNumber(DHtmlDataControl htmlctrl, java.lang.String sufix)
          Calcula o numero da linha a que pertence um parametro, a partir de um sufixo.
static java.lang.Object getObjectFromString(ApplDataControl htmlctrl, java.lang.String columnName, java.lang.String paramValue)
          Transforma um valor contido numa string, num objecto que represente um dado tipo.
static java.lang.Object getParameter(javax.servlet.http.HttpServletRequest request, java.lang.String name)
          Devolve o valor de um parametro que foi enviado num form.
static java.util.Map getParameters(javax.servlet.http.HttpServletRequest request)
          Devolve todos os parametros que foram enviados num form.
static java.util.Map getParameters(javax.servlet.http.HttpServletRequest request, java.lang.String sufix)
          Devolve todos os parametros que foram enviados num form cujo nome termina num dado sufixo.
static void submitForm(javax.servlet.http.HttpServletRequest request, DHtmlDataControl htmlctr, int rowNumber)
           
static void submitLine(javax.servlet.http.HttpServletRequest request, DHtmlDataControl htmlctrl, int rowNumber, java.lang.String prefix, java.lang.String sufix)
          Processa um form e preenche uma linha de um determinado DHtmlDataControl com o valor dos campos correspondentes do form.
protected static void updateCell(javax.servlet.http.HttpServletRequest request, DHtmlDataControl htmlctrl, int lineNumber, java.lang.String columnName, java.lang.String vfName, java.lang.String paramName)
          Actualiza o valor de um campo de um determinado registo.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HtmlForm

public HtmlForm()
Method Detail

getLineNumber

public static int getLineNumber(DHtmlDataControl htmlctrl,
                                java.lang.String sufix)
Calcula o numero da linha a que pertence um parametro, a partir de um sufixo. O sufixo faz parte do nome do parametro.

Parameters:
sufix - Sufixo do nome do parametro.
Returns:
Numero da linha a que pertence o parametro, -1 se a linha for desconhecida.

getParameter

public static java.lang.Object getParameter(javax.servlet.http.HttpServletRequest request,
                                            java.lang.String name)
Devolve o valor de um parametro que foi enviado num form.

Returns:
Um objecto com o conteudo do campo do form com o nome indicado.

getParameters

public static java.util.Map getParameters(javax.servlet.http.HttpServletRequest request)
Devolve todos os parametros que foram enviados num form.

Returns:
Uma lista de mapeamentos entre o nome de um campo do form e o uma String com o conteudo desse campo.

getParameters

public static java.util.Map getParameters(javax.servlet.http.HttpServletRequest request,
                                          java.lang.String sufix)
Devolve todos os parametros que foram enviados num form cujo nome termina num dado sufixo.

Returns:
Uma lista de mapeamentos entre o nome de um campo (que termina num dado sufixo) e o seu conteudo.

getObjectFromString

public static java.lang.Object getObjectFromString(ApplDataControl htmlctrl,
                                                   java.lang.String columnName,
                                                   java.lang.String paramValue)
                                            throws DDataException
Transforma um valor contido numa string, num objecto que represente um dado tipo.

Parameters:
htmlctrl - O DDataControl que representa a tabela.
columnName - Nome da coluna.
paramValue - Valor da coluna.
Returns:
Um objecto, da classe correspondente ao tipo de dados do campo.
Throws:
DDataException

submitForm

public static void submitForm(javax.servlet.http.HttpServletRequest request,
                              DHtmlDataControl htmlctr,
                              int rowNumber)

submitLine

public static void submitLine(javax.servlet.http.HttpServletRequest request,
                              DHtmlDataControl htmlctrl,
                              int rowNumber,
                              java.lang.String prefix,
                              java.lang.String sufix)
Processa um form e preenche uma linha de um determinado DHtmlDataControl com o valor dos campos correspondentes do form. Na pratica, vai se procurar por parametros cujo nome tenha o formato: "prefix" + "name" + "sufix". O sufixo, representa o numero da linha. O parametro se for encontrado e processado e de seguida removido da lista. TODO ---- Falta por a funcionar para parametros que devolvem multiplos valores, usar o metodo getParameterValues(String) em vez do metodo getParameter(String) Alterar o parametro request para HttpServletRequest. Dentro do metodo verificar se (request instanceof FileUploadServletRequest), entao procurar por ficheiros submetidos, senao, nao processa ficheiros! Passar a usar o parametro 'prefix'.

Parameters:
request - Objecto que contem os dados que foram submetidos pelo form.
htmlctrl - DDataControl a preencher com os parametros lidos do form.
rowNumber - Numero da linha do DHtmlDataControl a prencher, se for -1 e usada a linha que vem no form.
prefix - Prefixo a acrescentar ao nome do parametro.
sufix - Sufixo a acrescentar ao nome do parametro.

updateCell

protected static void updateCell(javax.servlet.http.HttpServletRequest request,
                                 DHtmlDataControl htmlctrl,
                                 int lineNumber,
                                 java.lang.String columnName,
                                 java.lang.String vfName,
                                 java.lang.String paramName)
Actualiza o valor de um campo de um determinado registo.

Parameters:
htmlctrl - DataControl que contem o registo a actualizar.
lineNumber - Numero do registo que deve ser actualizado.
columnName - Nome do campo que deve ser actualizado.
vfName - Nome do campo visual a ser actualizado.
paramName - Nome do parametro do form que contem o valor para actualizar o campo.