Error Telerik Reporting in Linux Server

1 Answer 220 Views
.NET Core Report Designer - Web
Jordi
Top achievements
Rank 1
Jordi asked on 28 Mar 2024, 03:21 PM
Good afternoon, we have an API developed in NET 6 that is running on a Linux server.
Using the Telerik Reporting 18.0.24.305 library, when executing the function var report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream), where sourceStream is System.IO.File.OpenRead(ReportPath), we encounter the following error:

Failed to launch 'type:%20Telerik.Reporting.ReportSerialization.Current.ReportSerializable%601[Telerik.Reporting.Report]' because the scheme does not have a registered handler.

However, if the API is executed on a Windows server, it runs correctly.

How can this error be resolved?
Rayane
Top achievements
Rank 1
commented on 19 May 2025, 02:11 PM

Hello, 

are you able to resolve this?

1 Answer, 1 is accepted

Sort by
0
Dimitar
Telerik team
answered on 01 Apr 2024, 12:03 PM

Hello Jordi,

Thank you for the provided information!

Usually, such issues arise when some of the dependencies, required to run Telerik Reporting on LInux, are not installed, please refer to the Deploying on Linux section of the Using Telerik Reporting with .NET 6+ or Standard - Telerik Reporting article for guidance.

In case the issue persists even after installing the required dependencies, please attach a trace listener to the project and send the log in this forum thread so that we can have a look at the stack trace - How to troubleshoot errors in ASP.NET Core projects - Telerik Reporting.

I hope that the provided information will help.

Regards,
Dimitar
Progress Telerik

Stay tuned by visiting our roadmap and feedback portal pages, enjoy a smooth take-off with our Getting Started resources, or visit the free self-paced technical training at https://learn.telerik.com/.
Rayane
Top achievements
Rank 1
commented on 19 May 2025, 02:15 PM

we have an API developed in .Net8.0 and deploying on linux with kubernetes azure server.

The API utilizes Telerik Reporting version 19.0.25.313, and we are encountering an issue when attempting to deserialize a report using the ReportXmlSerializer class. Below is the relevant code:

ReportXmlSerializer reportXmlSerializer = new ReportXmlSerializer();
Telerik.Reporting.Report report;

using (FileStream fs = new FileStream(ReportPath, FileMode.Open, FileAccess.Read))
{
    report = (Telerik.Reporting.Report)reportXmlSerializer.Deserialize(fs);
}

To address compatibility with Linux, we have already taken the following steps on linux server:

  • Installed the Telerik.Drawing.Skia package:
    <PackageReference Include="Telerik.Drawing.Skia" Version="19.0.25.313" />

  • Added SkiaSharp.NativeAssets.Linux:
    <PackageReference Include="SkiaSharp.NativeAssets.Linux" Version="2.88.3" />

  • Configured appsettings.json to use Skia as the graphics engine:

"Telerik.Reporting": {
  "Rendering": {
    "GraphicsEngine": "Skia"
  }
}

 

Despite these configurations, the deserialization fails on Linux, while it works correctly when the same API is executed on a Windows server.

Dimitar
Telerik team
commented on 20 May 2025, 02:32 PM

Thanks for the attached file!

Please try to install the SkiaSharp.NativeAssets.Linux.NoDependencies package instead of "SkiaSharp.NativeAssets.Linux" and let me know if that resolves the issue.

If that does not resolve the issue, when Skia is not working even with this package installed, the reason often seems to be that the Linux image comes with different versions of system libraries like libc, glibc, etc.

For example, this seems to be the case with the ARM64 Alpine Linux - .net core - Is there any way to run an Avalonia app in an arm64 environment? - Stack Overflow.

Please make sure that the environment in which you are running the application with Reporting supports Skia and its dependencies.

In case you need further assistance, please let us know more information about what Linux distrubution/image you are using.

Tags
.NET Core Report Designer - Web
Asked by
Jordi
Top achievements
Rank 1
Answers by
Dimitar
Telerik team
Share this question
or