Curso de dbExpress e DataSnap - Parte XXVII
Veja neste artigo de Guinther Pauli, mais um capítulo do curso de dbExpress e DataSnap. Acesso exclusivo para Assinantes.
Curso de dbExpress e DataSnap
Parte XXVII – DataSnap e SOAP
Continuando o nosso curso, veremos neste artigo como criar uma solução simples multicamadas usando DataSnap e SOAP. Clique em File|New|Other>WebServices>SOAP Server Application. Na caixa de diálogo que aparece dê o nome de “AppServerSOAP” para o servidor Web App Debugger.

Figura. Criando um servidor SOAP / DataSnap
Responda No quando o Delphi perguntar se você quer criar uma interface.
Salve a unit1.pas como “uFrmMain.pas”, a unit2.pas como “uWM.pas” e o projeto como “AppServerSOAP.dpr”. Selecione o formulário e dê a ele o nome de “FrmMain”. Selecione o WebModule e dê a ele o nome de “WM”.
Clique em File|New|Other>WebServices>SOAP Server Data Module. Na janela que aparece digite “RDM” para a opção Module Name.


Figura. Criando um SOAPDataModule
Salve a unit criada como “uRDM”. Configure o DataModule usando os mesmos componentes do exemplo anterior.

Figura. SOAPDataModule
Observe que a interface IRDM descende de IAppServerSOAP. A classe TRDM descende de TSoapDataModule e implementa IRDM, IAppServerSOAP e IAppServer.
IRDM = interface(IAppServerSOAP)
['{64F05EBC-7D7B-4A61-B6EA-2766C48D7EF8}']
end;
TRDM = class(TSoapDataModule, IRDM, IAppServerSOAP, IAppServer)
SQLConnection: TSQLConnection;
SQLDataSet: TSQLDataSet;
DataSetProvider: TDataSetProvider;
private
public
end;
Execute a aplicação. Ative o Web App Debugger. Faremos agora a parte cliente da aplicação.
Abra a aplicação DataSnap Client criada anteriormente. Coloque no DM um componente SoapConnection da paleta WebServices.

Figura. Usando SOAPConnection
Configure sua propriedade URL para:
http://localhost:8081/AppServerSOAP.AppServerSOAP/soap
Configure Connected para True.
Coloque no DM um componente ConnectionBroker da paleta DataSnap.

Figura. ConnectionBroker abstrai a conexão DataSnap
Esse componente abstrai para o ClientDataSet o tipo de conexão que será utilizada. Por exemplo, você pode trocar sua conexão de DCOM para SOAP ou ainda COM+ sem precisar alterar os ClientDataSets.

Figura. DataModule cliente
Aponte a propriedade Connection desse componente para SOAPConnection. Aponte a propriedade RemoteServer do ClientDataSet para ConnectionBroker1.
Testando o cliente DataSnap / SOAP
Execute a aplicação.

Figura. Testando a aplicação DataSnap client com o servidor SOAP
Download
Você pode fazer download de todos os exemplos deste curso a partir do endereço http://cc.borland.com/Author.aspx?ID=222668. É preciso fazer o cadastro na BDN, que é gratuito e pode ser feito a partir do endereço http://bdn.borland.com
dbExpress, DataSnap e ClientDataSet: Técnicas Avançadas
Para mais informações sobre acesso a dados no Delphi e técnicas avançadas, sugiro a leitura do meu livro, “Delphi: Programação para Banco de Dados e Web”, como apoio para o aprendizado das tecnologias. Na obra mostro várias técnicas introdutórios e avançadas de desenvolvimento com ClientDataSet, dbExpress e DataSnap (multicamadas, incluindo SOAP e COM+). Para mais informações, consulte o link http://www.clubedelphi.net/guinther

Curso(s):
Formações:
Space do autor



0
1
