Activities of "alin.andersen"

Hey!

thanks that was the solution for my problem! :)

Best regards

Hey,

we migrated to .NET 6.0.0, OpenIddict and LeptonX.

When we navigate to the following page and press on Account we get and ObjectDisposedException.

All the other items in the list works as expected, except for Account.

  • ABP Framework version: v6.0.0
  • UI type: Blazor
  • DB provider: EF Core
  • Tiered (MVC)
  • Exception message and stack trace:
[15:22:21 INF] End processing HTTP request after 2187.5794ms - 200
[15:22:21 WRN] Unhandled exception rendering component: Cannot access a disposed object.
Object name: 'EmailSettingGroupViewComponent'.
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'EmailSettingGroupViewComponent'.
   at Microsoft.AspNetCore.Components.OwningComponentBase.get_ScopedServices()
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.LazyGetRequiredService[TRef](Type serviceType, TRef& reference)
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.LazyGetRequiredService[TService](TService& reference)
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.get_LoggerFactory()
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.<get__lazyLogger>b__13_0()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.get_Value()
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.get_Logger()
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.HandleErrorAsync(Exception exception)
   at Volo.Abp.SettingManagement.Blazor.Pages.SettingManagement.EmailSettingGroup.EmailSettingGroupViewComponent.OnInitializedAsync()
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle, ComponentState owningComponentState)
[15:22:21 ERR] Unhandled exception in circuit 'RYycSdzOZ4UKtDrv9-8tLdOcVwyK4AvSiP-oRuJzscw'.
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'EmailSettingGroupViewComponent'.
   at Microsoft.AspNetCore.Components.OwningComponentBase.get_ScopedServices()
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.LazyGetRequiredService[TRef](Type serviceType, TRef& reference)
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.LazyGetRequiredService[TService](TService& reference)
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.get_LoggerFactory()
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.<get__lazyLogger>b__13_0()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.get_Value()
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.get_Logger()
   at Volo.Abp.AspNetCore.Components.AbpComponentBase.HandleErrorAsync(Exception exception)
   at Volo.Abp.SettingManagement.Blazor.Pages.SettingManagement.EmailSettingGroup.EmailSettingGroupViewComponent.OnInitializedAsync()
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle, ComponentState owningComponentState)

Thanks!

Hey,

we did update our project to .NET 6 and migrated to OpenIddict.

Our client application authenticates with the scope offline_access. We need to refresh our tokens with the refresh token. But without the offline_access token the refresh token is null.

The error message we get from AuthServer is the following:

error:invalid_request
error_description:The client application is not allowed to use the 'offline_access' scope.
error_uri:https://documentation.openiddict.com/errors/ID2065

How can we enable this functionality? I did not find any documentation for this yet.

Thanks!

  • ABP Framework version: v6.0.0
  • UI type: Blazor
  • DB provider: EF Core
  • Tiered (MVC)

The runtime is installed and up-to-date:

ubuntu@ov-e4ba07:~$ dotnet --info

global.json file:
  Not found

Host:
  Version:      6.0.9
  Architecture: x64
  Commit:       163a63591c

.NET SDKs installed:
  No SDKs were found.

