Support Article
htmltopdf is failing - NoClassDefFoundError PD4ML
SA-25
Summary
On certain nodes, activity htmltopdf fails occassionally with NoClassDefFoundError.
Error Messages
java.lang.NoClassDefFoundError: org/zefer/pd4ml/PD4ML
at com.pega.pegarules.integration.engine.internal.util.PDFUtilsImpl.generatePDF(PDFUtilsImpl.java:229)
at com.pega.pegarules.integration.engine.internal.util.PDFUtilsImpl.generatePDF(PDFUtilsImpl.java:329)
at com.pegarules.generated.activity.ra_action_htmltopdf_792606314b43fb77dd0c23e4d76f4526.step3_circum0(ra_action_htmltopdf_792606314b43fb77dd0c23e4d76f4526.java:354)
at com.pegarules.generated.activity.ra_action_htmltopdf_792606314b43fb77dd0c23e4d76f4526.perform(ra_action_htmltopdf_792606314b43fb77dd0c23e4d76f4526.java:107)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3018)
at com.pegarules.generated.activity.ra_action_sendinquirytopdf_c36e70bc0ce219331f3967adbdf00c01.step16_circum0(ra_action_exportinquirytopdf_c36e70bc0ce219331f3967adbdf00c01.java:1623)
at com.pegarules.generated.activity.ra_action_sendinquirytopdf_c36e70bc0ce219331f3967adbdf00c01.perform(ra_action_exportinquirytopdf_c36e70bc0ce219331f3967adbdf00c01.java:418)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3018)
Steps to Reproduce
Run a flow that includes 'htmltopdf' on one of the affected nodes
Root Cause
This is a flaw in PRPC classloader and the root cause is unknown at this point.
Resolution
There are two ways to temporarily resolve this issue. Please contact Pegasystems GCS to troubleshoot the issue further in order to find a permanent solution.
1. Restart the JVM. This should reset the classloader and the issue may go away.
2. Go to SMA application> Advanced> Classloader Management and select htmltopdf and/or your custom activity (sendinquirytopdf in this case) Class and 'Remove from Cache'. This should force classloader to reload the class again from the database when referenced in the flow.
Published February 15, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.