We looked at https://abp.io/community/articles/integrating-.net-ai-chat-template-with-abp-framework-qavb5p2j#gsc.tab=0 to integrate the microsoft ai chat template to our module based app.
Almost everything is working fine, even though the new version differs from the community article at this point. however, there are some ai-libs that should be served, that we can't get right. The page using the ai template is in one of our submodules, not the main "app". when the js function attempts to loading the assistant-message markdown, those libs are not found and so the response is just plain text with no markdown formatting or sanitation
[21:36:14 WRN] The static asset '/ai-libs/dompurify/dist/purify.es.mjs' was not found in the built time manifest. This file will not be available at runtime if it is not available at compile time during the publish process. If the file was not added to the project during development, and is created at runtime, use the StaticFiles middleware to serve it instead. [21:36:14 INF] Executed endpoint 'Fallback {**path:file}' [21:36:14 INF] Request finished HTTP/2 GET https://localhost:44320/ai-libs/dompurify/dist/purify.es.mjs - 404 0 null 8.9684ms [21:36:14 INF] Request reached the end of the middleware pipeline without being handled by application code. Request path: GET https://localhost:44320/ai-libs/dompurify/dist/purify.es.mjs, Response status code: 404
Upgrade from 9.1.2 to 9.3.1, upgrade abp and dotnet packages to relevant versions, run migrations.
Existing solution had app depending on a module, the localization entries from the module are not working but the localization entries from ABP in the submodule and the app module are working.
For example, default + new manual localization entries in app, show on page. default localization entries in submodule (from abp dependencies) show on page. new manual localization entries in submodule do not show on page (menu labels, item labels, page labels etc)
Confirmed also not appearing on the api call that retrieves all the localization entries.
Attempted to implement social login on our app. as per docs below but the login button doesn't appear when we go to the login page. What's missing?
context.Services.AddAuthentication()
.AddMicrosoftAccount(MicrosoftAccountDefaults.AuthenticationScheme, options =>
{
options.AuthorizationEndpoint = "https://login.microsoftonline.com/guid/oauth2/v2.0/authorize";
options.TokenEndpoint = "https://login.microsoftonline.com/guid/oauth2/v2.0/token";
options.ClaimActions.MapCustomJson("picture", _ => "https://graph.microsoft.com/v1.0/me/photo/$value");
options.SaveTokens = true;
options.ClientId = configuration["Authentication:Microsoft:ClientId"];
options.ClientSecret = configuration["Authentication:Microsoft:ClientSecret"];
})
.WithDynamicOptions<MicrosoftAccountOptions, MicrosoftAccountHandler>(
MicrosoftAccountDefaults.AuthenticationScheme,
options =>
{
options.WithProperty(x => x.ClientId);
options.WithProperty(x => x.ClientSecret, isSecret: true);
}
);
generate new app solution with abp studio Add a method to an appservice Execute method via swagger Receive antiforgery token error.
2024-11-22 11:36:09.728 -07:00 [WRN] The required antiforgery header value "RequestVerificationToken" is not present.
2024-11-22 11:36:09.729 -07:00 [INF] Authorization failed for the request at filter 'Volo.Abp.AspNetCore.Mvc.AntiForgery.AbpAutoValidateAntiforgeryTokenAuthorizationFilter'.
2024-11-22 11:36:09.730 -07:00 [INF] Executing StatusCodeResult, setting HTTP status code 400
Was this broken again with the move to 9?
similar to old post where this was already fixed in v4 https://abp.io/support/questions/554/REST-API-Antiforgery-Cookie-Error-After-POST-apiLogin---POST-apimyentity-Call-Sequence
Created app solution, and included an existing module (if I run the module directly in its own solution everything works well)
The module provides some functionality to receive api call and eventually queue up a job in the system which goes to hangfire (this works on module host)
When using this in app solution, the background job is executed ( i can see the api calls that this background job makes going out) but nothing ends up in hangfire, i believe it is executing in the built in default in mem implementation instead of hangfire.
My app module has the same version of hangfire and hangfire.sqlserver installed as module, which are in sync for abp 8.3.2 and is decorated with
typeof(AbpBackgroundJobsHangfireModule),
typeof(AbpBackgroundJobsModule)
in configureservices
context.Services.AddHangfire(config =>
{
config.UseSqlServerStorage(configuration.GetConnectionString("Default"));
});
Configure<AbpHangfireOptions>(options =>
{
options.ServerOptions = new BackgroundJobServerOptions { Queues = new[] { DocusignConstants.DocusignQueue, "default" } };
});
Configure<AbpBackgroundJobWorkerOptions>(options =>
{
options.DefaultTimeout = 864000; //10 days (as seconds)
});
in OnApplicationInitialization app.UseAbpHangfireDashboard("/hangfire", options => { options.AsyncAuthorization = new[] { new AbpHangfireAuthorizationFilter(enableTenant: true) }; });
While i can log in and see the dashboard, it never receives jobs.
IUiPageProgressService
Created a module solution, generated some pages, with their own styles. Created an application solution and referenced/depended on the module solution projects.
When running in VS, or even with dotnet run on development machine, everything works well. When running the build script to generate docker image on application solution and then running that image as a container we see two problems.
public class MyBundleContributor : BundleContributor
{
public override void ConfigureBundle(BundleConfigurationContext context)
{
context.Files.AddIfNotContains("/Pages/ServiceBindings/Index.razor.css");
}
}
MyApp.Domain.csproj
<ItemGroup>
<EmbeddedResource Include="Templates\MyEmailLayout.cshtml" />
<EmbeddedResource Include="Templates\EmailLayout.cshtml" />
<EmbeddedResource Include="Templates\NewUser.cshtml" />
</ItemGroup>
MyApp.DomainModule.cs
[DependsOn(typeof(AbpVirtualFileSystemModule))]
[DependsOn(typeof(AbpTextTemplatingRazorModule))]
public class MyDomainModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
...
Configure<AbpRazorTemplateCSharpCompilerOptions>(options =>
{
options.References.Add(MetadataReference.CreateFromFile(typeof(CloudToolsDomainModule).Assembly.Location));
});
Configure<AbpVirtualFileSystemOptions>(options =>
{
options.FileSets.AddEmbedded<MyDomainModule>();
});
}
}
Again, everything works on local machine via
($env:ASPNETCORE_ENVIRONMENT="Release") | dotnet run --property:Configuration=Release
What is missing for successful deployment?
Ldap login is a useful feature, we don't have to generate new accounts manually this way and users on our platform can reuse their domain account. This feature is turned on at the host level. Is there a way to make this multitenant so that each tenant can set their own ldap server ?
Create a new MODULE type solution on abp. The resulting solution does not seem to use LeptonX. Why? Also on the main login page the tenant selection input is missing, even though the solution by default is set to use MultiTenancy. Why is this missing?
When creating a standard abp framework project, it is possible to run abp update to update it.
When creating a commercial abp framework project, with a logged in cli account, it is not possible to run abp update to update it. Checking on the nuget source with the corresponding apikey we can see that the following links all return 404
https://nuget.abp.io/myapikey/v3/index.json <-- works
https://nuget.abp.io/myapikey/api/v2/package <-- Fails with 404 https://nuget.abp.io/myapikey/api/v2/symbol <-- Fails with 404 https://nuget.abp.io/myapikey/v3/registration <-- Fails with 404 https://nuget.abp.io/myapikey/v3/package <-- Fails with 404
I think this needs help from the license team