EDIT:

Even Newer information. This is happening for cfzip too. Now I see that this is happening to my virtual host sites (they work with wwwroot files.) 

Cannot find implementation class coldfusion.tagext.zip.ZipTag for the zip tag.

I am sure this will happen to other packages too, I just have not tested yet. Obviously I am missing something in server.xml or maybe in one of the httpd.conf or jk_mod related files.

New information. I am experiencing this problem in a vhost that I have set up, but when I test the same file in `wwwroot` it works! So the issue is somehow connected to the vhost. I have looked at server.xml thinking I might be missing something but I can’t tell what it is. (I do have an alias to `WEB-INF` in the root.)

This is my server.xml:

<!-- Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at
      http://www.apache.org/licenses/LICENSE-2.0
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.-->
<!-- Note:  A "Server" is not itself a "Container", so you may not
     define subcomponents such as "Valves" at this level.
     Documentation at /docs/config/server.html-->
<Server port="8019" shutdown="SHUTDOWN">
<!-- Security listener. Documentation at /docs/config/listeners.html
  <Listener className="org.apache.catalina.security.SecurityListener" />-->
<!-- APR library loader. Documentation at /docs/apr.html-->
  <Listener SSLEngine="on" className="org.apache.catalina.core.AprLifecycleListener"/>
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>
<!-- Global JNDI resources
       Documentation at /docs/jndi-resources-howto.html-->
  <GlobalNamingResources>
  <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users-->
    <Resource factory="org.apache.catalina.users.MemoryUserDatabaseFactory" auth="Container" name="UserDatabase" description="User database that can be updated and saved" type="org.apache.catalina.UserDatabase" pathname="conf/tomcat-users.xml"/>
  </GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
       a single "Container" Note:  A "Service" is not itself a "Container",
       so you may not define subcomponents such as "Valves" at this level.
       Documentation at /docs/config/service.html-->
  <Service name="Catalina">
  <!-- The connectors can use a shared executor, you can define one or more named thread pools-->
  <!-- <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
        maxThreads="150" minSpareThreads="4"/>-->
  <!-- A "Connector" represents an endpoint by which requests are received
         and responses are returned. Documentation at :
         Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
         Java AJP  Connector: /docs/config/ajp.html
         APR (HTTP/AJP) Connector: /docs/apr.html
         Define a non-SSL/TLS HTTP/1.1 Connector on port 8080-->
  <!-- internal webserver start-->
    <Connector protocol="HTTP/1.1" port="8500" redirectPort="8457" connectionTimeout="20000"/>
  <!-- internal webserver end-->
  <!-- A "Connector" using the shared thread pool-->
  <!-- <Connector executor="tomcatThreadPool"
               port="8500" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8457" />-->
  <!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443
         This connector uses the NIO implementation that requires the JSSE
         style configuration. When using the APR/native implementation, the
         OpenSSL style configuration is required as described in the APR/native
         documentation-->
   <Connector protocol="org.apache.coyote.http11.Http11NioProtocol" port="8443" maxThreads="150" SSLEnabled="true" scheme="https" secure="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="/Applications/ColdFusion2025/cfusion/bin/../runtime/conf/localhost_cf.jks" certificateKeystorePassword="710Time!" type="RSA" />
