-
Este é o LEIA-ME do diretório de componentes fpWeb. Contém 2 pacotes:
-
O pacote LazWeb implementa a funcionalidade IDE para FCL-Web. Deve funcionar com a versão 2.4.x do FPC.
-
O pacote LazWebExtra implementa mais projetos e componentes IDE, que estão disponíveis apenas a partir da versão 2.5.1 do compilador. À medida que esses itens forem disponibilizados em uma versão estável, o pacote será fundidas em Lazweb.
-
Ambos os pacotes registram uma série de assistentes de projeto e alguns componentes.
-
Os seguintes tipos de projeto são registrados no pacote lazweb:
- Aplicação CGI
- Aplicativo Apache (um módulo apache)
- Aplicativo CGI personalizado ("bare bones" cgi, sem módulos da web)
- Aplicativo FastCGI
- Aplicativo FastCGI personalizado (fastcgi "bare bones", sem módulos da web)
-
Para cada um desses projetos, um Módulo Web é criado por padrão.
-
Os seguintes módulos web podem ser criados:
-
WebDataModule (TFPWebModule)
- Este é um módulo de manipulação de solicitação HTTP de uso geral, que pode ser usado para lidar com qualquer solicitação HTTP para qualquer tipo de dados.
-
HTMLModule (TFPHTMLModule)
- Este é um módulo específico de tratamento de requisições HTTP, voltado especialmente em produzir uma resposta HTML.
-
-
Os seguintes componentes são registrados:
-
THTMLDatasetContentProducer
- Cria uma tabela HTML baseada em um descendente TDataset;
-
THTMLSelectProducer
- Cria um elemento < SELECT > baseado em um TStringList.
-
THTMLDatasetSelectProducer
- Cria um elemento < SELECT > com base em um conjunto de dados (uma combinação de pesquisa)
-
THTMLEntityProducer
- Cria um documento HTML ENTITY
-
THTMLPageProducer
- Cria uma página HTML usando um manipulador de eventos.
-
THTMLDataSetFormShowProducer
- Cria um < FORM > que permite mostrar um único registro de um conjunto de dados.
-
THTMLDataSetFormEditProducer
- Cria um < FORM > que permite editar um único registro de um conjunto de dados.
-
THTMLDataSetFormGridProducer
- Cria uma série de formulários.
-
-
O pacote lazwebextra registra adicionalmente os seguintes módulos da web e componentes:
-
Módulo Web Data Provider (TFPWebProviderDataModule)
- Usado para converter TDataset em uma variedade de formatos e para lidar com atualizações dos dados. (ExtJS JSON e XML atualmente)
-
Módulo de manipulação de solicitação JSON-RPC (TJSONRPCModule)
- Usado para lidar com solicitações JSON-RPC.
-
Tratamento Ext.Direct de solicitações JSON-RPC (TExtDirectModule)
- Lida com a variante Ext.Direct de JSON-RPC.
-
-
Os seguintes componentes são registrados:
-
TFPWebDataProvider
- Lida com operações CRUD (criar/ler/atualizar/excluir) em um TDataset
-
TSQLDBWebDataProvider
- Lida com operações CRUD (criar/ler/atualizar/excluir) em um TSQLConnection. (As instruções SQL INSERT/SELECT/UPDATE/DELETE podem ser especificadas).
-
TWebdataInputAdaptor
- Transforma a solicitação HTTP para um formato que TFPWebDataProvider entende, usando manipuladores de eventos.
-
TExtJSJSonWebdataInputAdaptor
- Descendente TWebdataInputAdaptor que transforma um ExtJS Datastore Solicitação JSON para entrada utilizável por TFPWebDataProvider.
-
TEXTJSJSONDataFormatter
- Gera JSON conforme esperado pelos armazenamentos de dados ExtJS de todas as operações em um Instância TFPWebDataProvider.
-
TEXTJSXMLWebdataInputAdaptor
- Descendente TWebdataInputAdaptor que transforma um ExtJS Datastore Solicitação XML para entrada utilizável por TFPWebDataProvider.
-
TEXTJSXMLDataFormatter,
- Gera XML conforme esperado pelos armazenamentos de dados ExtJS de todas as operações em um Instância TFPWebDataProvider.
-
TJSONRPCHandler
- Componente que lida com uma única solicitação JSON-RPC.
-
TJSONRPCDispatcher
- Componente que despacha um lote de solicitações JSON-RPC para Instâncias JSONRPCHandler.
-
TSessionJSONRPCDispatcher
- Componente que despacha um lote de solicitações JSON-RPC para instâncias TJSONRPCHandler e que reconhecem a sessão. (sessão no fcl-web sentido da palavra)
-
TJSONRPCContentProducer
- Componente que manipula a entrada de uma solicitação HTTP, passa-a para um TJSONRPCDispatcher e formata o resultado.
-
TEXTDirectDispatcher
- ??
-
TEXTDirectContentProducer
- Descendentes de TJSONRPCDispatcher e TJSONRPCContentProducer que entenda a variante Ext.Direct do extJS.
-
-
Projetos de demonstração estão disponíveis no subdiretório demo e demos adicionais podem ser encontrados no diretório fcl-web/examples do FPC.
-
Leia-me adicionais com informações sobre os componentes estão em fcl-web/src/* diretórios.
-
Autor: Michael Van Canneyt & Joost van der Sluis