Activities of "hitaspdotnet"

Everything works as expected in admin and public side, but the creation of the blog post does not. I have DI exception:

DependencyResolutionException: None of the constructors found on type 'Volo.CmsKit.Admin.Web.Pages.CmsKit.Tags.Components.TagEditor.TagEditorViewComponent' can be invoked with the available services and parameters:
Cannot resolve parameter 'Volo.CmsKit.Tags.ITagAppService tagAppService' of constructor 'Void .ctor(Volo.CmsKit.Tags.ITagAppService)'.

See https://autofac.rtfd.io/help/no-constructors-bindable for more info.
Autofac.Core.Activators.Reflection.ReflectionActivator+<>c__DisplayClass14_0.<UseSingleConstructorActivation>b__0(ResolveRequestContext context, Action<ResolveRequestContext> next)

DependencyResolutionException: An exception was thrown while activating Volo.CmsKit.Admin.Web.Pages.CmsKit.Tags.Components.TagEditor.TagEditorViewComponent.
Autofac.Core.Resolving.Middleware.ActivatorErrorHandlingMiddleware.Execute(ResolveRequestContext context, Action<ResolveRequestContext> next)

It was solved after mapping AbpCmsKitDbProperties.ConnectionStringName to service connectionString

Add Volo.CmsKit.Pro.Domain.Shared to the MyProject.AdministrationService for permissions and features

I added Volo.CmsKit.Pro.Application.Contracts and now the permissions are available too. But, I have System.ArgumentNullException for connectionString in CmsService and its throw at Blog Posts index.

any other pages work as expected.

   at MongoDB.Driver.Core.Misc.Ensure.IsNotNull[T](T value, String paramName)
   at MongoDB.Driver.Core.Configuration.ConnectionString..ctor(String connectionString, Boolean isInternalRepresentation, IDnsResolver dnsResolver)
   at MongoDB.Driver.Core.Configuration.ConnectionString..ctor(String connectionString)
   at MongoDB.Driver.MongoUrlBuilder.Parse(String url)
   at MongoDB.Driver.MongoUrlBuilder..ctor(String url)
   at MongoDB.Driver.MongoUrl..ctor(String url)
   at Volo.Abp.Uow.MongoDB.UnitOfWorkMongoDbContextProvider`1.GetDbContextAsync(CancellationToken cancellationToken)
   at Volo.CmsKit.MongoDB.Blogs.MongoBlogPostRepository.GetListAsync(String filter, Nullable`1 blogId, Nullable`1 authorId, Nullable`1 tagId, Nullable`1 statusFilter, Int32 maxResultCount, Int32 skipCount, String sorting, CancellationToken cancellationToken)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Volo.CmsKit.Admin.Blogs.BlogPostAdminAppService.GetListAsync(BlogPostGetListInput input)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Auditing.AuditingInterceptor.ProceedByLoggingAsync(IAbpMethodInvocation invocation, AbpAuditingOptions options, IAuditingHelper auditingHelper, IAuditLogScope auditLogScope)
   at Volo.Abp.Auditing.AuditingInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Authorization.AuthorizationInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Features.FeatureInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.GlobalFeatures.GlobalFeatureInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Validation.ValidationInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at lambda_method1790(Closure, Object)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.&lt;InvokeNextActionFilterAsync&gt;g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.&lt;InvokeInnerFilterAsync&gt;g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.&lt;InvokeNextExceptionFilterAsync&gt;g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)

I think this is related to CmsUser and userLookup service. But I already configured connectionStringMap for abpIdentity:

Configure&lt;AbpDbConnectionOptions&gt;(options =>
{
    options.Databases.Configure("Administration", database =>
    {
        database.MappedConnections.Add(AbpPermissionManagementDbProperties.ConnectionStringName);
        database.MappedConnections.Add(AbpFeatureManagementDbProperties.ConnectionStringName);
        database.MappedConnections.Add(AbpSettingManagementDbProperties.ConnectionStringName);
        database.MappedConnections.Add(LanguageManagementDbProperties.ConnectionStringName);
    });
    options.Databases.Configure("Identity", database =>
    {
        database.MappedConnections.Add(AbpIdentityDbProperties.ConnectionStringName);
    });
    
    options.Databases.Configure("AuditLoggingService", database =>
    {
        database.MappedConnections.Add(AbpAuditLoggingDbProperties.ConnectionStringName);
    });
    
    options.Databases.Configure("SaasService", database =>
    {
        database.MappedConnections.Add(SaasDbProperties.ConnectionStringName);
    });
});
  • ABP Framework version: v8.0.2
  • UI Type: Microservice - MVC - Created using ABP Studio
  • Database System: MongoDB
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes
  • Exception message and full stack trace: N/A
  • Steps to reproduce the issue:
  1. Add new service using Studio UI - template: service-nolayer
  2. Apply step-by-step the required changes which are well described in the services/cms/README.md file
  3. Add cmskit-pro modules using Studio's import module
    • Add Volo.CmsKit.Pro.Application.Contracts to the MyProject.CmsService.Contracts
    • Add Volo.CmsKit.Pro.Application, Volo.CmsKit.Pro.HttpApi and Volo.CmsKit.Pro.MongoDB to the MyProject.CmsService
    • Add Volo.CmsKit.Pro.Domain.Shared to the MyProject.AdministrationService for permissions and features
    • Add Volo.CmsKit.Pro.Web, Volo.CmsKit.Pro.HttpApi.Client and MyProject.CmsService.Contracts to the MyProject.Web
  4. Enable CmsKit and CmsKitPro global features for
    • MyProject.CmsService.Contracts
    • MyProject.AdministrationService
    • MyProject.Web
  5. Replace ICmsKitProMongoDbContext and ICmsKitMongoDbContext via CmsServiceDbContext using ReplaceDbContext attribute.
  6. Run the application.

CMS Features:

Permissions

What did I forget?

Typically, you don't need to configure CORS, as only browsers check CORS settings, and only gateway and authentication server applications really require it.

You are right, my bad. the problem was connection string. I still don't fully understand the new system but I'm sure a great team is working on it. The documents are related to the previous template. Thanks for helpful reply.


also, I have a feature request. a "Clear all logs" button so that we can see only the logs related to the last try. For now, we should conclude by checking the time.

Could you specify which services are causing the CORS exceptions?

auditlogging didn't work on production, I have seen only the administration service is available in the CORS, I added other services but still there is no log on my dashboard and I get connection timeout in the pod's log. also allowed redirect URL for authserver not contains gateways so we can't authorize to make api call with swaggerUI,

EDIT: I found another problem with auditlogging. the connection string is not implemented in authserver's deployment chart. Also SaasService connection string, so tenant login will fail.

You did a great job and added important modules to the Microservices Studio template. thank you so much. But I did not understand why CMSKit is not present in these packages. Is this module not compatible with this structure? Also, helm charts are not configured properly and if you deploy with default settings, some requests from modules will be rejected by CORS.

Thank you for reply, For who has same question, Useful link is this article. we need to extend the user entity with wallet address and public key. we need to create custom user manager to getting user ID by their wallet address and redirect them to the Web3LoginController.Login after validating the public key or Web3LoginController.Register for new users.

I want to add it as a module top of abp identity, why you answer me with setup guide of a plugin that not related to abp

I want to support login via wallet, where the users have a linked web3 wallet to their account. Is there any useful document/article around this? We have the wallet address and a base64 public key after login submitted from the client.

Zobrazeno od 21 do 30 z celkem 63 záznamů
Made with ❤️ on ABP v8.2.0-preview Updated on března 25, 2024, 15:11