RE: [contentbox-version] ContentBox and ColdFusion 11

Dud they change the base class for the event handler?

Nope it still lives in the same spot, I think the way things are compiled have changed. Looking at that cfc I can see it extends and implements at the same time. The parent has no implements which is the error I am seeing.

Stupid thing is and you are going to hate me for this, but Adobe screws up again, I reported this issue to them a long time ago. Have the emails with the details on how to duplicate the error, yet it never got fixed.

sigh So over Adobe.

Ok it appears that there are more serious issues later, Adobe have told me that you guys are aware of this now.

So is there an ETA for it running on ColdFusion 11?

Latest error is to do with caching.

It would be nice if someone at Team ColdBox could try ColdBox and ContentBox on ColdFusion 11 for any issues.

I actually,

got an email from them today. And will be creating tickets for the issues.

I actually finished installing cf11 alongside 10,9 and railo today, so just today I have a working environment.

Here are the things to accomplish if someone wants to contribute:

  1. In the Application.cfc, the first statement is a location statement. With ColdFusion 11, there is an internal change in the way application object is initialized. Since there is a cflocation in the implicit constructor, the Application object is not getting created and an error is thrown. Probably the initialization needs to happen in onApplicationStart event.

  2. ORMEventHandler needs to be changed since the interface has changed. We have added two new methods in the IEventHandler interface – preFlush and postFlush and they need to be added in the impl CFC.

  3. Hibernate class org.hibernate.jdbc.util.BasicFormatter is not there anymore in the upgraded Hibernate jar. The equivalent class to be used is org.hibernate.engine.jdbc.internal.BasicFormatterImpl

  4. ColdFusion 11 has added a new function “Serialize” which is conflicting with “Serialize” function used in the framework. This function name needs to be changed.

signature0.jpg

Luis F. Majano
CEO
Ortus Solutions, Corp
www.ortussolutions.com

ColdBox Platform: http://www.coldbox.org
Linked In: http://www.linkedin.com/pub/3/731/483
Blog: http://www.luismajano.com
IECFUG Manager: http://www.iecfug.com

Social: twitter.com/lmajano facebook.com/lmajano

Ok that doesn’t sound to bad, the ORM stuff has been done here and working, I understand the serialise part but not sure I understand what your saying for the numbers 3 and 1.

If you can elaborate more, I don’t mind making these changes.

signature0.jpg

#3 is for our criteria queries, I have a fix for that already, so no worries there.

#1 is just moving the colocation used for the installer only.

signature0.jpg

Luis F. Majano
CEO
Ortus Solutions, Corp
www.ortussolutions.com

ColdBox Platform: http://www.coldbox.org
Linked In: http://www.linkedin.com/pub/3/731/483
Blog: http://www.luismajano.com
IECFUG Manager: http://www.iecfug.com

Social: twitter.com/lmajano facebook.com/lmajano

signature0.jpg

Could you show me #3 so I can add it here too please.

Ok So #1 is only for installation and not after it is already running… ok, I will have a play with a newer setup to see that one.

signature0.jpg

signature0.jpg

Well if they did, how come ContentBox / ColdBox is slow getting compatible?

Sorry I understand that error Brad, but ColdBox and ContentBox don’t work in ColdFusion 11. So why is your response not lie, yes we are aware of this and are fixing it as we speak.

At least Luis now has that email from Adobe and can be fixed quickly… I am just shocked that ColdBox and ContentBox haven’t be tested against ColdFusion 11 public beta to see if there are any major issues.

Any reason why that never happened? So that a fix for ColdBox and ContentBox where ready when ColdFusion 11 was released.

Telling me that they changed this and that, is not getting ColdBox or ContentBox running on ColdFusion 11 any time soon.

Sorry Brad, but your response doesn’t fix the issue.

Luis,

I have gone looking for the ColdBox serialize and can’t seem to find this.

signature0.jpg