.NET runtimes installed:
  Microsoft.AspNetCore.App 6.0.9 [/usr/lib/dotnet/dotnet6-6.0.109/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 6.0.9 [/usr/lib/dotnet/dotnet6-6.0.109/shared/Microsoft.NETCore.App]

Download .NET:
  https://aka.ms/dotnet-download

Learn about .NET Runtimes and SDKs:
  https://aka.ms/dotnet/runtimes-sdk-info

So this is not the problem.

Very strange that it is not working.

Perfect now its working!

Before I tried to build it with Framework-Dependent (which is portable). Why does it not work if we build it in the portable way?

Thanks!

Hey!

On our production environment (ubuntu) we have our published application (Release) deployed.

We get this error when opening the identity clients list in the web browser:

2022-10-06 09:58:40.194 +00:00 [INF] Executed endpoint 'Volo.Abp.IdentityServer.ApiResourcesController.GetAllListAsync (Volo.Abp.IdentityServer.HttpApi)'
2022-10-06 09:58:40.194 +00:00 [INF] Request finished HTTP/1.1 GET http://api2.test.lexica.ch/api/identity-server/api-resources/all?api-version=1.0 - - - 200 - application/json;+charset=utf-8 75.2246ms
2022-10-06 09:58:40.299 +00:00 [INF] Request starting HTTP/1.1 GET http://api2.test.lexica.ch/api/identity-server/clients?Sorting=&SkipCount=0&MaxResultCount=10&api-version=1.0 - -
2022-10-06 09:58:40.301 +00:00 [INF] Executing endpoint 'Volo.Abp.IdentityServer.ClientsController.GetListAsync (Volo.Abp.IdentityServer.HttpApi)'
2022-10-06 09:58:40.301 +00:00 [INF] Route matched with {controller = "Clients", area = "identityServer", action = "GetList", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Volo.Abp.Application.Dtos.PagedResultDto`1[Volo.Abp.IdentityServer.Client.Dtos.ClientWithDetailsDto]] GetListAsync(Volo.Abp.IdentityServer.Client.Dtos.GetClientListInput) on controller Volo.Abp.IdentityServer.ClientsController (Volo.Abp.IdentityServer.HttpApi).
2022-10-06 09:58:40.305 +00:00 [ERR] ---------- RemoteServiceErrorInfo ----------
{
  "code": null,
  "message": "An internal error occurred during your request!",
  "details": null,
  "data": {},
  "validationErrors": null
}

2022-10-06 09:58:40.305 +00:00 [ERR] Could not load file or assembly 'System.Collections.Specialized, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified.

System.IO.FileNotFoundException: Could not load file or assembly 'System.Collections.Specialized, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified.

File name: 'System.Collections.Specialized, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
   at System.ComponentModel.TypeDescriptor.PipelineFilter(Int32 pipelineType, ICollection members, Object instance, IDictionary cache)
   at System.ComponentModel.TypeDescriptor.GetPropertiesImpl(Object component, Attribute[] attributes, Boolean noCustomTypeDesc, Boolean noAttributes)
   at Volo.Abp.Validation.DataAnnotationObjectValidationContributor.AddErrors(List`1 errors, Object validatingObject)
   at Volo.Abp.Validation.DataAnnotationObjectValidationContributor.ValidateObjectRecursively(List`1 errors, Object validatingObject, Int32 currentDepth)
   at Volo.Abp.Validation.DataAnnotationObjectValidationContributor.AddErrorsAsync(ObjectValidationContext context)
   at Volo.Abp.Validation.ObjectValidator.GetErrorsAsync(Object validatingObject, String name, Boolean allowNull)
   at Volo.Abp.Validation.MethodInvocationValidator.AddMethodParameterValidationErrorsAsync(IAbpValidationResult context, ParameterInfo parameterInfo, Object parameterValue)
   at Volo.Abp.Validation.MethodInvocationValidator.AddMethodParameterValidationErrorsAsync(MethodInvocationValidationContext context)
   at Volo.Abp.Validation.MethodInvocationValidator.ValidateAsync(MethodInvocationValidationContext context)
   at Volo.Abp.Validation.ValidationInterceptor.ValidateAsync(IAbpMethodInvocation invocation)
   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_method6744(Closure , Object )
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.&lt;InvokeActionMethodAsync&gt;g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>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.InvokeInnerFilterAsync()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
2022-10-06 09:58:40.308 +00:00 [INF] Executing ObjectResult, writing value of type 'Volo.Abp.Http.RemoteServiceErrorResponse'.
2022-10-06 09:58:40.308 +00:00 [INF] Executed action Volo.Abp.IdentityServer.ClientsController.GetListAsync (Volo.Abp.IdentityServer.HttpApi) in 6.1533ms
2022-10-06 09:58:40.308 +00:00 [INF] Executed endpoint 'Volo.Abp.IdentityServer.ClientsController.GetListAsync (Volo.Abp.IdentityServer.HttpApi)'

It seems we are missing this assembly 'System.Collections.Specialized'. I tried to publish the application again and in the output folder there is no 'System.Collections.Specialized' dll?

Any ideas?

  • ABP Framework version: v5.3.3
  • UI type: Blazor
  • DB provider: EF Core
  • Tiered

Best Regards

Ok thanks for the clarification! So this is not possible and this is a limitation by ABP.

Is it possible to retrieve the Bearer Access token? Or is it not possible due to security requirements.

Can you show a case?

Why do you need a showcase? Is it possible to retrieve the Bearer Access token or not? It is a yes or no answer. If it is not possible, then my question is why? The client should anyway have access to the Bearer Access token.

As an example, what if I need to implement something very specific in the Blazor Server client where I have to interact with a controller directly.

Thanks for the help!

Ah thank you very much! We will try using the IRemoteStreamContent interface.

Just out of curiosity: Is it possible to retrieve the Bearer Access token? Or is it not possible due to security requirements.

Hey,

so we need to upload a file from our Blazor Server App to the Backend.

Problem is we can't use the IFileForm in our ApplicationService because it depends on Microsoft.AspNetCore.Http and we do not want to include this dependency on all our clients (we have other mobile clients beside the Blazor Service client).

So the only way we can upload a file properly is to call the controller directly from our Blazor Server App with the file.

For that to work we need the URL of the Remote Service and the Bearer Access Token.

How can we inject these two required information into the Blazor Server page in order to create our own HttpClient and make the call with the file attached?

Should we retrieve the URL for the remote service by using IConfiguration? Is this the best way to do it?

Thanks!

  • UI type: Blazor
  • DB provider: EF Core
  • Tiered (MVC)

Update:

I also tried to inject IHttpClientFactory hoping the Bearer Access Token would be set. But all headers are empty.

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