Activities of "AlderCove"

Answer

@alper any update on this?

@lwilbourn @rcalv002 I reproduced the issue. There's a problem generating the Angular code. Created an internal issue. Will be fixed in v4.0.1

I have just updated abp cli and suite to 4.1.1, created a new solution but the CRUD Page Generator isn't generating Angular UI.

I can see an issue in the Angular Schematics log file.

0 verbose cli [ 0 verbose cli 'C:\Program Files\nodejs\node.exe', 0 verbose cli 'C:\Users\UserName\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js', 0 verbose cli 'exec', 0 verbose cli '--', 0 verbose cli 'C:/Users/UserName/Source/Repos/TestAngular/angular/.suite/schematics/node_modules/.bin/ng', 0 verbose cli 'g', 0 verbose cli '.suite/schematics/collection.json:entity', 0 verbose cli 'app-pro', 0 verbose cli 'TestAngular', 0 verbose cli 'C:/Users/UserName/Source/Repos/TestAngular/aspnet-core/.suite/entities/PeriodType.json' 0 verbose cli ] 1 info using npm@7.4.0 2 info using node@v12.14.1 3 timing config:load:defaults Completed in 1ms 4 timing config:load:file:C:\Users\UserName\AppData\Roaming\npm\node_modules\npm\npmrc Completed in 2ms 5 timing config:load:builtin Completed in 2ms 6 timing config:load:cli Completed in 3ms 7 timing config:load:env Completed in 0ms 8 timing config:load:file:C:\Users\UserName\Source\Repos\TestAngular\angular.npmrc Completed in 0ms 9 timing config:load:project Completed in 1ms 10 timing config:load:file:C:\Users\UserName.npmrc Completed in 1ms 11 timing config:load:user Completed in 1ms 12 timing config:load:file:C:\Users\UserName\AppData\Roaming\npm\etc\npmrc Completed in 0ms 13 timing config:load:global Completed in 0ms 14 timing config:load:cafile Completed in 0ms 15 timing config:load:validate Completed in 0ms 16 timing config:load:setUserAgent Completed in 0ms 17 timing config:load:setEnvs Completed in 1ms 18 timing config:load Completed in 10ms 19 verbose npm-session 46848984ec072eb7 20 timing npm:load Completed in 19ms 21 timing command:exec Completed in 6ms 22 verbose stack Error: ENOENT: no such file or directory, open 'C:\Users\UserName\Source\Repos\TestAngular\angular.suite\schematics\node_modules.bin\ng\package.json' 23 verbose cwd C:\Users\UserName\Source\Repos\TestAngular\angular 24 verbose Windows_NT 10.0.18363 25 verbose argv "C:\Program Files\nodejs\node.exe" "C:\Users\UserName\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js" "exec" "--" "C:/Users/UserName/Source/Repos/TestAngular/angular/.suite/schematics/node_modules/.bin/ng" "g" ".suite/schematics/collection.json:entity" "app-pro" "TestAngular" "C:/Users/UserName/Source/Repos/TestAngular/aspnet-core/.suite/entities/PeriodType.json" 26 verbose node v12.14.1 27 verbose npm v7.4.0 28 error code ENOENT 29 error syscall open 30 error path C:/Users/UserName/Source/Repos/TestAngular/angular/.suite/schematics/node_modules/.bin/ng/package.json 31 error errno -4058 32 error enoent ENOENT: no such file or directory, open 'C:\Users\UserName\Source\Repos\TestAngular\angular.suite\schematics\node_modules.bin\ng\package.json' 33 error enoent This is related to npm not being able to find a file. 34 verbose exit -4058

Answer

Adding a new multi-tenanted entity through ABP Suite has AutoMapperConfigurationException

ABP Framework version: v4.3.0 ( module template) UI type: MVC DB provider: EF Core Identity Server Separated: no

When starting the Unified App from a Module template, after generating a multi-tenanted entity, adding migration and updating SQL database, the application has exception on startup:

An unhandled exception occurred while processing the request.

AutoMapperConfigurationException: Unmapped members were found. Review the types and members below. Add a custom mapping expression, ignore, add a custom resolver, or modify the source/destination type For no matching constructor, add a no-arg ctor, add optional arguments, or map all of the constructor parameters

