Mule
  1. Mule
  2. MULE-4906

Hot Deployment documentation steps cause RuntimeException: MuleContext is not available msg (Hot Deployed app doesn't work)

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Critical Critical
    • Resolution: Won't Fix or Usage Issue
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Examples / Tutorials
    • Labels:
      None
    • Environment:

      OS: Windows, CentOS
      Browser: N/A
      Build: 2.2.5-SNAPSHOT (4/5/2010)

    • User impact:
      Medium
    • Similar Issues:
      MULE-4381stdio transport fails with hot deployment
      MULE-5423after hot deployment, jms message will not be processed.
      MULE-5348Document the hot deployment monitor changes
      MULE-4792XStream XmlToObject transformer unable to load classes when running in hot deployment mode
      MULE-400Hot deployment of components and other artifacts
      MULE-4715Re-test transport hot deployment with CXF
      MULE-5053After configuration exception, hot deploy no longer refreshes
      MULE-5018Loanbroker ESB example needs updating for hot deployment changes
      MULE-4797GroovyExpressionEvaluator script is unable to load user classes when used with hot deployment
      MULE-3363Document Installing Upgrades and Hot Fixes

      Description

      While trying to get the Hot Deployment working using the steps documented at the following site:

      http://www.mulesoft.org/display/MULE2USER/Hot+Deploying+Mule+Applications

      using the Mule webapp example, mule-examples.war, the following exception occurs in the localhost...log file:

      Apr 6, 2010 7:57:42 AM org.apache.catalina.core.StandardContext listenerStart
      SEVERE: Exception sending context initialized event to listener instance of class org.mule.config.builders.DeployableMuleXmlContextListener
      java.lang.RuntimeException: MuleContext is not available
      at org.mule.config.builders.DeployableMuleXmlContextListener.initialize(DeployableMuleXmlContextListener.java:67)
      at org.mule.config.builders.DeployableMuleXmlContextListener.contextInitialized(DeployableMuleXmlContextListener.java:42)
      at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3972)
      at org.apache.catalina.core.StandardContext.start(StandardContext.java:4467)
      at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
      at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
      at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
      at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:905)
      at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:740)
      at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:500)
      at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
      at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
      at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
      at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
      at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
      at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
      at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
      at org.apache.catalina.core.StandardService.start(StandardService.java:519)
      at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
      at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
      at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

      NOTE: The only step that I did not perform in the Hot Deployment steps was deploying the JCA Adapter. This is not required to run the webapp example when not using Hot Deployment.

      Steps to reproduce the issue:
      1) Build all of the Mule examples, but leave the webapp example for last
      2) Prior to building the webapp example edit the file: ..\examples\webapp\src\main\webapp\WEB-INF\web.xml
      3) Change the listener from:
      <listener-class>org.mule.config.builders.MuleXmlBuilderContextListener</listener-class>
      to:
      <listener-class>org.mule.config.builders.DeployableMuleXmlContextListener</listener-class>
      4) Build the webapp example using "mvn"
      On my system when I attempted the above step with "mvn" I got the java.lang.RuntimeException: MuleContext is not available. I initially got this when I deployed the mule-examples.war file to Tomcat but started working my way back to where I removed the MMC jar files and started with the default webapp example. Once I change the listener to the Deployable listener then the Exception begins to occur.

      The complete output from starting the "mvn" command to the exception and then Jetty appearing to start can be found in the Log Output section below.

      NOTE: The webapp example works fine if you do not change to the Hot Deployable listener.
      When deploying the mule-example.war file in a Tomcat instance the Exception is outputted in the localhost...log file.

      5) Open a browser, even though Jetty appears to be up, and entering the URL: http://localhost:8090/mule-examples
      cause the error:

      HTTP ERROR: 503
      Problem accessing /mule-examples. Reason:

      SERVICE_UNAVAILABLE

      NOTE:
      I tried the following to get this to work:
      1) Redownladed Mule 2.2.5 from the MuleSoft web site
      2) Installed the latest JDK 1.6.0_19. Previously tested JDK 1.6.0_10.
      3) Made sure that the Maven version was 2.0.10
      4) Rebuilt all of the Mule Examples
      5) Verified that a non-hot-deployable mule-examples.war file worked first, then modified the web.xml file and restarted Tomcat.
      6) Went back to square one and attempted to build the Mule webapp example with hot deployment, which led to the opening of this Jira.
      7) Tried deploying Mule 2.2.5+HF1, still got same issue/error

      There are other web sites with steps for Hot Deployment:
      http://www.mulesoft.org/display/MULECDEV/Hot+Deployment - Discussion of Mule 3
      http://old.nabble.com/Mule-2.x-User-Guide-%3E-Hot-Deploying-Mule-Applications-td27348341.html - Discussion of Mule 2.x - page removed by Jackie Wheeler
      http://old.nabble.com/Mule-2.x-User-Guide-%3E-Copy-of-Hot-Deploying-Mule-Applications-NEW-DF-p27209187.html - same as above, Mule 2.x, but not removed

        Activity

        Dale Booth created issue -
        Julien Eluard made changes -
        Field Original Value New Value
        Fix Version/s Technical Debt [ 10847 ]
        Julien Eluard made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Fix Version/s 2.2.6 [ 10837 ]
        Fix Version/s Technical Debt [ 10847 ]
        Resolution Won't Fix or Usage Issue [ 2 ]
        Assignee Julien Eluard [ julien.eluard ]
        Ken Yagen made changes -
        Resolution Won't Fix or Usage Issue [ 2 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Ken Yagen made changes -
        Project Mule Management Console [ 10417 ] Mule [ 10000 ]
        Key MMC-282 MULE-4906
        Issue Type Bug [ 1 ] Improvement [ 4 ]
        Workflow jira [ 76682 ] Fixed Main Mule Workflow (after JIRA upgrade) [ 77167 ]
        Component/s Examples / Tutorials [ 10171 ]
        Component/s Documentation [ 10806 ]
        Fix Version/s 2.2.6 [ 10837 ]
        User impact Medium
        Andrew Perepelytsya made changes -
        Assignee Julien Eluard [ julien.eluard ] Andrew Perepelytsya [ andrew ]
        Andrew Perepelytsya made changes -
        Resolution Won't Fix or Usage Issue [ 2 ]
        Status Reopened [ 4 ] Closed [ 6 ]
        Ramiro Rinaudo made changes -
        Workflow Fixed Main Mule Workflow (after JIRA upgrade) [ 77167 ] Main Mule Workflow v1.0 [ 136201 ]

          People

          • Assignee:
            Andrew Perepelytsya
            Reporter:
            Dale Booth
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development