Link to home
Start Free TrialLog in
Avatar of Kenny Devorak
Kenny DevorakFlag for United States of America

asked on

Platform, Locale, and Platform Name must not be null - Error Help

Below is the actual error that I'm getting:

The system has attempted to use an undefined value, which usually indicates a programming error, either in your code or some system code.
Null Pointers are another name for undefined values. Platform, Locale, and Platform Name must not be null  
 
 
The error occurred in C:\ColdFusion9\wwwroot\finance\admin\creditapp2.cfm: line 36
 
34 :         <cfpdfformparam name="income" value="#qmyrecord.monthlyincome#">
35 :         <cfpdfformparam name="othersource" value="#qmyrecord.othersource#">
36 :         <cfpdfformparam name="othermonthly" value="#qmyrecord.otherincome#">
37 :        
38 : </cfpdfform>

Below is all of my code:

 <cfif StructKeyExists(url,"recordid")>
      <cfquery name="qMyRecord" datasource="users">
select * from creditapp
WHERE idcreditapp = <cfqueryparam cfsqltype="cf_sql_integer" value="#url.recordid#">
  </cfquery>
    </cfif>
    <cfpdfform source="c:\coldfusion9\wwwroot\finance\admin\creditapp.pdf"
    destination="c:\coldfusion9\wwwroot\finance\admin\yourapp.pdf" action="populate" overwrite="true">
      <cfpdfformparam name="name" value="#qmyrecord.lastname#   /   #qmyrecord.firstname#   /   #qmyrecord.middle#">
      <cfpdfformparam name="generation" value="#qmyrecord.generation#">
      <cfpdfformparam name="birthdate" value="#qmyrecord.birthdate#">
      <cfpdfformparam name="social" value="#qmyrecord.soc1#-#qmyrecord.soc2#-#qmyrecord.soc3#">
      <cfpdfformparam name="homephone" value="#qmyrecord.homephone#">
      <cfpdfformparam name="address" value="#qmyrecord.address#">
      <cfpdfformparam name="city" value="#qmyrecord.city#">
      <cfpdfformparam name="state" value="#qmyrecord.state#">
      <cfpdfformparam name="zip" value="#qmyrecord.zip#">
      <cfpdfformparam name="timeaddress" value="#qmyrecord.residentyears# Years  #qmyrecord.residentyears# Months">
      <cfpdfformparam name="email" value="#qmyrecord.email#">
      <cfpdfformparam name="cellphone" value="#qmyrecord.cellphone#">
      <cfpdfformparam name="monthlyrent" value="#qmyrecord.monthlypayment#">
      <cfpdfformparam name="residenttype" value="#qmyrecord.resident#">
      <cfpdfformparam name="employer" value="#qmyrecord.employer#">
      <cfpdfformparam name="occupation" value="#qmyrecord.occupation#">
      <cfpdfformparam name="timejob" value="#qmyrecord.ytimejob#  #qmyrecord.mtimejob#">
      <cfpdfformparam name="employerphone" value="#qmyrecord.businessphone#">
      <cfpdfformparam name="income" value="#qmyrecord.monthlyincome#">
      <cfpdfformparam name="othersource" value="#qmyrecord.othersource#">
      <cfpdfformparam name="othermonthly" value="#qmyrecord.otherincome#">
    </cfpdfform>


Any help with this would be great.  

Thank you,

Ken
Avatar of SidFishes
SidFishes
Flag of Canada image

the error tels you what you need to know

Platform, Locale, and Platform Name must not be null  

The easiest way to deal with this kind of error is

<cfparam name="Platform" default="">

which creates a variable with a zero length string as it's default value. The default value can be anything that's appropriate to your data type.

There are other ways to deal with this as well which have different effects depending on the situation
Avatar of Kenny Devorak

ASKER

I added <cfparam name="Platform" default=""> and I'm still getting the same error.
I tried the following and I still get the same error:

<cfparam name="Platform" default="0">
<cfparam name="Platform" default="blank">
where are you putting that - the code you've pasted makes no reference to Platform, Locale, and Platform Name
Here is my code with the <cfparam name="Platform" default="nothing">
I'm not familar with this error so I don't understand how to fix it.

  <cfif StructKeyExists(url,"recordid")>
    <cfquery name="qMyRecord" datasource="users">
select * from creditapp
WHERE idcreditapp = <cfqueryparam cfsqltype="cf_sql_integer" value="#url.recordid#">
  </cfquery>
  </cfif>