ResourceClassTypeCreateDto -> ResourceClassType (Destination member list) Acs.ResourceLibrary.ResourceClassTypes.ResourceClassTypeCreateDto -> Acs.ResourceLibrary.ResourceClassTypes.ResourceClassType (Destination member list)

Unmapped properties:

TenantId

ResourceClassTypeUpdateDto -> ResourceClassType (Destination member list) Acs.ResourceLibrary.ResourceClassTypes.ResourceClassTypeUpdateDto -> Acs.ResourceLibrary.ResourceClassTypes.ResourceClassType (Destination member list)

Unmapped properties: TenantId AutoMapper.ConfigurationValidator.AssertConfigurationIsValid(IEnumerable typeMaps)

<br> DependencyResolutionException: An exception was thrown while activating λ:Microsoft.AspNetCore.Identity.ISecurityStampValidator -> Castle.Proxies.AbpSecurityStampValidatorProxy -> Volo.Abp.MultiTenancy.TenantConfigurationProvider -> Volo.Saas.Tenants.TenantStore -> Volo.Abp.ObjectMapping.DefaultObjectMapper1[[Volo.Saas.SaasDomainModule, Volo.Saas.Domain, Version=4.3.0.0, Culture=neutral, PublicKeyToken=null]] -> Volo.Abp.AutoMapper.AutoMapperAutoObjectMappingProvider1[[Volo.Saas.SaasDomainModule, Volo.Saas.Domain, Version=4.3.0.0, Culture=neutral, PublicKeyToken=null]] -> λ:Volo.Abp.AutoMapper.IMapperAccessor -> λ:Volo.Abp.AutoMapper.MapperAccessor. Autofac.Core.Resolving.Middleware.ActivatorErrorHandlingMiddleware.Execute(ResolveRequestContext context, Action next)

<br> Was able to resolve the issue by adding .Ignore(x => x.TenantId) extension on the CreateMap in the src/Project.Application ProjectAutoMapperProfile class:

Is that the correct approach?

Answer

@Rrader30, we need to do something similar.

I think the File Management module is an incomplete feature without the ability to manage permissions to folders, or at least utilize in a way that provides a root folder as an entry point to the UI, so that the user is restricted to only that folder and its subfolders.

There's an open issue for Resource based authorization integration: https://github.com/abpframework/abp/issues/236

Have you found workable a solution yet that you can share?

Thanks Jamie

Answer

@Rrader30

Appreciate for info, was hoping to utilize out of the box too but will have to craft my own as well.

Marketplace for modules would be nice!

Thanks

  • Version: 4.4.4
  • UI: Angular
  • DB: EF Core
  • Stack trace: When I run the application based on the Application template in Docker, I get an exception with the GetHealthReport.

