java.lang.ExceptionInInitializerError When Using Aspose.CAD in Multithreaded Environment

I am encountering a java.lang.ExceptionInInitializerError while using Aspose.CAD in a multithreaded context. The error occurs when I attempt to load a DXF file using Image.load() inside a class that implements Runnable and is submitted to an ExecutorService.

This code was working with an earlier version of Aspose.CAD but fails in version 25.3 Below is the stack trace:

Exception in thread “pool-7-thread-1” java.lang.ExceptionInInitializerError
at com.aspose.cad.Image.load(Unknown Source)
at org.egov.edcr.service.PdfGenerator.generateEnhancedPdf(PdfGenerator.java:605)

Caused by: java.lang.NullPointerException
at com.aspose.cad.internal.kV.a.a(Unknown Source)
at com.aspose.cad.internal.gs.a.(Unknown Source)
The crash happens during static initialization in internal classes, suggesting some internal state is not properly initialized in the thread context.

Could you please advise on the following:

Is Aspose.CAD thread-safe for use in ExecutorService or custom threads?

Are there any known changes in recent versions that would affect thread-based loading of images?

Is there a recommended way to use Image.load() safely in a multi-threaded environment?

Looking forward to your support.

error Log:
14:51:33,958 ERROR [stderr] (default task-2) at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

14:51:33,958 ERROR [stderr] (default task-2) at com.aspose.cad.internal.ak.aq.b(Unknown Source)

14:51:33,958 ERROR [stderr] (default task-2) at com.aspose.cad.internal.ak.aq.a(Unknown Source)

14:51:33,958 ERROR [stderr] (default task-2) at com.aspose.cad.internal.ak.y.a(Unknown Source)

14:51:33,958 ERROR [stderr] (default task-2) at com.aspose.cad.internal.N.c.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.eU.aW.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.eU.aW.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.fileformats.cad.cadobjects.CadObjectBase.getStaticProperties_internalized(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.fileformats.cad.cadobjects.CadObjectBase.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.hu.a.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.hu.f.b(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.hu.f.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.fileformats.cad.cadtables.CadVportTableObject.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.i.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.i.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.e.i(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.e.C(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.e.s(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.internal.mc.r.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.Image.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.Image.a(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.Image.g(Unknown Source)

14:51:33,959 ERROR [stderr] (default task-2) at com.aspose.cad.Image.load(Unknown Source)

14:51:33,965 ERROR [stderr] (default task-2) Caused by: java.lang.NullPointerException

14:51:33,965 ERROR [stderr] (default task-2) at com.aspose.cad.internal.lM.c.a(Unknown Source)

14:51:33,965 ERROR [stderr] (default task-2) at com.aspose.cad.internal.lM.c.a(Unknown Source)

14:51:33,966 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.a.f(Unknown Source)

14:51:33,966 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.a.e(Unknown Source)

14:51:33,966 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.a.d(Unknown Source)

14:51:33,966 ERROR [stderr] (default task-2) at com.aspose.cad.internal.gF.a.(Unknown Source)

14:51:33,966 ERROR [stderr] (default task-2) … 212 more

14:51:33,966 ERROR [org.egov.edcr.web.controller.rest.RestEdcrApplicationController] (default task-2) Handler dispatch failed; nested exception is java.lang.ExceptionInInitializerError

At these line : DxfImage image = (DxfImage) Image.load(dxfPath);

@johnhedo,
Hi,
could you please create some sample project so we can run it and observe the issue?

this issue was resolved from my side.

1 Like