</SSLHostConfig>
    </Connector>
  <!-- Define an AJP 1.3 Connector on port 8009-->
  <!-- begin connector-->
    <Connector packetSize="65535" protocol="AJP/1.3" port="8024" redirectPort="8457" secret="9da74bf9-4fc4-4667-a7ef-3710deb608f8" maxThreads="500" connectionTimeout="60000" tomcatAuthentication="false"/>
  <!-- end connector-->
  <!-- An Engine represents the entry point (within Catalina) that processes
         every request.  The Engine implementation for Tomcat stand alone
         analyzes the HTTP headers included with the request, and passes them
         on to the appropriate Host (virtual host).
         Documentation at /docs/config/engine.html-->
    <Engine defaultHost="localhost" name="Catalina" jvmRoute="cfusion">
    <!-- For clustering, please take a look at documentation at:
          /docs/cluster-howto.html  (simple how to)
          /docs/config/cluster.html (reference documentation)-->
    <!-- <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>-->
    <!-- Use the LockOutRealm to prevent attempts to guess user passwords
           via a brute-force attack-->
      <Realm className="org.apache.catalina.realm.LockOutRealm">
      <!-- This Realm uses the UserDatabase configured in the global JNDI
             resources under the key "UserDatabase".  Any edits
             that are performed against this UserDatabase are immediately
             available for use by the Realm.-->
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
      </Realm>
    <!-- Define the default virtual host
           Note: XML Schema validation will not work with Xerces 2.2.-->
      <Host autoDeploy="false" appBase="webapps" name="localhost" unpackWARs="false">
      <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html-->
      <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" />-->
      <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common"-->
      <!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" resolveHosts="false"/>-->
      <!-- Uncomment the lines below to change the default web root or to add virtual directories.
            Make sure to replace <cf_home> with the absolute path to ColdFusion Home
            To add virtual directories, use Resources and PreResources tags inside Context tag. aliasPathN must include a leading '/' and docBaseN must be an absolute path to a directory. 
            If no virtual directories are needed, then complete Resources tag should be removed or commented.-->
      <!-- <Context path="" docBase="<cf_home>/wwwroot" WorkDir="<cf_home>/runtime/conf/Catalina/localhost/tmp" >
          <Resources>
            <PreResources base="docBase1" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/aliasPath1"/>
            <PreResources base="docBase2" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/aliasPath2"/>
          </Resources>
        </Context>-->
      </Host>
      <Host name="menuplan.pro" appBase="webapps" autoDeploy="false" unpackWARs="false">
          <Alias>*.menuplan.pro</Alias>
          <Context path="" docBase="/Users/twoedge/Dev/menuplan.pro" reloadable="true">
              <Resources allowLinking="true" />
              <Parameter name="cf.class.path"
                         value="/Applications/ColdFusion2025/cfusion/classes,/Applications/ColdFusion2025/cfusion/lib/updates,/Applications/ColdFusion2025/cfusion/lib,/Applications/ColdFusion2025/cfusion/wwwroot/WEB-INF/flex/jars,/Applications/ColdFusion2025/cfusion/wwwroot/WEB-INF/cfform/jars,/Applications/ColdFusion2025/cfusion/lib/axis2"
                         override="true" />
              <Parameter name="cf.lib.path"
                         value="/Applications/ColdFusion2025/cfusion/lib"
                         override="true" />
          </Context>
      </Host>
      <Host name="mcpcfc.local" appBase="webapps" autoDeploy="false" unpackWARs="false">
          <Alias>*.mcpcfc.local</Alias>
          <Context path="" docBase="/Users/twoedge/Dev/mcpcfc.local" reloadable="true">
              <Resources allowLinking="true" />
              <Parameter name="cf.class.path"
                         value="/Applications/ColdFusion2025/cfusion/classes,/Applications/ColdFusion2025/cfusion/lib/updates,/Applications/ColdFusion2025/cfusion/lib,/Applications/ColdFusion2025/cfusion/wwwroot/WEB-INF/flex/jars,/Applications/ColdFusion2025/cfusion/wwwroot/WEB-INF/cfform/jars,/Applications/ColdFusion2025/cfusion/lib/axis2"
                         override="true" />
              <Parameter name="cf.lib.path"
                         value="/Applications/ColdFusion2025/cfusion/lib"
                         override="true" />
          </Context>
      </Host>
    </Engine>
  </Service>
</Server>

<!-- Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at
      http://www.apache.org/licenses/LICENSE-2.0
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.-->
<!-- Note:  A "Server" is not itself a "Container", so you may not
     define subcomponents such as "Valves" at this level.
     Documentation at /docs/config/server.html-->
<Server port="8019" shutdown="SHUTDOWN">
<!-- Security listener. Documentation at /docs/config/listeners.html
  <Listener className="org.apache.catalina.security.SecurityListener" />-->
