Copy link to clipboard
Copied
On Thursday, the error below began appearing after the last 2023 coldfusion update on my cfindex code that is atleast 10 years old. I found removing the .dot file extension from my extensions list stopped the error from occurring. However, .docx files will not index now.
I tried to uninstall the update 15, although this did not solve the error or the indexing issue
Message | com.zaxxer.sparsebits.SparseBitSet not found by poi-5.4.1 [36] |
StackTrace | java.lang.ClassNotFoundException: com.zaxxer.sparsebits.SparseBitSet not found by poi-5.4.1 [36] at org.apache.poi.xslf.usermodel.XSLFSheet.<init>(XSLFSheet.java:89) at org.apache.poi.xslf.usermodel.XSLFSlideMaster.<init>(XSLFSlideMaster.java:64) at org.apache.poi.ooxml.POIXMLFactory.createDocumentPart(POIXMLFactory.java:61) at org.apache.poi.ooxml.POIXMLDocumentPart.read(POIXMLDocumentPart.java:671) at org.apache.poi.ooxml.POIXMLDocument.load(POIXMLDocument.java:165) at org.apache.poi.xslf.usermodel.XMLSlideShow.<init>(XMLSlideShow.java:126) at coldfusion.tagext.search.MSDocument.readPPTX(MSDocument.java:206) at coldfusion.tagext.search.SolrUtils.getSolrDocument(SolrUtils.java:817) at coldfusion.tagext.search.SolrUtils.addDocument(SolrUtils.java:1439) at coldfusion.tagext.search.IndexTag.doUpdate(IndexTag.java:683) at coldfusion.tagext.search.IndexTag.doStartTag(IndexTag.java:352) at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:5083) at cffile_index_intranet2ecfm1052529286.runPage(D:\tasks\file_index_intranet.cfm:38) at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:251) at coldfusion.tagext.lang.IncludeTag.handlePageInvoke(IncludeTag.java:749) at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:578) at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65) at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:613) at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:43) at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) at coldfusion.filter.PathFilter.invoke(PathFilter.java:162) at coldfusion.filter.IpFilter.invoke(IpFilter.java:45) at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:97) at coldfusion.filter.BrowserDebugFilter.invoke(BrowserDebugFilter.java:81) at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28) at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38) at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:60) at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22) at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62) at coldfusion.CfmServlet.service(CfmServlet.java:231) at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:311) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:46) at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:47) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:762) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:359) at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:447) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:833) |
I know the indexing was functioning correctly prior to the update. I have an application that compares directory files to indexed files daily. Missing indexed files generate a ticket in our ticketing system for my review. This ticket was generated the day after the update installation.
By @keith_6356
From your description of when the error occurred and from researching the POI namespace error online, I think it is caused by the library xmlbeans-5.3.0.jar. Update 15 introduced this new XmlB
...Keith, please now try to see if that remaining problem goes away with stopping cf, deleting the felix-cache folder (in cfusion/bin), then restarting cf.
Copy link to clipboard
Copied
Thanks for the info, Charlie. In a way it's good news that you've been able to reproduce a bug. It's a relief to know that the issue is caused by a gremlin in the machine. Mystery solved.
Copy link to clipboard
Copied
Hi @keithm99725152 and @Charlie Arehart ,
On reviewing this, I am even more convinced that something went wrong during a previous uninstallation/installation of an update. That would explain the original error message:
Message |
com.zaxxer.sparsebits.SparseBitSet not found by poi-5.4.1 [36] |
StackTrace |
java.lang.ClassNotFoundException: com.zaxxer.sparsebits.SparseBitSet not found by poi-5.4.1 [36] at org.apache.poi.xslf.usermodel.XSLFSheet.<init>(XSLFSheet.java:89) at |
So there were likely two, possibly related, issues to start with:
However, the first problem might have been solved without us realizing. That would have happened during one of the many fixes that @keithm99725152 tried. In particular, at the moment where the library
C:/ColdFusion2023/bundles/repo/SparseBitSet-1.2.jar
could be found. That meant no more ClassNotFoundException for SparseBitSet.
So, I would suggest we now focus on looking for a workaround for the DOCX "org.apache.poi.schemas.ooxml.system.ooxml.cttext7f5btype" indexing bug.
Copy link to clipboard
Copied
Ok, Keith thanks. So let me say first that I have confirmed your error, doing my own test of using cfindex on a docx.
As for why I had you focusing on the update process, recall you had said originally that even when you uninstalled the update, the problem continued. That seemed to point a strong suspicion at the update process. You confirmed here you had no errors (with the core update, at least. More in a moment.)
And with that I set to creating a test to simulate your issue (had to enable the addon service, create a collection, create the code to do the cfindex, find a docx to scan, etc. That's why I'd not done that to this point.) I also grabbed a couple of .doc files as well. And like you, I found the .doc files were indexed but the .docx files were not, with the same error in my coldfusion-out.log as you had reported:
Cannot resolve type for handle _XY_Q=space|R=space@http://www.w3.org/XML/1998/namespace (org.apache.poi.schemas.ooxml.system.ooxml.cttext7f5btype) - code 13
So clearly something is amiss. And it's clearly related to the POI libraries that CF users. I can confirm that I found references to those being changed in the hotfix_filelist.log for this July CF update (15 for 2023, 21 for CF2021, and 3 for CF2025).
And in fact I have confirmed now that the problem you were seeing DOES in fact happen not ONLY in CF2023 but ALSO in CF2021 and CF2025, if that July update has been applied. (And I realize that you or others may be tempted to just try futzing with those files (deleting or moving them), but that's a risky proposition.)
What I have NOT yet confirmed is whether it happened with earlier updates or not. I presume you're feeling it WAS working before you did update 15 of 2023, right? You say it was "working for 10 years", but it's not clear a) what update you were on before this and b) whether you or anyone there had definitly run that code while on some that update.) It might help to confirm for us.
Indeed, given that this is confirmed to have happened on more than just your machine (and mine, where I know all updates were applied correctly), I've gone ahead and filed a bug report about this at tracker.adobe.com, specifically https://tracker.adobe.com/#/view/CF-4227542 .
You should at least add a vote there so you'll get notified if Adobe (or others) respond to it. You can also add a comment there if you think of something I didn't think to say there. Hope that's helpful.
Copy link to clipboard
Copied
+1 vote
Copy link to clipboard
Copied
@Charlie Arehart wrote:
What I have NOT yet confirmed is whether it happened with earlier updates or not. I presume you're feeling it WAS working before you did update 15 of 2023, right? You say it was "working for 10 years", but it's not clear a) what update you were on before this and b) whether you or anyone there had definitly run that code while on some that update.) It might help to confirm for us.
I know the indexing was functioning correctly prior to the update. I have an application that compares directory files to indexed files daily. Missing indexed files generate a ticket in our ticketing system for my review. This ticket was generated the day after the update installation.
Copy link to clipboard
Copied
I've added that clarification comment on the bug report, so Adobe's aware.
So where do things stand for you now? What update are you on? And is the indexing working? If not, would you be interested in a workaround to get it working again on update 14? I have one in mind that may work. (I do realize you'd prefer one to get it working on update 15. That may require Adobe to resolve, if we can't.)
I've not yet confirmed if the cfindex fails still if I uninstall u14. I'm willing to try, and to test my idea of a workaround. But I want to make sure you're interested first.
BTW, just so we're clear, neither BKBK nor I work for Adobe. All our efforts here are volunteered. It's not even like the Red Cross: no one is compensating us for the literally dozens of hours we've spent on this (and the hundreds of hours we and others spend in the forum each year offering help).
Still, I appreciate you just want the problem solved. We're trying. Sorry for more questions than answers for now. I'm hopeful that one way or another you'll be in working order soon.
Copy link to clipboard
Copied
I know the indexing was functioning correctly prior to the update. I have an application that compares directory files to indexed files daily. Missing indexed files generate a ticket in our ticketing system for my review. This ticket was generated the day after the update installation.
By @keith_6356
From your description of when the error occurred and from researching the POI namespace error online, I think it is caused by the library xmlbeans-5.3.0.jar. Update 15 introduced this new XmlBean library. The version in Update 14 and Update 13 is xmlbeans-3.1.0.jar.
So I assume that the error does not occur with xmlbeans-3.1.0.jar. But your installation may now be using xmlbeans-5.3.0.jar instead. It would have been imported when you installed Update 15, but remained in your installation when you reverted to Update 13 or 14. This idea is the basis for a workaround.
Possible workaround:
Copy link to clipboard
Copied
Folks, I've found the solution. And bkbk I don't expect what you've proposed will work, but what I have to propose will. And it also explains other similar problems people have reported with some recent cf updates. (It also explains why the problem doesn't go away with uninstalling the update, nor with your frequent suggestion to people that they do an uninstall all/install all.) I think you'll find it fascinating, really.
While awaiting Keith's possible reply to my note from this morning, I'd gone ahead regardless of any encouragement from him. I sensed there was a bigger issue beyond his specific challenge, and it turns out l was proven right.
I'll write up more in the morning. It will include both what Keith and others can do in the short term, and what Adobe needs to ultimately do to fix things. You'll understand, then, both why your proposal here won't work, and the relationship to the SparseBitSet you've referred to a couple of times as well as this xmlbeans matter (and issues are having with POI since this update), and more.
It's an exciting conclusion to this mystery, and I look forward to sharing it tomorrow.
Copy link to clipboard
Copied
Folks, I've found the solution. And bkbk I don't expect what you've proposed will work, but what I have to propose will.
By @Charlie Arehart
Charlie, it's great news that you have found a solution and I look forward to hearing about it. However, why do you say, in advance, that my suggestion won't work?
I have just tested what I suggested. It works.
I am on ColdFusion 2025 Update 3. As you yourself have confirmed it has the issue the issue reported by @keithm99725152 :
Cannot resolve type for handle _XY_Q=space|R=
My test runs as follows.
<cfset collectionName = "myCollection">
<cfset targetDirectory = expandPath("indexFiles")>
<!--- Index the files --->
<cfindex
collection="#collectionName#"
action="update"
type="path"
key="#targetDirectory#"
extensions=".pdf,.doc,.docx,.txt"
recurse="YES">
<!--- Output result --->
<cfoutput>
Indexed files from #targetDirectory# into collection "#collectionName#".
</cfoutput>
2. When I launched indexTest.cfm, I could see the following Warnings in coldfusion-out.log:
Aug 16, 2025 10:31:20 AM Warning [http-nio-8500-exec-3] - WARNING: Could not index C:\ColdFusion2025\cfusion\wwwroot\workspace\CF_Project\indexFiles\myWord.docx in SOLR. Check the exception for more details: Cannot resolve type for handle _XY_Q=space|R=space@http://www.w3.org/XML/1998/namespace (org.apache.poi.schemas.ooxml.system.ooxml.cttext7f5btype) - code 13
Aug 16, 2025 10:31:20 AM Warning [http-nio-8500-exec-3] - WARNING: Could not index C:\ColdFusion2025\cfusion\wwwroot\workspace\CF_Project\indexFiles\myWord.docx in SOLR. Check the exception for more details: Content of file myWord.docx can not be extracted.
3. I downgraded the search package, following the steps in the workaround that I proposed.
4. When I launched indexTest.cfm and looked at coldfusion-out.log, there were no longer any Warnings.
That said, I realize that there have been problems with POI libraries in recent ColdFusion updates. Like you, I too am looking into the issue. For example, I have found the following.
Until Update 14 of ColdFusion 2023 the highest POI version used was poi-4.1.2.jar, of which one of the dependencies is xmlbeans-3.1.0. In Update 15 of last July, the POI version was upgraded to poi-5.4.1.jar, with dependency xmlbeans-5.3.0.jar. However, there might be problems of backward-compatibility in the move from xmlbeans-.3.1.0.jar to xmlbeans-5.3.0.jar.
If your application manipulates DOCX (XWPF), XLSX (XSSF/SXSSF) or PPTX (XSLF) with Apache POI, the jump from xmlbeans 3.1.0 to xmlbeans 5.3.0 (curent release used in POI 5.4.1) can bite in the following ways:
Difference in generated classes / schemas: POI ships pre-generated OOXML (.docx, xlsx, pptx) schema bindings (ooxml-schemas / poi-ooxml-full). These are regenerated against the newer xmlbeans 5.3.0 runtime. As a result, your code may experience stricter XML validation. Some documents that loaded error-free in 3.1.0 may now throw a warning. Some documents that loaded with warnings in 3.1.0 may now throw exceptions. The difference in generated schemas may also create differences in whitespace or namespace handling. That is because xmlbeans parsing got stricter in 5.3.0. For example, XML that previously ignored unexpected attributes may now fail to load.
Possible package relocation and dependency conflicts: the groupId/artifactId for xmlbeans changed in the 5.x line (org.apache.xmlbeans:xmlbeans), while older 3.x versions sometimes appeared under different coordinates. If your application or its dependencies still bring 3.x jars, you can hit ClassCastException or LinkageError at runtime. To avoid this, you must ensure only one xmlbeans version is on the classpath (5.3.0). I am therefore alerted when I see xmlbeans-3.1.0.jar and mlbeans-5.3.0.jar together in C:\ColdFusion2023\bundles\repo.
I am still looking into the subject. I shall of course share any new information that I find.
Copy link to clipboard
Copied
@keithm99725152 , I am curious to know what happens when you apply the 6-step workaround that I suggested yesterday.
Copy link to clipboard
Copied
Keith, please consider waiting before you try bkbk's proposal.
Bkbk, you have chosen to press the point overnight rather than wait to give me time this morning to write up what I found and what (I would argue) will be the correct solution.
Since you insist, and as for why I've responded immediately to suggest Keith hold off on your workaround, please confirm for us all what update level you now find cf now reporting. You refer to having been on cf2025 update 3 as of the start of your previous reply. (Let's put aside for the moment that you've switched gears on Keith here, as he's been referring all along to using cf2023.)
But here's the important point relative to your proposal: are you now still on update 3 after your downgrade of the search package? Or did cf "unexpectedly" downgrade your core cf update level? (If not, try restarting cf and then check.) The point is I won't be surprised if you find it has. I found this to happen on cf2023, and I expect it would happen to Keith. My solution will explain why. Indeed, it's the crux of the whole problem as I said I will explain.
Thankfully, as I also said, my solution will cover all 3 current cf versions. I will elaborate later today. I've just woken and have some other obligations first. Please be patient.
And if nothing else confirm for us (and yourself) if your cf2025 update level is still 3. Even if it is, I'll implore Keith to check his update level before and after if he's tempted to try your workaround.
In any case, there is more than just that one package that's amiss and related to poi. Doing yours is just not the compete solution. Mine will be, as you'll see (and see why). It's not easy to explain in a sentence or two, so as the saying goes, "just hold your horses". 🙂
Copy link to clipboard
Copied
OK, I want to jump in with a quick update about my last comment. I've confirmed that you (bkbk) would NOT see the problem I was asserting (in reply to you this morning)--that downgrading the search package from a core of 2025.0.3 to the previous search package version (2025.0.0) would downgrade the core also to .0.
But again I was referring to someone on cf2023 u14 (who had the problems going to u15 and had uninstalled it). The problem is that THEY were still seeing the .15 search. And yes, they could try to just downgrade to the previous search version (which would be .11). But I was seeing yesterday that doing that would downgrade ALSO the core to .11--which would NOT be expected by folks.
That's why I wanted to explain more carefully what I'd found...and I was going to test it also for someone being on CF2025 u2 (after uninstalling u3, for the same reason). This is what I know would take time today for me to fully test and then to document.
And even if someone did successfully downgrade just the search package (without it donwgrading their core), I will show that that's not the ONLY package that was incorrectly upgraded to a LATER version than their core. My focus was first to explain why someone like Keith who a) was on cf2023 u14 and went to C2023 u15 and b) had a problem (like his cfindex problem here) so he uninstalled u15, would find c) that he STILL had the cfindex problem, and d) he would find (like you have) that the search package was in fact showing being incorrectly the u15 version.
And yes, downgrading the search package alone may well "work" for what you tested, but it's not the COMPLETE solution. I'm focused on that.
For now, in case you or anyone else wants to jump in with other observations, I can tell you that (at least with respect to CF2023), the packages that are incorrectly upgraded to u15 versions (even if one is on u14) are: axis, exchange, saml, search, sharepoint, and
spreadsheet.
And given your focus here on poi, I'll note as well that of those, its both search AND spreadsheet that involve poi.
So again, please give me a but more time today to offer more detail on what's really amiss, and how we can solve it more completely (for all 3 versions), and also what Adobe needs to do.
Copy link to clipboard
Copied
@Charlie Arehart , we've had this discussion before. Why the stop-the-world attitude?
I shall say it once again. This is a free, open forum. So, please kindly desist from trying to orchestrate events here. It is not only overbearing, it is disrespectful for you to try to determine when participants should respond and when not.
People may have thoughts, ideas and musings at any time of the day. If they think of sharing such thoughts, ideas and musings with the forum, nothing and no one should stop them. The forum is all the more spontaneous and innovative for the free flow of ideas.
Anyway, I shall respond to the issues you raised.
The irony must have escaped you. While you say to others "just hold your horses", you don't hold yours, do you? Still, everything aside, I am truly looking forward to the marvellous solution that you've found.
Copy link to clipboard
Copied
Oh my goodness.
Copy link to clipboard
Copied
@keithm99725152 , for your information:
Copy link to clipboard
Copied
OK, guys. It's been a long day (working almost entirely on this issue).
1) First, yes BKBK. You are right in that if Keith were to upgrade to u15 and THEN do that downgrade, that will indeed downgrade the search package and should his process to work. Same if he wanted to stay on u14 for some reason and just get the cfindex docs processing working there (but getting updated to u15 is a worthy goal, of course)..
Keith, that's likely your primary goal and so proceed with either of those. You can read on if you like (especially with regard to why the uninstall of u14 still left things amiss), but I don't know if most of it will interest you as much as I hope it will BKB and perhaps others. 🙂
2) So as I alluded to I was focused more on other related things.
One is that he had reverted to u14 (at least he said he had, and his concern was that things still didn't work there). And I think you and he will find that it works also if he does that there. (I actually haven't tested that--though I'd wanted to--as I've been working on the larger problem.) And to be fair, I even said so before your "stop the world" lament, where I agreed that 'downgrading the search package alone may well "work" for what you tested, but it's not the COMPLETE solution'.
And I want to repeat that I DID file the bug report with Adobe to try to get them to figure out why his cfindex of a docx fails with that update to 15 (like it does also for those who update to the latest 2023 or 2021 updates). I want to say first that I totally agree that uninstalling the latest search package IS a workaround for that. You'll want to add that to the bug report, to help others beyond this thread.
3) But thre is a larger problem, which has been my main focus, where in fact the package stayed on u15 even though he uninstalled u15. As I noted, it affects also MORE than that one package, and more than CF2023 (but also 2025 and 2021). And that is the "exciting" news I'd been wanting to share.
But I also had wanted to help someone like him--who was on 14 and installed 15 and had a problem, then uninstalled. It was your solution and MORE. I'd found that 6 of the CF2023 packages were still on their u15 versions--even after the uninstall of u14. THAT's what caught my attention. As I'd reported earlier today, those 6 (for CF2023) are axis, exchange, saml, search, sharepoint, and
spreadsheet. And while one could manually uninstall each (like you'd had him do that search one), I'd studied the 6 and determined what the previous version of each would be. One could downgrade them via cfpm (to do all 6 at once)
cfpm install axis:2023.0.11.330706,exchange:2023.0.11.330706,saml:2023.0.11.330706,search:2023.0.11.330706,sharepoint:2023.0.11.330706,spreadsheet:2023.0.05.330608
(Sadly, there's no simple downgrade optionin CFPM, to just revert from the current version to the earlier one.) Of course, for CF2025 or cf2021 those would be different values, but since Keith was only focused on CF2023 I will leave it at that.
And sorry, but when I wrote last night saying I wasn't sure if what you offered would work, it's just that I had that more complete solution in mind (beyond just what KEith was facing--but I appreciate you were focused more on that.)
4) But moving on to the much larger problem (why the uninstall didn't downgrade them), that was the MOST exciting info I'd found--and what I especially thought you may appreciate.
What I've found is that the problem is in fact a mistake in the bundlesdependency.json file. I'd never studied it closely before yesterday, and as I did, I figured out not only THIS problem (how Keith's uninstall of u15 back to 14 did NOT downgrade those 6 packages), but it ALSO explains MANY of the problems with package management that we've seen her ein the forums--not just with this update but with several over the years.
5) So what's the issue? Well, if you look closely at the json, it's an array with an element for each package and then for that package what its "version" is (like 2023.0.11.330706, for that search version we would hav ehim downgrade to). But then also for MOST (but not ALL) of those package array elements it also indicates a "minimumcoreserverupdaterequired" value. That might be set to 11, such as is the case for that search package he would downgrade to.
But the PROBLEM is that SOME of the packages (these 6 for cf2023 u15, in fact) mistakenly have that that minimumcoreserverupdaterequired value set ALSO to 11--when they SHOULD be set to 15. And this is in fact that case for that search package, where the one updated for u15 (whose "version" is 2023.0.15.330825) instead ALSO shows its minimumcoreserverupdaterequired=11.
And THAT is why when u15 was uninstalled, CF mistakenly thought, "oh, I can leave that u15 version of search in place, because it works with a core version as low as 11". But in fact that's wrong. And indeed ANYtime the version of the package exceeds that minimumcoreserverupdaterequired, it's going to lead to this problem.
(And FWIW, it's not ALL of the packages that WERE updated with 15 that have the problem. Several have the CORRECT minimum core value of 15, such as u15's packages for document, scheduler, image, presentation, and others.)
And there are still other examples within that json file where some packages have NO value set for that min core version. Those, too, suffer from this problem (if one is on an older CF update and says to install or update such a package, it won't STOP them even if the package version would be greater than their current core version.) It's really quite a mess. More on finding those in a moment.
6) But there are still other implications of this problem. For instance, as you may know, if you are on one CF version and you tell CF to upgrade a package to a higher version, the CF Admin (or cfpm) should WARN you that doing so would cause CF itself to be upgraded. (Many don't notice that prompt when updating via the Admin UI, as it's just another sentence on the prompt to confirm doing the update.)
The point is that you DO get that prompt for those packages where the min core version value for the package HAS been made equal to the package's version (so 15, for a package whose version is that 2023.0.15.330825 value). But you DON'T get it for these ones where the min core version value is LESS than the package version. And THAT's one way to get in trouble, again whether from the Admin or cfpm.
Besides the 6 wrong for CF2023 update 15, there are 5 for cf2025 u3 (if one is on an earlier update and installs any of those 5 packages, they will get the u3 version unexpectedly) and 7 for cf2021 update 21.
But to be clear, this problem will happen to ANYONE on ANY version earlier that the LATEST CF update, not just one behind the latest. And it's ALSO been a problem for several previous updates.
7) In fact, I created a cf template that anyone can use to perform this very analysis. It's just a single simple cfm file (broken into functions, for readability).
It lets one specify the CF version they want to test, and what update level they may be on, then it looks at the bundlesdependency.json to determine if nay packages have this problem I'd dicussed above (either the mincore version is LOWER than that package's "version" value or there is NO mincore version for that package).
That code is attached. But since the forums here only let us upload certain file extensions, just change it to a cfm, then save it somewhere that you can run code, and give it a try. Once I hear any feedback I would consider posting it instead to github--so that those interested could track if it changes over time. It's been a very long day, which is another reason I'll hold off on that for now.
8) So this is a bug in the current bundlesdependency.json file, one that Adobe needs to solve. Again, I want to see what you guys think even before I file a bug report. I realize it's been a LOT to read.
Again, in summary, yes for someone in Keith's situation on either cf2023 u15 or 14, he can just downgrade his search package to the u11 version of that. That will get his cfindex code working as expected. But he will still have an updated POI library from some of the OTHER 5 packages suffering this problem in that version. I offered that cfpm install with the corrected versions to help there. (Folks on older updates of the other two CF versions can use this info to figure out what they should do, if they want to automate downgrading their packages which were incorrectly updated, or not correctly downgraded when they uninstalled the latest update.)
But the real crux of the problem is in the mistaken bundlesdepdency.json (which gets downloaded if the "package site" url is set to the default, which for cf2023 is https://www.adobe.com/go/cf2023_packages). And it's happening in all 3 versions, and for updates even before this latest one. This mess REALLY starts to explain why it has been so difficult and confusing to understand some problems people have had. It gets still more confusing when people may DOWNLOAD the json file and might get a different version even once Adobe updates it.
And that's why I really wanted to get this documented here, for us in this thread and eventually to spread the news more widely--and press Adobe for a correction (to all the misconfigurations in all 3 json files). With that, it's beddy bye time. If I've made any mistakes, my apologies. It's been a LOT to juggle, research, organize, distill, write about, etc. Again, sorry for the abruptness earlier.
Copy link to clipboard
Copied
@Charlie Arehart , No worries.
A massive thank you for the work you've put into this research. The finding is important and timely. Especially given the daily reports of issues resulting from recent ColdFusion updates.
On looking back I regret some of my utterances. Heat of the moment. I am sorry.
I think that, after decades here, our relationship has developed roots that go deep. We're a family of sorts. I hope I can count on forgiveness.
Copy link to clipboard
Copied
This solution works, thank you. I anticipate a lasting fix from Adobe.
Copy link to clipboard
Copied
@BKBK I am on Update 15 with only down grading the search package manager to version 2023.0.0.330468.
.docx file are now indexing with out error.
Thank you,
Copy link to clipboard
Copied
@BKBK this work around worked in test just fine, when I implameted it in production I'm getting this error 'void org.apache.xmlbeans.XmlOptions.put(java.lang.Object)' null
I do not understand because they are identical with the exception test is 2023 is developers editions and production is 2023 standard.
Copy link to clipboard
Copied
@BKBK I’ve narrowed it down to. xlsx file extensions are causing this error, if you tale out .xlsx from extensions the error doesn’t happen.
Copy link to clipboard
Copied
Keith, just downgrade also the spreadsheet package. For more, see my note from Saturday (Aug 16). But I appreciate I offered so much additional info that perhaps that didn't stand as something for you to consider, running on the latest cf update.
What I'd clarified is that those who might do that (apply the July update and then uninstall it) would find that 6 packages remained unexpectedly on that later update, causing problems. I'd also offered a single cfpm command to implement those 6 as appropriate for one who'd done that uninstall of the latest update, thus reverting to the previous one, u14 for cf2023.)
But for your specific situation (now on that latest July cf update, having the bug with cfindex and docx files) , and now that you're finding with xlsx files also, see if just downgrading the spreadsheet package works for your challenge. Do let us know, either way.
Copy link to clipboard
Copied
I downgraded spreadsheet, restarted ColdFusion Application, same error, downgraded axis, exchange, saml, search, sharepoint, and
spreadsheet, restarted ColdFusion application, new error when trying to index .xlsx files.
Could not initialize class org.apache.poi.xssf.model.SharedStringsTable null
error goes away when removing .xlsx exstention from extensions.
Copy link to clipboard
Copied
After restarting the server, getting this error again will all six downgraded one version,
void org.apache.xmlbeans.XmlOptions.put(java.lang.Object)' null
Copy link to clipboard
Copied
Keith, please now try to see if that remaining problem goes away with stopping cf, deleting the felix-cache folder (in cfusion/bin), then restarting cf.
Find more inspiration, events, and resources on the new Adobe Community
Explore Now