Hi everyone,
Aspose.PDF throws a NullReferenceException when saving a document as a stream on my integration environement (into a docker container), even though it works well locally… I’ve tried to change the Aspose version (18.12, 20.6, 20.7) but the problem persists.
Here is the code:
var file = new Aspose.Pdf.Document(Path.ChangeExtension(doc.File.Path, "pdf"));
// Convert document to base 64 string
string base64FileToSign;
using (var outStream = new MemoryStream())
{
Console.WriteLine("Is outStream null?");
Console.WriteLine(outStream == null); // False
Console.WriteLine("Is file null?");
Console.WriteLine(file == null); // False
file.Save(outStream, SaveFormat.Pdf); // NullReferenceException
base64FileToSign = Convert.ToBase64String(outStream.ToArray());
}
Here is the exception stack trace:
10/08/2020 12:14:38System.NullReferenceException: Object reference not set to an instance of an object.
10/08/2020 12:14:38 at #=znHA95grzTGE4zq2AFeMfRCq0zqR5.#=z7AaEsao=(#=zp_V_l1Mvkg23muomG$JkgY69t8EL #=zWS2rR7liNJQN)
10/08/2020 12:14:38 at #=z2MMIu0$I1wO8R$unHBrdweI=.#=zOMbIeJM=(#=zp_V_l1Mvkg23muomG$JkgY69t8EL #=zWS2rR7liNJQN)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zBjBIJohMYi39KZobqD48PL57rokXxn8dcUTh2saBjm6a(Object #=z$Mn61Qs=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=z9z6sSRGn946xniAuUfZnAqWnnsYb2EY77IQs_dLNjupa(MethodBase #=z$Mn61Qs=, Boolean #=zJKSNvTo=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zIXUtMI8o3kj5iO4W5zeRxF3Fbx$t(#=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY= #=z$Mn61Qs=, #=qVNVRJVzHhGDD2q4TVWbHKniZLImufmg8LjJ$5FRCnZY= #=zJKSNvTo=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zqpUKT$yINYYW2boIGIUQs76bfk03ThIqYDL1ECY=()
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zwAkouQ_qu9bo4qEkhuQ6_5aQy8zHMT2kHRpl$gI=(Boolean #=z$Mn61Qs=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zBjBIJohMYi39KZobqD48PL57rokXxn8dcUTh2saBjm6a(Object #=z$Mn61Qs=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=z3NvYiMARoMDmOVcczX$mj1bJgfatgt0C7g==()
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zAweICui3kTJVcjrF19v7nLoJdtEEiuEdllfDcAtkrpOI(#=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY= #=z$Mn61Qs=, #=qVNVRJVzHhGDD2q4TVWbHKniZLImufmg8LjJ$5FRCnZY= #=zJKSNvTo=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zqpUKT$yINYYW2boIGIUQs76bfk03ThIqYDL1ECY=()
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zwAkouQ_qu9bo4qEkhuQ6_5aQy8zHMT2kHRpl$gI=(Boolean #=z$Mn61Qs=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zBjBIJohMYi39KZobqD48PL57rokXxn8dcUTh2saBjm6a(Object #=z$Mn61Qs=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=z3NvYiMARoMDmOVcczX$mj1bJgfatgt0C7g==()
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zkk673iowztOmudof1092hBTQ5i0gREXTVvdO0yU=(Object #=z$Mn61Qs=, UInt32 #=zJKSNvTo=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zwAkouQ_qu9bo4qEkhuQ6_5aQy8zHMT2kHRpl$gI=(Boolean #=z$Mn61Qs=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zwAkouQ_qu9bo4qEkhuQ6_5aQy8zHMT2kHRpl$gI=(Boolean #=z$Mn61Qs=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zWRAdnz8251txzBN$LFq7XQPUrE4Fh3mPiMG_Qes=()
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zG4fiMqbltwqWs_OfflMoxO0=(Object[] #=z$Mn61Qs=, Type[] #=zJKSNvTo=, Type[] #=zq2vrlDc=, Object[] #=ziBeFMlc=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zchUqj7_c6tPX9MQYb9Jp0bu7qdvOzeIdhC3i8oI=(Stream #=z$Mn61Qs=, String #=zJKSNvTo=, Object[] #=zq2vrlDc=, Type[] #=ziBeFMlc=, Type[] #=zhSSQU60=, Object[] #=zeB_H6no=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zJNWbikYCiYNO1zFmNfjoV2Kr$M_NFVMSMHMgexU=(Stream #=z$Mn61Qs=, String #=zJKSNvTo=, Object[] #=zq2vrlDc=)
10/08/2020 12:14:38 at #=qup3TNXHhuiQKW2jaXaI6m_PL7xxT2H8rB4o6I3GarCY=.#=zvFMKSW3OhAQ9CoKsILgNSOijQPhItCXZXg==(Stream #=z$Mn61Qs=, String #=zJKSNvTo=, Object[] #=zq2vrlDc=)
10/08/2020 12:14:38 at Aspose.Pdf.Document.#=zLLKL3S0IMlcC(Stream #=z4LBTcEU=, SaveOptions #=zm6V_S53fBIO_)
10/08/2020 12:14:38 at Aspose.Pdf.Document.#=zf69xgfS16u1o(Stream #=zg8bde0B4t1Vn, SaveOptions #=zRFkXoHU=)
10/08/2020 12:14:38 at Aspose.Pdf.Document.Save(Stream outputStream, SaveFormat format)
10/08/2020 12:14:38 at DDocs_reforged.Service.ElectronicSignature.ElectronicSignatureService.SendDocumentToDS(Int64 userId, String userEmail, DgdDocument doc) in /src/DDocs_reforged.Service/ElectronicSignature/ElectronicSignatureService.cs:line 112
10/08/2020 12:14:38 at DDocs_reforged.Api.Controllers.ElectronicSignatureController.SendDocumentToDS(String documentId) in /src/DDocs_reforged.Api/Controllers/ElectronicSignatureController.cs:line 105
10/08/2020 12:14:38 at lambda_method(Closure , Object )
10/08/2020 12:14:38 at Microsoft.Extensions.Internal.ObjectMethodExecutorAwaitable.Awaiter.GetResult()
10/08/2020 12:14:38 at Microsoft.AspNetCore.Mvc.Internal.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
10/08/2020 12:14:38 at System.Threading.Tasks.ValueTask`1.get_Result()
10/08/2020 12:14:38 at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync()
10/08/2020 12:14:38 at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync()
10/08/2020 12:14:38 at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)
10/08/2020 12:14:38 at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
10/08/2020 12:14:38 at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync()
10/08/2020 12:14:38 at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextExceptionFilterAsync()
I’ve seen this kind of issue (deep Aspose exceptions during PDF saving) elsewhere on the forum, but no solution/explanation is given, while this seem to be an Aspose related issue…
-> Does anyone has a solution, an explanation, or even a track?
Thanks in advance.