<!-- APR library loader. Documentation at /docs/apr.html-->
  <Listener SSLEngine="on" className="org.apache.catalina.core.AprLifecycleListener"/>
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>
<!-- Global JNDI resources
       Documentation at /docs/jndi-resources-howto.html-->
  <GlobalNamingResources>
  <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users-->
    <Resource factory="org.apache.catalina.users.MemoryUserDatabaseFactory" auth="Container" name="UserDatabase" description="User database that can be updated and saved" type="org.apache.catalina.UserDatabase" pathname="conf/tomcat-users.xml"/>
  </GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
       a single "Container" Note:  A "Service" is not itself a "Container",
       so you may not define subcomponents such as "Valves" at this level.
       Documentation at /docs/config/service.html-->
  <Service name="Catalina">
  <!-- The connectors can use a shared executor, you can define one or more named thread pools-->
  <!-- <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
        maxThreads="150" minSpareThreads="4"/>-->
  <!-- A "Connector" represents an endpoint by which requests are received
         and responses are returned. Documentation at :
         Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
         Java AJP  Connector: /docs/config/ajp.html
         APR (HTTP/AJP) Connector: /docs/apr.html
         Define a non-SSL/TLS HTTP/1.1 Connector on port 8080-->
  <!-- internal webserver start-->
    <Connector protocol="HTTP/1.1" port="8500" redirectPort="8457" connectionTimeout="20000"/>
  <!-- internal webserver end-->
  <!-- A "Connector" using the shared thread pool-->
  <!-- <Connector executor="tomcatThreadPool"
               port="8500" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8457" />-->
  <!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443
         This connector uses the NIO implementation that requires the JSSE
         style configuration. When using the APR/native implementation, the
         OpenSSL style configuration is required as described in the APR/native
         documentation-->
   <Connector protocol="org.apache.coyote.http11.Http11NioProtocol" port="8443" maxThreads="150" SSLEnabled="true" scheme="https" secure="true">
    <SSLHostConfig>
