Estimados, Quizás le pueda servir a alguien. Lo pude solucionar considerando que Delphi crea instancias de los módulos de datos en tiempo de diseño en el archivo del proyecto(dpr):
Código Delphi
[-]
library Project1;
uses
Winapi.ActiveX,
System.Win.ComObj,
Web.WebBroker,
Web.Win.ISAPIApp,
Web.Win.ISAPIThreadPool,
WebModuleUnit1 in 'WebModuleUnit1.pas' ,
DataModule1Unit1 in 'DataModule1Unit1.pas' ;
{$R *.res}
exports
GetExtensionVersion,
HttpExtensionProc,
TerminateExtension;
begin
CoInitFlags := COINIT_MULTITHREADED;
Application.Initialize;
Application.WebModuleClass := WebModuleClass;
Application.CreateForm(TDataModule1, DataModule1); Application.Run;
end.
Como había creado y liberado los módulos de datos dentro de las Actions del WebModule no supuse que habría problema por ese motivo, pero no consideré eliminar las instancias creadas por Delphi en el archivo de proyecto.
Código Delphi
[-]
library Project1;
uses
Winapi.ActiveX,
System.Win.ComObj,
Web.WebBroker,
Web.Win.ISAPIApp,
Web.Win.ISAPIThreadPool,
WebModuleUnit1 in 'WebModuleUnit1.pas' ,
DataModule1Unit1 in 'DataModule1Unit1.pas' ;
{$R *.res}
exports
GetExtensionVersion,
HttpExtensionProc,
TerminateExtension;
begin
CoInitFlags := COINIT_MULTITHREADED;
Application.Initialize;
Application.WebModuleClass := WebModuleClass;
Application.Run;
end.
Código Delphi
[-]
procedure TWebModule1.WebModule1DefaultHandlerAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
DataModule1 := TDataModule1.Create(nil);
try
DataModule1.FDConnection1.Connected := True;
Response.Content :=
'' +
'Web Server Application (datamodule in runtime)' +
'Web Server Application (datamodule in runtime)' +
'';
finally
DataModule1.Free;
end;
end;