2021-12-06 19:15:19.798 +00:00 [INF] Start processing HTTP request GET "http://[::]/health-status" 2021-12-06 19:15:19.798 +00:00 [INF] Sending HTTP request GET "http://[::]/health-status" 2021-12-06 19:15:19.809 +00:00 [ERR] GetHealthReport threw an exception when trying to get report from /health-status configured with name Portal Health Status. System.Net.Http.HttpRequestException: IPv4 address 0.0.0.0 and IPv6 address ::0 are unspecified addresses that cannot be used as a target address. (Parameter 'hostName') ([::]:80) ---> System.ArgumentException: IPv4 address 0.0.0.0 and IPv6 address ::0 are unspecified addresses that cannot be used as a target address. (Parameter 'hostName') at System.Net.Dns.GetHostEntryOrAddressesCoreAsync(String hostName, Boolean justReturnParsedIp, Boolean throwOnIIPAny, Boolean justAddresses) at System.Net.Dns.BeginGetHostAddresses(String hostNameOrAddress, AsyncCallback requestCallback, Object state) at System.Net.Sockets.MultipleConnectAsync.StartConnectAsync(SocketAsyncEventArgs args, DnsEndPoint endPoint) at System.Net.Sockets.Socket.ConnectAsync(SocketAsyncEventArgs e, Boolean userSocket) at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ConnectAsync(Socket socket) at System.Net.Sockets.Socket.ConnectAsync(EndPoint remoteEP, CancellationToken cancellationToken) at System.Net.Sockets.SocketTaskExtensions.ConnectAsync(Socket socket, EndPoint remoteEP, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.DefaultConnectAsync(SocketsHttpConnectionContext context, CancellationToken cancellationToken) at System.Net.Http.ConnectHelper.ConnectAsync(Func3 callback, DnsEndPoint endPoint, HttpRequestMessage requestMessage, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.ConnectHelper.ConnectAsync(Func3 callback, DnsEndPoint endPoint, HttpRequestMessage requestMessage, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken) at HealthChecks.UI.Core.HostedService.HealthCheckReportCollector.GetHealthReport(HealthCheckConfiguration configuration) i

The health checks UI shows this status:

I can configure another health check in the appconfig, which works OK:

appconfig.json settings:

"HealthChecksUI": { "HealthChecks": [ { "Name": "Portal Health Status AppSettings Config", "Uri": "http://localhost:80/health-status" } ], "EvaluationTimeOnSeconds": 10, "MinimumSecondsBetweenFailureNotifications": 60 }

application Log:

2021-12-06 20:36:17.126 +00:00 [INF] Executing endpoint 'HealthChecks UI Api' 2021-12-06 20:36:17.128 +00:00 [INF] Executed endpoint 'HealthChecks UI Api' 2021-12-06 20:36:17.128 +00:00 [INF] Request finished HTTP/1.1 GET http://localhost:8080/health-api - - - 200 - application/json 10.1569ms 2021-12-06 20:36:20.024 +00:00 [INF] Start processing HTTP request GET "http://localhost/health-status" 2021-12-06 20:36:20.024 +00:00 [INF] Sending HTTP request GET "http://localhost/health-status" 2021-12-06 20:36:20.025 +00:00 [INF] Request starting HTTP/1.1 GET http://localhost/health-status - - 2021-12-06 20:36:20.028 +00:00 [INF] Executing endpoint 'Health checks' 2021-12-06 20:36:20.030 +00:00 [INF] Executed endpoint 'Health checks' 2021-12-06 20:36:20.031 +00:00 [INF] Received HTTP response headers after 7.0253ms - 200 2021-12-06 20:36:20.031 +00:00 [INF] End processing HTTP request after 7.1096ms - 200

I use docker compose to deploy the app locally to docker

`version: '3.8'

services: portal_web_svr: container_name: portal_web_dev
image: aldercovempn.azurecr.io/acs/portal_web_dev networks: - cts_portal_network volumes: - ./default.conf:/etc/nginx/conf.d/default.conf:z ports: - "4200:4200" depends_on: - portal_api_svr

portal_api_svr: container_name: portal_api_dev image: aldercovempn.azurecr.io/acs/portal_api_dev networks: - cts_portal_network environment: - ASPNETCORE_ENVIRONMENT=Production - ConnectionStrings__Default=Server=host.docker.internal;Database=Acs_Portal;User id=docker; Password=dockertime; volumes: - ./Host-Logs:/app/Logs - ./App_Data:/app/App_Data:z - ./appsettings.json:/app/appsettings.json:z ports: - "44360:44360" - "44307:44307" - "8080:80" links: - redis

redis: container_name: portal_redis # Container name image: redis networks: - cts_portal_network

networks: cts_portal_network: `

  • ABP Framework version: v4.4.4
  • UI type: Angular
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): no

Hi

I'm trying to get my solution running locally in docker and having an issue with the authorization.

When I try to authorize:

I think this is likely an issue with configuration in the appsettings.json or docker-compose.yml files but I need some help.

appsettings.json { "App": { "SelfUrl": "https://localhost:44360", "AngularUrl": "http://localhost:4200", "CorsOrigins": "https://.Portal.com,http://localhost:4200", "RedirectAllowedUrls": "http://localhost:4200,https://localhost:44307,http://localhost:8080" }, "Redis": { "Configuration": "127.0.0.1" }, "ConnectionStrings": { "Default": "Server=host.docker.internal; Database=CTSDb; User=docker; Password=dockertime; Max Pool Size=400;" }, "AuthServer": { "Authority": "https://localhost:44360", "RequireHttpsMetadata": "false", "SwaggerClientId": "Portal_Swagger", "SwaggerClientSecret": "1q2w3e" }, "StringEncryption": { "DefaultPassPhrase": "6MynJDJ1sxdTgSZD" }, "Settings": { "Volo.Abp.LeptonTheme.Style": "Style6", "Volo.Abp.LeptonTheme.Layout.MenuPlacement": "Left", "Volo.Abp.LeptonTheme.Layout.MenuStatus": "AlwaysOpened", "Volo.Abp.LeptonTheme.Layout.Boxed": "False" }, "Logging": { "LogLevel": { "Default": "Information", "Microsoft": "Warning", "Microsoft.Hosting.Lifetime": "Information" } }, "HealthChecksUI": { "HealthChecks": [ { "Name": "Portal Health Status AppSettings Config", "Uri": "http://localhost:80/health-status" } ], "EvaluationTimeOnSeconds": 10, "MinimumSecondsBetweenFailureNotifications": 60 } }

docker-compose.yml:

version: '3.8'

services: portal_web_svr: container_name: portal_web_dev
image: aldercovempn.azurecr.io/acs/portal_web_dev networks: - cts_portal_network volumes: - ./default.conf:/etc/nginx/conf.d/default.conf:z ports: - "4200:4200" depends_on: - portal_api_svr

portal_api_svr: container_name: portal_api_dev image: aldercovempn.azurecr.io/acs/portal_api_dev networks: - cts_portal_network environment: - ASPNETCORE_ENVIRONMENT=Production - ConnectionStrings__Default=Server=host.docker.internal;Database=Acs_Portal;User id=docker; Password=dockertime; volumes: - ./Host-Logs:/app/Logs - ./App_Data:/app/App_Data:z - ./appsettings.json:/app/appsettings.json:z ports: - "44360:44360" - "44307:44307" - "8080:80" - "44345:443"

links:
  - redis
  

redis: container_name: portal_redis # Container name image: redis networks: - cts_portal_network

networks: cts_portal_network:

Thanks

thank you

Answer

ABP Version 5.1.1

  • MVC with public website and tiered identity server
  • EF Core
  • Steps needed to reproduce the problem:
  1. Create a new MVC solution with abp suite
  2. Run migrations
  3. Run the app

The profile picture does not seem to be working properly. It shows properly on the account page, but not in the web or public web applications. Doesn't make a difference if changing to Avatar/Gravatar or uploaded file, still shows:

Error in the browser on get of the picture:

With an Id that corresponds with the Admin user Id:

  • ABP Framework version: v5.1.1
  • UI type: MVC
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes

Please help me to understand the Dynamic JavaScript API Client Proxies, the architecture a little better and that I am taking the correct steps for accessing the proxies from the Web application.

In order to access module proxy scripts from the Web project, I did the following:

  1. Started the application
  2. Navigated to the HttpApi.Client folder
  3. Generate the client proxies (abp generate-proxy -t csharp -m fileManagement -url https://localhost:44308/)

I notice though that all of these proxy scripts are available from the HttpApi (https://localhost:44308/Abp/ServiceProxyScript) project and wonder why the Web project doesn't utilize the HttpApi scripts directly?

I also noticed that some of the framework modules are available already in the HttpApi.Client (abp, cms-kit and cms-kit-pro module), while some of the other ones I am using are not.

Thanks - appreciate the help.

  • ABP Framework version: v5.1.1 & 5.1.2
  • UI type: MVC
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes
  • Exception message and stack trace:

jquery.js?_v=637774598147390000:4059 Uncaught TypeError: Cannot read properties of undefined (reading 'users') at HTMLDocument. (chatMessageReceiving…2743500000000:12:31) at mightThrow (jquery.js?_v=637774598147390000:3766:29) at process (jquery.js?_v=637774598147390000:3834:12)

  • Steps to reproduce the issue:"
  1. Create a new application
  2. Add the Chat module
  3. run the application
  4. enable Chat feature
  5. open developer tools
  6. refresh the page
  7. view the developer tools console

Showing 1 to 10 of 74 entries
Made with ❤️ on ABP v8.2.0-preview Updated on March 25, 2024, 15:11