<Certificate certificateKeystoreFile="/Applications/ColdFusion2025/cfusion/bin/../runtime/conf/localhost_cf.jks" certificateKeystorePassword="710Time!" type="RSA" />
    </SSLHostConfig>
    </Connector>
  <!-- Define an AJP 1.3 Connector on port 8009-->
  <!-- begin connector-->
    <Connector packetSize="65535" protocol="AJP/1.3" port="8024" redirectPort="8457" secret="9da74bf9-4fc4-4667-a7ef-3710deb608f8" maxThreads="500" connectionTimeout="60000" tomcatAuthentication="false"/>
  <!-- end connector-->
  <!-- An Engine represents the entry point (within Catalina) that processes
         every request.  The Engine implementation for Tomcat stand alone
         analyzes the HTTP headers included with the request, and passes them
         on to the appropriate Host (virtual host).
         Documentation at /docs/config/engine.html-->
    <Engine defaultHost="localhost" name="Catalina" jvmRoute="cfusion">
    <!-- For clustering, please take a look at documentation at:
          /docs/cluster-howto.html  (simple how to)
          /docs/config/cluster.html (reference documentation)-->
    <!-- <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>-->
    <!-- Use the LockOutRealm to prevent attempts to guess user passwords
           via a brute-force attack-->
      <Realm className="org.apache.catalina.realm.LockOutRealm">
      <!-- This Realm uses the UserDatabase configured in the global JNDI
             resources under the key "UserDatabase".  Any edits
             that are performed against this UserDatabase are immediately
             available for use by the Realm.-->
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
      </Realm>
    <!-- Define the default virtual host
           Note: XML Schema validation will not work with Xerces 2.2.-->
      <Host autoDeploy="false" appBase="webapps" name="localhost" unpackWARs="false">
      <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html-->
      <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" />-->
      <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common"-->
      <!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" resolveHosts="false"/>-->
      <!-- Uncomment the lines below to change the default web root or to add virtual directories.
            Make sure to replace <cf_home> with the absolute path to ColdFusion Home
            To add virtual directories, use Resources and PreResources tags inside Context tag. aliasPathN must include a leading '/' and docBaseN must be an absolute path to a directory. 
            If no virtual directories are needed, then complete Resources tag should be removed or commented.-->
      <!-- <Context path="" docBase="<cf_home>/wwwroot" WorkDir="<cf_home>/runtime/conf/Catalina/localhost/tmp" >
          <Resources>
            <PreResources base="docBase1" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/aliasPath1"/>
            <PreResources base="docBase2" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/aliasPath2"/>
          </Resources>
        </Context>-->
      </Host>
      <Host name="menuplan.pro" appBase="webapps" autoDeploy="false" unpackWARs="false">
          <Alias>*.menuplan.pro</Alias>
          <Context path="" docBase="/Users/twoedge/Dev/menuplan.pro" reloadable="true">
              <Resources allowLinking="true" />
              <Parameter name="cf.class.path"
                         value="/Applications/ColdFusion2025/cfusion/classes,/Applications/ColdFusion2025/cfusion/lib/updates,/Applications/ColdFusion2025/cfusion/lib,/Applications/ColdFusion2025/cfusion/wwwroot/WEB-INF/flex/jars,/Applications/ColdFusion2025/cfusion/wwwroot/WEB-INF/cfform/jars,/Applications/ColdFusion2025/cfusion/lib/axis2"
                         override="true" />
              <Parameter name="cf.lib.path"
                         value="/Applications/ColdFusion2025/cfusion/lib"
                         override="true" />
          </Context>
      </Host>
      <Host name="mcpcfc.local" appBase="webapps" autoDeploy="false" unpackWARs="false">
          <Alias>*.mcpcfc.local</Alias>
          <Context path="" docBase="/Users/twoedge/Dev/mcpcfc.local" reloadable="true">
              <Resources allowLinking="true" />
              <Parameter name="cf.class.path"
                         value="/Applications/ColdFusion2025/cfusion/classes,/Applications/ColdFusion2025/cfusion/lib/updates,/Applications/ColdFusion2025/cfusion/lib,/Applications/ColdFusion2025/cfusion/wwwroot/WEB-INF/flex/jars,/Applications/ColdFusion2025/cfusion/wwwroot/WEB-INF/cfform/jars,/Applications/ColdFusion2025/cfusion/lib/axis2"
                         override="true" />
              <Parameter name="cf.lib.path"
                         value="/Applications/ColdFusion2025/cfusion/lib"
                         override="true" />
          </Context>
      </Host>
    </Engine>
  </Service>
</Server>

I am using a MacOS install of ColdFusion Developer Mode. I did a fully clean install of ColdFusion using the GUI installer. I have not run into other problems with this install before this (previously it was cfzip related classes were missing – I could not figure it out so I did a full reinstall including reinstalling MacOS from scratch.). Note that I have Apache and CF running on HTTPS (traffic to 443 gets passed 8443). I mention it becuase I don’t know if that is causing some problem connecting to the PDF services. When I verify the default PDF services:

