Women in Technology

Hear us Roar

  ColdFusion MX on Mac OS X, Part 3
Subject:   After a few months of smooth use I'm getting: java.lang.IncompatibleClassChangeError
Date:   2003-03-14 00:43:54
From:   swankboy
Suddenly I'm getting the following error... on only one page, however any new pages I create I also get this error. Any existing unedited/unchanged pages do not throw this error. I pulled this from my Terminal window:

03/14 02:30:11 error
at coldfusion.jsp.JavaCompiler.inProcessCompile(Unknown Source)
at coldfusion.jsp.JavaCompiler.compileClass(Unknown Source)
at coldfusion.compiler.NeoTranslator.translateJava(Unknown Source)
at coldfusion.compiler.NeoTranslator.translateJava(Unknown Source)
at coldfusion.runtime.TemplateClassLoader$1.fetch(Unknown Source)
at coldfusion.util.LruCache.get(Unknown Source)
at coldfusion.runtime.TemplateClassLoader$TemplateCache.fetchSerial(Unknown Source)
at coldfusion.util.AbstractCache.fetch(Unknown Source)
at coldfusion.util.SoftCache.get(Unknown Source)
at coldfusion.runtime.TemplateClassLoader.findClass(Unknown Source)
at coldfusion.filter.PathFilter.invoke(Unknown Source)
at coldfusion.filter.ExceptionFilter.invoke(Unknown Source)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(Unknown Source)
at coldfusion.filter.BrowserFilter.invoke(Unknown Source)
at coldfusion.filter.GlobalsFilter.invoke(Unknown Source)
at coldfusion.filter.DatasourceFilter.invoke(Unknown Source)
at coldfusion.CfmServlet.service(Unknown Source)
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:241)
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:527)
at jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:348)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:451)
at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:294)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)


Granted, I really should install the OS X native version available now (this is my Linux port), but I haven't had time. Is there anything I can do to fix this? Not sure if this came about after the Java 1.4.1 update or stems from something else. I will note I updated my copy of Acquisition right before this started happening...

Full Threads Oldest First

Showing messages 1 through 3 of 3.

  • After a few months of smooth use I'm getting: java.lang.IncompatibleClassChangeError
    2003-03-14 06:59:15  dicklacara [View]

    Yes, I think it is Java 1.4.1 related.

    When you create a new .cfm template or modify an existing one, CFMX generates a new Java source file. The next time this template is requested, CFMX uses Java to compile the file.

    To do this, the ported version of CFMX uses a special Java 1.3.1 internal compiler that is not the same in Java 1.4.1.

    This problem was detected during the beta test of CFMXJ2EE for Mac OS X (Developer) against the beta (Preview) of Java 1.4.1 from Apple. A fix was made to CFMXJ2EE for Mac OS X (Developer) so that it would work with Java 1.3.1 or Java 1.4.1.

    CFMXJ2EE For Mac OS X (Developer) was released by Macromedia in January.

    Java 1.4.1 was released by Apple a few days ago.

    When installed, Java 1.4.1 is installed as the current Java version but the Java 1.3.1 is retained for compatibility.

    Unfortunately, installing Java 1.4.1 breaks the unsupported port.

    The good news is that this all works properly in the released version of CFMXJ2EE for Mac OS X (Developer).
    on JRun, because JRun specifies the Java 1.3.1 version.

    There is one problem however: The CFMXJ2EE for Mac OSX (Developer) GUI installer does not work properly with Java 1.4.1.

    The workaround is to use the console installer.


    So, what I would do is:

    1) Install JRun (Trial) for Mac OS X

    2) Install CFMXJ2EE - JRun for Mac OS X (Developer) using the console version of the installer.

    I have not tried CFMXJ2EE - JRun for Mac OS X (Developer) installed under Tomcat (or any other J2EE Application Server).



    • After a few months of smooth use I'm getting: java.lang.IncompatibleClassChangeError
      2003-03-14 08:18:37  swankboy [View]

      Yeah, I broke down in the middle of the night and installed the Mac OS X version. It was going to happen eventually anyway. I'm back up and running. I'm a little curious though since I have a license code I paid for to run the prof/dev version of CFMX on Linux. From what I read my number should work across platforms, but when I tried putting it in this morning it wasn't working. I'll try it later today when I get back again. I may have to fire off an e-mail. Anyone else had this issue? I just want clients to be able to access my dev server from multiple IPs of course. The setup I had was working great. I guess I have 30 days to get this sorted out.

      Thanks a ton.
      • After a few months of smooth use I'm getting: java.lang.IncompatibleClassChangeError
        2003-03-14 08:41:17  dicklacara [View]

        I am glad you are up and running -- there are some issues running CFMXJ2EE for Mac OS X (Developer) with JRun 1.4.1.

        AFAIK, these are mostly related to the GUI Install and Sample programs using the PointBase database supplied with CFMX.

        So, you should be good to go with what you are doing.

        As to the license code:

        According to Macromedia, the license code should work on any platform for a given product.

        But, since CFMXJ2EE and CFMX Standalone Professional are 2 different products (at two different prices) I can understand that your current license code wouldn't work on a different product.

        It will be interesting to see how Macromedia handles this -- please post or email me privately with the resolution.