diff --git a/src/bundles/Elsa.Server.Web/Program.cs b/src/bundles/Elsa.Server.Web/Program.cs
index 28631b6a1..bb2fc19ad 100644
--- a/src/bundles/Elsa.Server.Web/Program.cs
+++ b/src/bundles/Elsa.Server.Web/Program.cs
@@ -10,7 +10,6 @@ using Elsa.EntityFrameworkCore.Modules.Identity;
using Elsa.EntityFrameworkCore.Modules.Management;
using Elsa.EntityFrameworkCore.Modules.Runtime;
using Elsa.Extensions;
-using Elsa.Http.Handlers;
using Elsa.Http.Options;
using Elsa.MongoDb.Extensions;
using Elsa.MongoDb.Modules.Identity;
diff --git a/src/bundles/Elsa.Server.Web/appsettings.json b/src/bundles/Elsa.Server.Web/appsettings.json
index 9859fc4f8..131ccbe59 100644
--- a/src/bundles/Elsa.Server.Web/appsettings.json
+++ b/src/bundles/Elsa.Server.Web/appsettings.json
@@ -17,7 +17,7 @@
"Sqlite": "Data Source=App_Data/elsa.sqlite.db;Cache=Shared;",
"MongoDb": "mongodb://localhost:27017/elsa-workflows",
"AzureServiceBus": "",
- "RabbitMq": "amqp://guest:guest@localhost:5672/elsa"
+ "RabbitMq": "amqp://guest:guest@localhost:5672"
},
"Smtp": {
"Host": "localhost",
diff --git a/src/bundles/Elsa.ServerAndStudio.Web/Elsa.ServerAndStudio.Web.csproj b/src/bundles/Elsa.ServerAndStudio.Web/Elsa.ServerAndStudio.Web.csproj
index 97e625599..4029b6de1 100644
--- a/src/bundles/Elsa.ServerAndStudio.Web/Elsa.ServerAndStudio.Web.csproj
+++ b/src/bundles/Elsa.ServerAndStudio.Web/Elsa.ServerAndStudio.Web.csproj
@@ -18,6 +18,7 @@
+
diff --git a/src/bundles/Elsa.ServerAndStudio.Web/Program.cs b/src/bundles/Elsa.ServerAndStudio.Web/Program.cs
index eb19d40ac..3726828da 100644
--- a/src/bundles/Elsa.ServerAndStudio.Web/Program.cs
+++ b/src/bundles/Elsa.ServerAndStudio.Web/Program.cs
@@ -6,6 +6,8 @@ using Elsa.Extensions;
using Elsa.Webhooks.Extensions;
using Microsoft.AspNetCore.Mvc;
+const bool useMassTransit = true;
+
var builder = WebApplication.CreateBuilder(args);
builder.WebHost.UseStaticWebAssets();
var services = builder.Services;
@@ -16,32 +18,39 @@ var identityTokenSection = identitySection.GetSection("Tokens");
// Add Elsa services.
services
- .AddElsa(elsa => elsa
- .UseSasTokens()
- .UseIdentity(identity =>
+ .AddElsa(elsa =>
+ {
+ elsa
+ .UseSasTokens()
+ .UseIdentity(identity =>
+ {
+ identity.IdentityOptions = options => identitySection.Bind(options);
+ identity.TokenOptions = options => identityTokenSection.Bind(options);
+ identity.UseConfigurationBasedUserProvider(options => identitySection.Bind(options));
+ identity.UseConfigurationBasedApplicationProvider(options => identitySection.Bind(options));
+ identity.UseConfigurationBasedRoleProvider(options => identitySection.Bind(options));
+ })
+ .UseDefaultAuthentication()
+ .UseWorkflowManagement(management => management.UseEntityFrameworkCore(ef => ef.UseSqlite(sqliteConnectionString)))
+ .UseWorkflowRuntime(runtime => runtime.UseEntityFrameworkCore(ef => ef.UseSqlite(sqliteConnectionString)))
+ .UseScheduling()
+ .UseJavaScript(options => options.AllowClrAccess = true)
+ .UseLiquid()
+ .UseCSharp()
+ .UsePython()
+ .UseHttp(http => http.ConfigureHttpOptions = options => configuration.GetSection("Http").Bind(options))
+ .UseEmail(email => email.ConfigureOptions = options => configuration.GetSection("Smtp").Bind(options))
+ .UseWebhooks(webhooks => webhooks.WebhookOptions = options => builder.Configuration.GetSection("Webhooks").Bind(options))
+ .UseWorkflowsApi()
+ .UseRealTimeWorkflows()
+ .AddActivitiesFrom()
+ .AddWorkflowsFrom();
+
+ if (useMassTransit)
{
- identity.IdentityOptions = options => identitySection.Bind(options);
- identity.TokenOptions = options => identityTokenSection.Bind(options);
- identity.UseConfigurationBasedUserProvider(options => identitySection.Bind(options));
- identity.UseConfigurationBasedApplicationProvider(options => identitySection.Bind(options));
- identity.UseConfigurationBasedRoleProvider(options => identitySection.Bind(options));
- })
- .UseDefaultAuthentication()
- .UseWorkflowManagement(management => management.UseEntityFrameworkCore(ef => ef.UseSqlite(sqliteConnectionString)))
- .UseWorkflowRuntime(runtime => runtime.UseEntityFrameworkCore(ef => ef.UseSqlite(sqliteConnectionString)))
- .UseScheduling()
- .UseJavaScript(options => options.AllowClrAccess = true)
- .UseLiquid()
- .UseCSharp()
- .UsePython()
- .UseHttp(http => http.ConfigureHttpOptions = options => configuration.GetSection("Http").Bind(options))
- .UseEmail(email => email.ConfigureOptions = options => configuration.GetSection("Smtp").Bind(options))
- .UseWebhooks(webhooks => webhooks.WebhookOptions = options => builder.Configuration.GetSection("Webhooks").Bind(options))
- .UseWorkflowsApi()
- .UseRealTimeWorkflows()
- .AddActivitiesFrom()
- .AddWorkflowsFrom()
- );
+ elsa.UseMassTransit();
+ }
+ });
services.AddHealthChecks();
diff --git a/src/bundles/Elsa.ServerAndStudio.Web/appsettings.json b/src/bundles/Elsa.ServerAndStudio.Web/appsettings.json
index 6a427b4da..4f0c9d1bc 100644
--- a/src/bundles/Elsa.ServerAndStudio.Web/appsettings.json
+++ b/src/bundles/Elsa.ServerAndStudio.Web/appsettings.json
@@ -13,7 +13,8 @@
},
"AllowedHosts": "*",
"ConnectionStrings": {
- "Sqlite": "Data Source=elsa.sqlite.db;Cache=Shared;"
+ "Sqlite": "Data Source=elsa.sqlite.db;Cache=Shared;",
+ "RabbitMq": "rabbitmq://guest:guest@localhost:5672"
},
"Hosting": {
"BasePath": ""
diff --git a/src/modules/Elsa.MassTransit/Activities/PublishMessage.cs b/src/modules/Elsa.MassTransit/Activities/PublishMessage.cs
index e5972aa46..1802f3bd8 100644
--- a/src/modules/Elsa.MassTransit/Activities/PublishMessage.cs
+++ b/src/modules/Elsa.MassTransit/Activities/PublishMessage.cs
@@ -6,6 +6,7 @@ using Elsa.MassTransit.Implementations;
using Elsa.Workflows;
using Elsa.Workflows.Attributes;
using Elsa.Workflows.Models;
+using Elsa.Workflows.UIHints;
using MassTransit;
namespace Elsa.MassTransit.Activities;
@@ -29,7 +30,10 @@ public class PublishMessage : CodeActivity
///
/// The message to send. Must be a concrete implementation of the configured .
///
- [Input(Description = "The message to send. Must be a concrete implementation of the configured message type.")]
+ [Input(
+ Description = "The message to send. Must be a concrete implementation of the configured message type.",
+ UIHint = InputUIHints.MultiLine
+ )]
public Input