Me neither. Asked the engineers again for it.

signature0.jpg

The only other thing that I think it is, is that one of the components as the serialize as part of the component definition.

Something like this is the only thing that I can find

component serializable=“false” extends=“coldbox.system.cache.providers.CFProvider” implements=“coldbox.system.cache.IColdboxApplicationCache”{

And one of the components in the error message has this, like the above. Could it be that?

signature0.jpg

Found it Luis.

This is the actual error location.

signature0.jpg

renaming that, I get no exception until I get the formater ORM one now, so what is the quick fix for that error?

signature0.jpg

I am guessing for this to work across CFML engines, that Railo will need to fix their serialize?

signature0.jpg

Ok applied the fix you did earlier for the #3, and it all works or seems to be working now.

Luis, not sure how you are going to get around the Railo Serialize function, but now that I think about this, this is something that I am sure has occurred with ColdBox before. I am so having a Deja Vu on that part.

signature0.jpg

Luis,

Regarding #2, I noticed in the issue tracker that ORM issues were fixed in 4.0 Alpha. Is there plans for a 3.8.2 that fixes ORM incompatibilities between Coldbox and CF 11?

Thanks in advance.

Byron

All is fixed now on the dev branch and we will do our first 2.0 beta next week.

The serialize does not matter as that is only used under Railo.

Luis

Actually I have been contemplating it. So maybe after next week when things get quieter

Thanks, Luis. I guess next week will be a little busy :slight_smile:

Byron

Hi Guys, just tried to do a fresh install with CB 2.0 WSS2012, SQL Server 2012 64Bit and got this error from CF11. Has this fix been released for this error?

coldfusion.runtime.InterfaceRuntimeExceptions$CFCDoesNotImlpementFunctionException: CFC coldbox.system.orm.hibernate.EventHandler does not implement the interface CFIDE.orm.IEventHandler.
	at coldfusion.runtime.InterfaceRuntimeExceptions.throwCFCDoesNotImlpementFunctionException(InterfaceRuntimeExceptions.java:19)
	at coldfusion.runtime.TemplateProxy.verifyInterfaceMethodImpl(TemplateProxy.java:1194)
	at coldfusion.runtime.TemplateProxy.verifyInterfaceImpl(TemplateProxy.java:1252)
	at coldfusion.runtime.TemplateProxy.verifyInterfacesImpl(TemplateProxy.java:1054)
	at coldfusion.runtime.TemplateProxyFactory.resolveComponentHelper(TemplateProxyFactory.java:393)
	at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:234)
	at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:159)
	at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:149)
	at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:133)
	at coldfusion.runtime.TemplateProxyFactory.resolveNameWithImport(TemplateProxyFactory.java:1500)
	at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:1474)
	at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:1439)
	at coldfusion.orm.hibernate.HibernateEventHandler.<init>(HibernateEventHandler.java:100)
	at coldfusion.orm.hibernate.HibernateConfiguration.buildSessionFactory(HibernateConfiguration.java:609)
	at coldfusion.orm.hibernate.HibernateConfiguration.buildSessionFactory(HibernateConfiguration.java:602)
	at coldfusion.orm.hibernate.HibernateProvider.InitializeORMForApplication(HibernateProvider.java:190)
	at coldfusion.orm.hibernate.HibernateProvider.beforeApplicationStart(HibernateProvider.java:80)
	at coldfusion.filter.ApplicationFilter.fireBeforeAppStartEvent(ApplicationFilter.java:611)
	at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:330)
	at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:42)
	at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
	at coldfusion.filter.PathFilter.invoke(PathFilter.java:141)
	at coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:30)
	at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:94)
	at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
	at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
	at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:58)
	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:219)
	at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
	at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at coldfusion.inspect.weinre.MobileDeviceDomInspectionFilter.doFilter(MobileDeviceDomInspectionFilter.java:121)
	at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:422)
	at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:198)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)