Solved

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

Posted on 2012-03-15
8
1,086 Views
Last Modified: 2013-12-05
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
0
Comment
Question by:sonicimpulse
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
  • 2
8 Comments
 
LVL 36

Expert Comment

by:SidFishes
ID: 37725104
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
0
 

Author Comment

by:sonicimpulse
ID: 37725667
I added <cfparam name="Platform" default=""> and I'm still getting the same error.
0
 

Author Comment

by:sonicimpulse
ID: 37726096
I tried the following and I still get the same error:

<cfparam name="Platform" default="0">
<cfparam name="Platform" default="blank">
0
Resolve Critical IT Incidents Fast

If your data, services or processes become compromised, your organization can suffer damage in just minutes and how fast you communicate during a major IT incident is everything. Learn how to immediately identify incidents & best practices to resolve them quickly and effectively.

 
LVL 36

Expert Comment

by:SidFishes
ID: 37726580
where are you putting that - the code you've pasted makes no reference to Platform, Locale, and Platform Name
0
 

Author Comment

by:sonicimpulse
ID: 37729368
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>
0
 
LVL 52

Expert Comment

by:_agx_
ID: 37730156
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.
0
 

Author Comment

by:sonicimpulse
ID: 37730318
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)
0
 
LVL 52

Accepted Solution

by:
_agx_ earned 500 total points
ID: 37730390
I've seen that weird internal error raised a few times but unfortunately haven't a clue about the cause. Might be a CF bug.

http://forums.adobe.com/thread/756717?start=0&tstart=0
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/Cold_Fusion_Markup_Language/Q_26984685.html
0

Featured Post

Why Off-Site Backups Are The Only Way To Go

You are probably backing up your data—but how and where? Ransomware is on the rise and there are variants that specifically target backups. Read on to discover why off-site is the way to go.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When it comes to write a Context Sensitive Help (an online help that is obtained from a specific point in state of software to provide help with that state) ,  first we need to make the file that contains all topics, which are given exclusive IDs. …
This article was originally published on Monitis Blog, you can check it here . Today it’s fairly well known that high-performing websites and applications bring in more visitors, higher SEO, and ultimately more sales. By the same token, downtime…
Any person in technology especially those working for big companies should at least know about the basics of web accessibility. Believe it or not there are even laws in place that require businesses to provide such means for the disabled and aging p…
The viewer will the learn the benefit of plain text editors and code an HTML5 based template for use in further tutorials.

724 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question