We are facing a very strange behavior with PD4ML and JBOSS App server in our production environment. We are using custom fonts embedded within a jar file which is part of the app war deployable.
We have configured the below fonts in the pd4fonts.properties which is called by the java class using pd4ml.useTTF("java:defaultfonts", true);
Arial\ Bold\ Italic=arialbi.ttf
Courier\ New\ Bold=courbd.ttf
Courier\ New\ Bold\ Italic=courbi.ttf
Courier\ New\ Italic=couri.ttf
Times\ New\ Roman=times.ttf
Times\ New\ Roman\ Bold=timesbd.ttf
Times\ New\ Roman\ Bold\ Italic=timesbi.ttf
Times\ New\ Roman\ Italic=timesi.ttf
Gill\ Sans\ Bold=GillSansMTBold.ttf
Gill\ Sans\ Bold\ Italic=GillSansMTBoldItalic.ttf
Gill\ Sans\ Italic=GillSansMTItalic.ttf
Gill\ Sans\ Light=GillSansMTLight.ttf
Gill\ Sans\ Semi\ Bold=GillSans-SemiBold.ttf
Gill\ Sans\ Condensed=GillSansMT-condensed.ttf
The issue is that we are seeing, in Production the fonts in the PDF generated are switching to AdobeSongStd.ttf instead of times.ttf. Once we restart the jboss by clearing the cache files (tmp and work folders in unix) the times.ttf is being used again which is the expected fonts. After a few random days, the fonts are going back to AdobeSongStd. Every time the jboss is restarted the fonts switch back to times.ttf.
I can see that Jboss is extracting these jar files having the fonts on to the tmp cache folder and I am assuming it then uses the fonts from there. However we are not able to understand why jboss/pd4ml is not using the times.ttf font and why it is using AdobeSongStd.ttf file instead. Also we do not know why the times.ttf is fetched properly when we do a jboss restart after clearing cache.
Can anyone please help me on this?
pd4ml_rc_jar.JPG [ 80.66 KiB | Viewed 2548 times ]