Solved

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

Posted on 2012-03-15
8
1,071 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
  • 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
3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

 
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

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

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

Learn by example how to specify CSS selectors for Selenium WebDriver test automation software.
FAQ pages provide a simple way for you to supply and for customers to find answers to the most common questions about your company. Here are six reasons why your company website should have a FAQ page
This tutorial walks through the best practices in adding a local business to Google Maps including how to properly search for duplicates, marker placement, and inputing business details. Login to your Google Account, then search for "Google Mapmaker…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

772 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