localhost localhost 8997 2 NO 2.0 OK  

  Just to test, I checked the `

CFML I am using: 

 
<cftry>
<cfdocument format="pdf" filename="test.pdf" overwrite="true">
<h1>Hello ColdFusion</h1>
<p>This is <strong>PDF</strong> example document.</p>
<p>Generated at: <cfoutput>#TimeFormat(Now())# on #DateFormat(Now())#</cfoutput></p>
</cfdocument>
<p>Success</p>
<cfcatch type="any">
<cfoutput>
<p>Error: #cfcatch.message#</p>
<p>Error details: #cfcatch.detail#</p>
<p>Error type: #cfcatch.type#</p>
<p>Error stack: #cfcatch.stacktrace#</p>
</cfoutput>
</cfcatch>
</cftry>
 

Which results in a error page displaying:

"Trying to use cfdocument: Cannot find implementation class coldfusion.tagext.document.DocumentTag for the document tag." 

Also, I have run this in the terminal:

./cfpm.sh
cfpm>install all
All the packages are already updated as per the current core update level.

And

cfpm>purgecache
Felix cache is purged successfully.

Any thoughts or suggestions?

Server Details:

Server Product ColdFusion 2025
Version 2025,0,06,331564
Edition Developer
Operating System Mac OS X
OS Version 26.2
Update Level /Applications/ColdFusion2025/cfusion/lib/updates/chf20250006.jar
Adobe Driver Version 5.1.4 (Build 0001)
Tomcat Version 10.1.48.0
Device ID 625cc548cfdac5f66af2cf2c753a0db31d957b0c688b29cc1c461c0d376f0e23
Package Details
Installed package(s)
adminapi[2025.0.0.331385 2025.0.03.331507] administrator[2025.0.0.331385 2025.0.05.331552] ajax[2025.0.0.331385 2025.0.01.3314
20] awsdynamodb[2025.0.0.331385] awslambda[2025.0.0.331385] awss3[2025.0.0.331385] awss3legacy[2025.0.0.331385] awssns[2025.0.0.3
31385] awssqs[2025.0.0.331385] axis[2025.0.0.331385 2025.0.03.331507] azureblob[2025.0.0.331385] azureservicebus[2025.0.0.331385] c
aching[2025.0.0.331385] ccs[2025.0.0.331385 2025.0.05.331552] cfmongodb[2025.0.0.331385] chart[2025.0.0.331385] db2[2025.0.0.331
385] debugger[2025.0.0.331385] derby[2025.0.0.331385] document[2025.0.0.331385 2025.0.05.331552] dotnet[2025.0.0.331385] eventgat
eways[2025.0.0.331385] exchange[2025.0.0.331385] feed[2025.0.04.331512 2025.0.0.331385] ftp[2025.0.0.331385] gcpfirestore[2025.0.0.3
31385] gcppubsub[2025.0.0.331385] gcpstorage[2025.0.0.331385] graphqlclient[2025.0.0.331385] htmltopdf[2025.0.0.331385 2025.0.06.33
1564] image[2025.0.0.331385 2025.0.06.331564] mail[2025.0.0.331385] msgraph[2025.0.0.331385 2025.0.06.331564] mysql[2025.0.0.33
1385] oracle[2025.0.0.331385] orm[2025.0.0.331385] ormsearch[2025.0.0.331385] pdf[2025.0.0.331385 2025.0.06.331564] pmtagent[2025.0
.0.331385] postgresql[2025.0.0.331385] presentation[2025.0.0.331385 2025.0.05.331552] print[2025.0.0.331385 2025.0.06.331564] redis
sessionstorage[2025.0.0.331385] report[2025.0.0.331385 2025.0.05.331552] saml[2025.0.0.331385] scheduler[2025.0.0.331385 2025.0.05.
331552] search[2025.0.0.331385 2025.0.06.331564] sharepoint[2025.0.0.331385 2025.0.03.331507] spreadsheet[2025.0.0.331385 2025.0Server Details
Server Product ColdFusion 2025
Version 2025,0,06,331564
Edition Developer
Operating System Mac OS X
OS Version 26.2
Update Level /Applications/ColdFusion2025/cfusion/lib/updates/chf20250006.jar
Adobe Driver Version 5.1.4 (Build 0001)
Tomcat Version 10.1.48.0
Device ID 625cc548cfdac5f66af2cf2c753a0db31d957b0c688b29cc1c461c0d376f0e23
Package Details
Installed package(s)
adminapi[2025.0.0.331385 2025.0.03.331507] administrator[2025.0.0.331385 2025.0.05.331552] ajax[2025.0.0.331385 2025.0.01.3314
20] awsdynamodb[2025.0.0.331385] awslambda[2025.0.0.331385] awss3[2025.0.0.331385] awss3legacy[2025.0.0.331385] awssns[2025.0.0.3
31385] awssqs[2025.0.0.331385] axis[2025.0.0.331385 2025.0.03.331507] azureblob[2025.0.0.331385] azureservicebus[2025.0.0.331385] c
aching[2025.0.0.331385] ccs[2025.0.0.331385 2025.0.05.331552] cfmongodb[2025.0.0.331385] chart[2025.0.0.331385] db2[2025.0.0.331
385] debugger[2025.0.0.331385] derby[2025.0.0.331385] document[2025.0.0.331385 2025.0.05.331552] dotnet[2025.0.0.331385] eventgat
eways[2025.0.0.331385] exchange[2025.0.0.331385] feed[2025.0.04.331512 2025.0.0.331385] ftp[2025.0.0.331385] gcpfirestore[2025.0.0.3
31385] gcppubsub[2025.0.0.331385] gcpstorage[2025.0.0.331385] graphqlclient[2025.0.0.331385] htmltopdf[2025.0.0.331385 2025.0.06.33
1564] image[2025.0.0.331385 2025.0.06.331564] mail[2025.0.0.331385] msgraph[2025.0.0.331385 2025.0.06.331564] mysql[2025.0.0.33
1385] oracle[2025.0.0.331385] orm[2025.0.0.331385] ormsearch[2025.0.0.331385] pdf[2025.0.0.331385 2025.0.06.331564] pmtagent[2025.0
.0.331385] postgresql[2025.0.0.331385] presentation[2025.0.0.331385 2025.0.05.331552] print[2025.0.0.331385 2025.0.06.331564] redis
sessionstorage[2025.0.0.331385] report[2025.0.0.331385 2025.0.05.331552] saml[2025.0.0.331385] scheduler[2025.0.0.331385 2025.0.05.
331552] search[2025.0.0.331385 2025.0.06.331564] sharepoint[2025.0.0.331385 2025.0.03.331507] spreadsheet[2025.0.0.331385 2025.0

All Comments
Sort by:  Most Recent
2026-02-03 19:06:21

@TwoEdge, a few things:

  • Try clearing out the cfusion/wwwroot/WEB-INF/cfclasses folder. That holds the compilation of CFML into java classes. (And no, it has NOTHING to do with whether the code you’re running is itself IN the wwwroot folder. I realize you’re using vhosts with different folders. The same applies to those who run a web server like Apache or IIS as well.) Should you NEED to clear that cfclasses folder? No. but just please try it, given your woes. There’s no negative consequence in a dev environment (and virtually none in most prod environments). You will want to stop CF, then do the delete, then start it.
  • You don’t say you did an update, but since your package values show being updated (names like 2025.0.06), it’s clear you did. As such, please clear also the felix-cache if you had not. (I raise this second because I know you brought this issue up in the forums a couple of weeks ago and clarified that you’d done that. Perhaps you did it this time also, so I offer the above to try first. I’d try each, one at a time, to know what “fixes” things, if either does.)
  • You mention use of cfdocument along with showing your PDF services setup. To be clear, there is zero connection between those two (if you intended one). Many presume there is, since “cfdocument produces pdf’s”. But it does it an old way (introduced in CF6) whereas CF11 introduced the cfhtmltopdf tag, which DOES rely on that PDF service config (and the “add-on service” that one would need to install with CF or by a separate installer afterward). And FWIW, that latter PDF engine was dramatically improved in CF2023, based on the commercial PDFReactor package which Adobe licenses for us, and which is enabled if “version 2” is chosen on that PDF services page or in the cfhtmltopdf tag.
  • I could say a bit more about your https matters, your mention of using “Apache and CF” (in which case these vhost entries in the server.xml would not be needed), but I don’t want to drag this on (for your sake, mine, or for readers).

 

Speaking of helping readers, you may have noticed that you inadvertantly posted your server.xml contents twice. If you are not able to edit your post to correct that, let us know and I or someone else may have the authority to correct that (just to make it easier for people to read). I didn’t want to presume to do it without your ok (but I did confirm they are identical but for the tabs used on two lines.)

 

Finally, back to your having brought up this issue previously, that was in the “old” version of the cf community forums a couple of weeks ago. As you may know, Adobe transitioned the forums for ALL their products to a “new” engine…but sadly many of the forums (like ours) are left with the past 2 months of messages having “disappeared”. They say they expect them back in time…which could be weeks. Dismaying, but not on the CF team at all. 

 

Perhaps you opened this here on the portal as an alternative. Hope it’s helpful. 

Like