<cfpdfform source="c:\coldfusion9\wwwroot\finance\admin\creditapp.pdf"
    destination="c:\coldfusion9\wwwroot\finance\admin\yourapp.pdf" action="populate" overwrite="true">
          
        <cfparam name="Platform" default="nothing">
        <cfpdfformparam name="name" value="#qmyrecord.lastname#   /   #qmyrecord.firstname#   /   #qmyrecord.middle#">
        <cfpdfformparam name="generation" value="#qmyrecord.generation#">
        <cfpdfformparam name="birthdate" value="#qmyrecord.birthdate#">
        <cfpdfformparam name="social" value="#qmyrecord.soc1#-#qmyrecord.soc2#-#qmyrecord.soc3#">
        <cfpdfformparam name="homephone" value="#qmyrecord.homephone#">
        <cfpdfformparam name="address" value="#qmyrecord.address#">
        <cfpdfformparam name="city" value="#qmyrecord.city#">
        <cfpdfformparam name="state" value="#qmyrecord.state#">
        <cfpdfformparam name="zip" value="#qmyrecord.zip#">
        <cfpdfformparam name="timeaddress" value="#qmyrecord.residentyears# Years  #qmyrecord.residentyears# Months">
        <cfpdfformparam name="email" value="#qmyrecord.email#">
        <cfpdfformparam name="cellphone" value="#qmyrecord.cellphone#">
        <cfpdfformparam name="monthlyrent" value="#qmyrecord.monthlypayment#">
        <cfpdfformparam name="residenttype" value="#qmyrecord.resident#">
        <cfpdfformparam name="employer" value="#qmyrecord.employer#">
        <cfpdfformparam name="occupation" value="#qmyrecord.occupation#">
        <cfpdfformparam name="timejob" value="#qmyrecord.ytimejob#  #qmyrecord.mtimejob#">
        <cfpdfformparam name="employerphone" value="#qmyrecord.businessphone#">
        <cfpdfformparam name="income" value="#qmyrecord.monthlyincome#">
        <cfpdfformparam name="othersource" value="#qmyrecord.othersource#">
        <cfpdfformparam name="othermonthly" value="#qmyrecord.otherincome#">
       
</cfpdfform>
I'm not familar with this error so I don't understand how to fix it.


We don't know how to fix it either since there's nothing in the code you've shown that even uses a variable named "Platform". Post the stack trace.

> <cfpdfform source="c:\coldfusion9\wwwroot\finance\admin\creditapp.pdf"
>    destination="c:\coldfusion9\wwwroot\finance\admin\yourapp.pdf"

You realize that generates the same file for every request right? So you're potentially sharing someone else's financial info, social security number, etc... with the wrong party. Very bad ... Not that storing that info unsecured in a db or pdf file is a good idea either.
Below is the stack trace:

java.lang.NullPointerException: Platform, Locale, and Platform Name must not be null
      at com.adobe.fontengine.fontmanagement.platform.PlatformFontDescription.<init>(PlatformFontDescription.java:51)
      at com.adobe.fontengine.font.opentype.OpenTypeFont.getPlatformFontDescription(OpenTypeFont.java:2538)
      at com.adobe.fontengine.font.FontImpl.getPlatformFontDescription(FontImpl.java:428)
      at com.adobe.fontengine.font.FontImpl.getPlatformFontDescription(FontImpl.java:415)
      at com.adobe.fontengine.fontmanagement.platform.PlatformFontResolverImpl.addFont(PlatformFontResolverImpl.java:56)
      at com.adobe.internal.pdftoolkit.core.fontset.impl.PDFFontSetImpl.addFont(PDFFontSetImpl.java:164)
      at com.adobe.internal.pdfm.util.FontSetBuilder.loadFontsPath(FontSetBuilder.java:418)
      at com.adobe.internal.pdfm.util.FontSetBuilder.loadSystemFonts(FontSetBuilder.java:346)
      at com.adobe.internal.pdfm.util.FontSetBuilder.makePDFFontSet(FontSetBuilder.java:239)
      at com.adobe.internal.pdfm.util.FontSetBuilder.getPdfFontSet(FontSetBuilder.java:93)
      at com.adobe.internal.pdfm.PDFM7Factory.getPdfFontSet(PDFM7Factory.java:97)
      at coldfusion.document.DocumentServiceImpl.getAssemblerFontSet(DocumentServiceImpl.java:512)
      at coldfusion.pdf.PDFForm.populateFields(PDFForm.java:292)
      at coldfusion.tagext.lang.PDFFormTag.doEndTag(PDFFormTag.java:347)
      at cfcreditapp22ecfm266578086.runPage(C:\ColdFusion9\wwwroot\finance\admin\creditapp2.cfm:37)
      at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231)
      at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416)
      at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65)
      at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:363)
      at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)
      at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
      at coldfusion.filter.PathFilter.invoke(PathFilter.java:87)
      at coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:27)
      at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)
      at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
      at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
      at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
      at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
      at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
      at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:53)
      at coldfusion.CfmServlet.service(CfmServlet.java:200)
      at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
      at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
      at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
      at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
      at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
      at jrun.servlet.FilterChain.service(FilterChain.java:101)
      at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
      at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
      at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)
      at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)
      at jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
      at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)
      at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
      at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)
      at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
ASKER CERTIFIED SOLUTION
Avatar of _agx_
_agx_
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial