• Mule ESB 自带例子hello初体验


    1 配置的流的效果图

    2 应用配置文件hello.xml内容

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 
     3 <mule xmlns:vm="http://www.mulesoft.org/schema/mule/vm" xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
     4     xmlns:spring="http://www.springframework.org/schema/beans" version="CE-3.4.0"
     5     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     6     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
     7 http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
     8 http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
     9 http://www.mulesoft.org/schema/mule/vm http://www.mulesoft.org/schema/mule/vm/current/mule-vm.xsd">
    10 
    11     <!-- 自定义全局转换器 -->
    12     <custom-transformer class="org.mule.example.hello.StringToNameString" name="StringToNameString" doc:name="Java" />
    13     <custom-transformer class="org.mule.example.hello.NameStringToChatString" name="NameStringToChatString" doc:name="Java" />
    14     <custom-transformer class="org.mule.example.hello.HttpRequestToNameString" name="HttpRequestToNameString" doc:name="Java" />
    15     <custom-transformer class="org.mule.example.hello.ChatStringToString" name="ChatStringToString" doc:name="Java" />
    16     
    17     <!-- 定义HelloWorld流(消息源是一个HTTP入站端点) -->
    18     <flow name="HelloWorld">
    19         <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8888" doc:name="Http Endpoint"/>
    20         <message-filter doc:name="Filter favicon">
    21             <not-filter>
    22                 <wildcard-filter pattern="/favicon.ico" caseSensitive="true"/>
    23             </not-filter>
    24         </message-filter>
    25         <transformer ref="HttpRequestToNameString" doc:name="Transrom HttpRequest to NameString"/>
    26         <flow-ref name="HelloWorldSubFlow" doc:name="Process request"/>
    27         <catch-exception-strategy doc:name="Catch Exception Strategy">
    28             <logger message="#[payload]" level="ERROR" doc:name="Error Log"/>
    29         </catch-exception-strategy>  
    30     </flow>
    31     
    32     <!-- 定义HelloWorldVm流(消息源是一个VM入站端点) -->
    33     <flow name="HelloWorldVm">
    34         <vm:inbound-endpoint exchange-pattern="request-response" path="greeter" doc:name="VM Endpoint"/>
    35         <transformer ref="StringToNameString" doc:name="Transform String to NameString"/>
    36         <flow-ref name="HelloWorldSubFlow" doc:name="Process request"/>
    37     </flow>
    38   
    39     <!-- 定义子流HelloWorldSubFlow -->
    40     <sub-flow name="HelloWorldSubFlow">
    41         <component class="org.mule.example.hello.Greeter" doc:name="Greeter Component"/>
    42         <choice doc:name="Choice">
    43             <when expression="payload instanceof org.mule.example.hello.NameString" evaluator="groovy">
    44                 <processor-chain doc:name="ProcessorChain1">
    45                     <flow-ref name="ChitChat" doc:name="Process ChitChat"/>
    46                 </processor-chain>
    47             </when>
    48             <when expression="payload instanceof java.lang.Exception" evaluator="groovy">
    49                 <processor-chain doc:name="ProcessorChain2">
    50                     <logger message="#[payload]" level="ERROR" doc:name="Error Log"/>
    51                 </processor-chain>
    52             </when>
    53         </choice>
    54     </sub-flow>
    55     
    56     <!-- 定义子流ChitChat -->
    57     <sub-flow name="ChitChat">
    58         <transformer ref="NameStringToChatString" doc:name="Transform NameString to ChatString"/>
    59         <component class="org.mule.example.hello.ChitChatter" doc:name="ChitChatter component"/>
    60         <transformer ref="ChatStringToString" doc:name="Transform ChatString to String"/>
    61     </sub-flow> 
    62 </mule>

    4 消息处理器类

    1)HttpRequestToNameString

      1 package org.mule.example.hello;
      2 
      3 import java.io.InputStream;
      4 import java.net.URLDecoder;
      5 
      6 import org.mule.api.transformer.TransformerException;
      7 import org.mule.transformer.AbstractTransformer;
      8 import org.mule.transformer.types.DataTypeFactory;
      9 import org.mule.util.IOUtils;
     10 
     11 public class HttpRequestToNameString extends AbstractTransformer {
     12 
     13     private static final String NAME_REQUEST_PARAMETER = "name=";
     14 
     15     public HttpRequestToNameString() {
     16         super();
     17         this.registerSourceType(DataTypeFactory.STRING);
     18         this.registerSourceType(DataTypeFactory.BYTE_ARRAY);
     19         this.registerSourceType(DataTypeFactory.INPUT_STREAM);
     20         this.registerSourceType(DataTypeFactory.create(NameString.class));
     21     }
     22 
     23     @Override
     24     protected Object doTransform(Object src, String enc) throws TransformerException {
     25         String srcStr = converRequestToString(src, enc);
     26         String requestQueryStr = extractRequestQuery(srcStr);
     27         String nameValueStr = extractNameValue(requestQueryStr);
     28         
     29         System.out.println("消息负载字符串:" + srcStr); //"/?name=asn"
     30         return new NameString(nameValueStr);
     32     }
     33 
     34     /**
     35      *  转换消息负载为字符串对象
     36      * @param src
     37      * @param outputEncoding
     38      * @return
     39      */
     40     private String converRequestToString(Object src, String outputEncoding) {
     41         String srcAsString = null;
     42 
     43         if (src instanceof Byte[]) {
     44             if (outputEncoding != null) {
     45                 try {
     46                     srcAsString = new String((byte[]) src, outputEncoding);
     47                 } catch (Exception e) {
     48                     srcAsString = new String((byte[]) src);
     49                 }
     50             } else {
     51                 srcAsString = new String((byte[]) src);
     52             }
     53         } else if (src instanceof InputStream) {
     54             InputStream input = (InputStream) src;
     55             try {
     56                 srcAsString = IOUtils.toString(input);
     57             } catch (Exception e) {
     58 
     59             } finally {
     60                 IOUtils.closeQuietly(input);
     61             }
     62         } else {
     63             srcAsString = src.toString();
     64         }
     65         return srcAsString;
     66     }
     67 
     68     /**
     69      * 从消息负载字符串中,取出查询串
     70      * @param request
     71      * @return
     72      */
     73     private String extractRequestQuery(String request) {
     74         String requestQuery = null;
     75 
     76         if (request != null && request.length() > 0 && request.indexOf('?') != -1) {
     77             requestQuery = request.substring(request.indexOf('?') + 1).trim();
     78         }
     79         return requestQuery;
     80     }
     81 
     82     /**
     83      *  从查询字符串中,抽取出 name对应的值xxx
     84      * @param requestQuery
     85      * @return
     86      * @throws TransformerException
     87      */
     88     private String extractNameValue(String requestQuery) throws TransformerException {
     89         String nameValue = null;
     90 
     91         if (requestQuery != null && requestQuery.length() > 0) {
     92             int nameParamterPos = requestQuery.indexOf(NAME_REQUEST_PARAMETER);
     93 
     94             if (nameParamterPos != -1) {
     95                 int nextParameterValuePos = requestQuery.indexOf('&');
     96                 if (nextParameterValuePos == -1 || nextParameterValuePos < nameParamterPos) {
     97                     nextParameterValuePos = requestQuery.length();
     98                 }
     99                 nameValue = requestQuery.substring(nameParamterPos + NAME_REQUEST_PARAMETER.length(), nextParameterValuePos);
    100             }
    101             if (nameValue != null && nameValue.length() > 0) {
    102                 try {
    103                     nameValue = URLDecoder.decode(nameValue, "utf-8");
    104                 } catch (Exception e) {
    105                     logger.error(e.getMessage());
    106                 }
    107             }
    108         }
    109 
    110         if (nameValue == null) {
    111             nameValue = "";
    112         }
    113         return nameValue;
    114     }
    115 }

    2) StringToNameString

     1 package org.mule.example.hello;
     2 
     3 import org.mule.api.transformer.TransformerException;
     4 import org.mule.transformer.AbstractTransformer;
     5 import org.mule.transformer.types.DataTypeFactory;
     6 
     7 public class StringToNameString extends AbstractTransformer {
     8 
     9     public StringToNameString() {
    10         super();
    11         this.registerSourceType(DataTypeFactory.STRING);
    12         this.setReturnDataType(DataTypeFactory.create(NameString.class));
    13     }
    14 
    15     @Override
    16     protected Object doTransform(Object src, String enc) throws TransformerException {
    17         return new NameString((String) src);
    18     }
    19 }

    3) NameStringToChatString

     1 package org.mule.example.hello;
     2 
     3 import org.mule.api.transformer.TransformerException;
     4 import org.mule.transformer.AbstractTransformer;
     5 import org.mule.transformer.types.DataTypeFactory;
     6 
     7 public class NameStringToChatString extends AbstractTransformer {
     8 
     9     public NameStringToChatString() {
    10         super();
    11         this.registerSourceType(DataTypeFactory.create(NameString.class));
    12         this.setReturnDataType(DataTypeFactory.create(ChatString.class));
    13     }
    14     
    15     
    16     @Override
    17     protected Object doTransform(Object src, String enc) throws TransformerException {
    18 
    19         ChatString chatString = new ChatString();
    20         NameString nameString =  (NameString) src;
    21         chatString.append(nameString.getGreeting() + " ");
    22         chatString.append(nameString.getName());
    23 
    24         return chatString;
    25     }
    26 }

    4) ChatStringToString

     1 package org.mule.example.hello;
     2 
     3 import org.mule.api.transformer.TransformerException;
     4 import org.mule.transformer.AbstractTransformer;
     5 import org.mule.transformer.types.DataTypeFactory;
     6 
     7 public class ChatStringToString extends AbstractTransformer {
     8     
     9     public ChatStringToString() {
    10         super();
    11         this.registerSourceType(DataTypeFactory.create(ChatString.class));
    12         this.setReturnDataType(DataTypeFactory.STRING);
    13     }
    14     
    15     @Override
    16     protected Object doTransform(Object src, String enc) throws TransformerException {        
    17         ChatString chatString = (ChatString) src;    
    18         return chatString.toString();
    19     }
    20 }

    5 其他类

    a. 组件类

    1) Greeter,  对应hello.xml中的配置: <component class="org.mule.example.hello.Greeter" doc:name="Greeter Component"/>

    package org.mule.example.hello;
    
    public class Greeter {
        
        private String greeting = "";
        
        public Greeter() {
            greeting = LocaleMessage.getGreetingPart1();
        }
        
        public Object greet(NameString person) {
            Object payload = person;
            
            if (person.isValid())
                person.setGreeting(greeting);
            else 
                payload = new Exception(LocaleMessage.getInvalidNameError());    
            return payload;
        }
    }

    2) ChitChatter, 对应hello.xml中的配置:<component class="org.mule.example.hello.ChitChatter" doc:name="ChitChatter component"/>

     1 package org.mule.example.hello;
     2 
     3 public class ChitChatter {
     4     
     5     private String chitchat = "";
     6     
     7     public ChitChatter() {
     8         chitchat = LocaleMessage.getGreetingPart2(); //, how are you?
     9     }
    10     
    11     public void chat(ChatString string) {
    12         string.append(chitchat);
    13     }
    14 }

    b. 可序列化对象类

    1)NameString

     1 package org.mule.example.hello;
     2 
     3 import java.io.Serializable;
     4 
     5 public class NameString implements Serializable {
     6     
     7     /**
     8      * 
     9      */
    10     private static final long serialVersionUID = 8285728498650648583L;
    11     
    12     
    13     private String name;
    14     private String greeting;
    15     
    16     
    17     public NameString() {
    18         this.name = null;
    19     }
    20 
    21     public NameString(String name) {
    22         this.name = name;
    23     }
    24 
    25 
    26     public String getName() {
    27         return name;
    28     }
    29     public void setName(String name) {
    30         this.name = name;
    31     }
    32     public String getGreeting() {
    33         return greeting;
    34     }
    35     public void setGreeting(String greeting) {
    36         this.greeting = greeting;
    37     }
    38     
    39     //名字是一个非null非空字符串就是合法的
    40     public boolean isValid() {
    41         return name != null && name.length() > 0;
    42     }
    43 }

    2) ChatString

     1 package org.mule.example.hello;
     2 
     3 import java.io.Serializable;
     4 
     5 public class ChatString implements Serializable {
     6     
     7     
     8     /**
     9      * 
    10      */
    11     private static final long serialVersionUID = 3034358132588499676L;
    12     
    13     
    14     
    15     private StringBuffer string = new StringBuffer();
    16     
    17     
    18     public StringBuffer append(String str) {
    19         return string.append(str);
    20     }
    21     
    22     
    23     public StringBuffer append(StringBuffer sb) {
    24         return string.append(sb);
    25     }
    26     
    27     public StringBuffer insert(int offset, char[] str) {
    28         return string.insert(offset, str);
    29     }
    30     
    31     
    32     public StringBuffer insert(int index, char[] str, int offset, int len) {
    33         return string.insert(index, str, offset, len);
    34     }
    35     
    36     public int getSize() {
    37         return string.length();
    38     }
    39     
    40     public String toString() {
    41         return string.toString();
    42     }
    43 }

    c. 本地资源获取工具类

    资源文件 hello-example-messages.properties

    1=, how are you?
    2=Hello
    3=Please enter you name
    3=Please provide a valid name with at least one character!

    获取资源工具类 LocaleMessage

     1 package org.mule.example.hello;
     2 
     3 import org.mule.config.i18n.MessageFactory;
     4 
     5 public class LocaleMessage extends MessageFactory {
     6     
     7     
     8     private static final LocaleMessage factory = new LocaleMessage();
     9     private static final String BUNDLE_PATH = "messages.hello-example-messages"; 
    10     
    11     public static String getGreetingPart2() {
    12         return factory.getString(BUNDLE_PATH, 1);
    13     }
    14     
    15     public static String getGreetingPart1() {
    16         return factory.getString(BUNDLE_PATH, 2);
    17     }
    18     
    19     public static String getPrompt() {
    20         return factory.getString(BUNDLE_PATH, 3);
    21     }
    22     
    23     public static String getInvalidNameError() {
    24         return factory.getString(BUNDLE_PATH, 4);
    25     }
    26 }

    d. 测试类

    1)可序列化对象类和自定义消息处理器类的测试

      1 package org.mule.example.hello;
      2 
      3 import java.io.ByteArrayInputStream;
      4 import java.io.InputStream;
      5 
      6 import org.junit.Test;
      7 import org.mule.tck.junit4.AbstractMuleTestCase;
      8 import org.mule.transformer.types.DataTypeFactory;
      9 
     10 import static org.junit.Assert.assertNotNull;
     11 import static org.junit.Assert.assertNull;
     12 import static org.junit.Assert.assertEquals;
     13 import static org.junit.Assert.assertTrue;
     14 
     15 public class HelloSampleTestCase extends AbstractMuleTestCase {
     16 
     17     /**
     18      * 对可序列化对象类Greeter的方法进行测试
     19      */
     20     @Test 
     21     public void testGreeter() {
     22         NameString name = new NameString("Fred");
     23         assertNotNull(name.getName());
     24         assertNull(name.getGreeting());
     25 
     26         name.setName("Another Fred");
     27         Greeter greeter = new Greeter();
     28         greeter.greet(name);
     29         assertNotNull(name.getGreeting());
     30     }
     31 
     32     /**
     33      * 对可序列化对象类testChitChatter的方法进行测试
     34      */
     35     @Test
     36     public void testChitChatter() {
     37         NameString name = new NameString("Barney");
     38         assertNotNull(name.getName());
     39         assertNull(name.getGreeting());
     40 
     41         ChatString chat = new ChatString();
     42         assertTrue(chat.getSize() == 0);
     43         ChitChatter chitChatter = new ChitChatter();
     44         chitChatter.chat(chat);
     45         assertTrue(chat.getSize() > 0);
     46         System.out.println("chat.getSize(): " + chat.getSize() + ", chat.getGreeting(): " + chat);
     47 
     48         int size = chat.getSize();
     49         chat.append("Blah");
     50         chat.append(new StringBuffer("Blah"));
     51         assertTrue(chat.toString().endsWith("BlahBlah"));
     52         chat.insert(0, "Blah".toCharArray(), 0, 2);
     53         chat.insert(2, "Blah".toCharArray());
     54         assertTrue(chat.toString().startsWith("BlBlah"));
     55         assertEquals(size + 4 + 4 + 2 + 4, chat.getSize());
     56     }
     57 
     58     //测试 StringToNameString 消息转换器
     59     @Test
     60     public void testStringToNameTransformer() throws Exception {
     61         String temp = "Wilma";
     62         StringToNameString trans = new StringToNameString();
     63         Object result = trans.transform(temp);
     64 
     65         assertNotNull(result);
     66         assertTrue(result instanceof NameString);
     67 
     68         NameString name = (NameString) result;
     69         assertNotNull(name.getName());
     70         assertNull(name.getGreeting());
     71 
     72         result = trans.transform("Another Wilma");
     73         assertNotNull(result);
     74         assertTrue(result instanceof NameString);
     75 
     76         name = (NameString) result;
     77         assertNotNull(name.getName());
     78         assertEquals("Another Wilma", name.getName());
     79     }
     80 
     81     
     82     //测试 HttpRequestToNameString 消息转换器
     83     @Test
     84     public void testHttpRequestToNameTransformer() throws Exception {
     85         String temp = "whateverUrl?name=Wilma";
     86         HttpRequestToNameString trans = new HttpRequestToNameString();
     87         Object result = trans.transform(temp);
     88 
     89         assertNotNull(result);
     90         assertTrue(result instanceof NameString);
     91 
     92         NameString name = (NameString) result;
     93         assertNotNull(name.getName());
     94         assertNull(name.getGreeting());
     95 
     96         result = trans.transform("whateverUrl?street=Sonnenstrasse&name=Another%20Wilma");
     97         assertNotNull(result);
     98         assertTrue(result instanceof NameString);
     99 
    100         name = (NameString) result;
    101         assertNotNull(name.getName());
    102         assertEquals("Another Wilma", name.getName());
    103     }
    104 
    105     //测试 HttpRequestToNameString 消息转换器
    106     @Test
    107     public void testHttpRequestToNameStreamingTransformer() throws Exception {
    108         InputStream in = new ByteArrayInputStream("whateverUrl?name=Wilma".getBytes());
    109         HttpRequestToNameString transformer = new HttpRequestToNameString();
    110         Object result = transformer.transform(in);
    111 
    112         assertNotNull(result);
    113         assertTrue(result instanceof NameString);
    114 
    115         NameString name = (NameString) result;
    116         assertNotNull(name.getName());
    117         assertNull(name.getGreeting());
    118     }
    119 
    120     //测试 NameToChatString 消息转换器
    121     @Test
    122     public void testNameToChatTransformer() throws Exception {
    123         NameString temp = new NameString("the other one");
    124         NameStringToChatString trans = new NameStringToChatString();
    125         trans.setReturnDataType(DataTypeFactory.create(ChatString.class));
    126 
    127         Object result = trans.transform(temp);
    128         assertNotNull(result);
    129         assertTrue(result instanceof ChatString);
    130 
    131         ChatString chat = (ChatString) result;
    132         assertTrue(chat.getSize() > 0);
    133     }
    134 }

    2)带有VM入站端点的HelloWorldVm流测试

     1 package org.mule.example.hello;
     2 
     3 import org.junit.Test;
     4 import org.mule.api.MuleMessage;
     5 import org.mule.api.client.MuleClient;
     6 import org.mule.tck.junit4.FunctionalTestCase;
     7 
     8 import static org.junit.Assert.assertNotNull;
     9 import static org.junit.Assert.assertTrue;
    10 
    11 public class HelloTestCase extends FunctionalTestCase {
    12     
    13     @Override
    14     protected String getConfigResources() {
    15         return "hello.xml";
    16     }
    17     
    18     @Test
    19     public void testHelloVM() throws Exception {
    20         MuleClient client = muleContext.getClient();
    21         MuleMessage responseMessage = client.send("vm://greeter", "Rose", null);
    22         
    23         System.out.println("####>>>response: " + responseMessage.getPayloadAsString());
    24         
    25         assertNotNull(responseMessage);
    26         assertTrue(responseMessage.getPayloadAsString().contains("Rose"));
    27     }
    28 }
    [06-19 19:15:19] DEBUG JmxAgent [Thread-0]: Registering configuration with name: Mule.76f5418f-1674-11e5-a544-239f9557e574:name=Configuration  ##注册配置信息
    [06-19 19:15:19] DEBUG JmxAgent [Thread-0]: Registering model with name: Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Model,name="_muleSystemModel(seda)"  ##注册模型
    [06-19 19:15:19] DEBUG JmxAgent [Thread-0]: Registering service with name: Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Flow,name="HelloWorld" ##注册HelloWorld服务 [06-19 19:15:19] DEBUG JmxAgent [Thread-0]: Registering service with name: Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Flow,name="HelloWorldVm" ##注册HelloWorldVm服务


    注册端点Endpoint [06-19 19:15:19] DEBUG SpringRegistry [Thread-0]: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'endpoint.vm.greeter' is defined ##Spring容器中没有名为'endpoint.vm.greeter'的bean定义 [06-19 19:15:19] INFO JmxAgent [Thread-0]: Attempting to register service with name: ##尝试去注册服务
        Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Endpoint,service="HelloWorldVm",connector=connector.VM.mule.default,name="endpoint.vm.greeter" [06-19 19:15:19] INFO JmxAgent [Thread-0]: Registered Endpoint Service with name: ##该服务注册成功
        Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Endpoint,service="HelloWorldVm",connector=connector.VM.mule.default,name="endpoint.vm.greeter"
    [06-19 19:15:19] DEBUG SpringRegistry [Thread-0]: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'endpoint.http.localhost.8888' is defined ##Spring容器中没有名为'endpoint.http.localhost.8888'的bean定义 [06-19 19:15:19] INFO JmxAgent [Thread-0]: Attempting to register service with name:
        Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Endpoint,service="HelloWorld",connector=connector.http.mule.default,name="endpoint.http.localhost.8888" [06-19 19:15:19] INFO JmxAgent [Thread-0]: Registered Endpoint Service with name:
        Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Endpoint,service="HelloWorld",connector=connector.http.mule.default,name="endpoint.http.localhost.8888"

    注册连接器Connector [06-19 19:15:19] DEBUG SpringRegistry [Thread-0]: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'connector.VM.mule.default.1' is defined ##spring容器中没有名为'connector.VM.mule.default.1'的bean定义 [06-19 19:15:19] DEBUG JmxAgent [Thread-0]: Attempting to register service with name:
        Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Connector,name="connector.VM.mule.default.1" [06-19 19:15:19] INFO JmxAgent [Thread-0]: Registered Connector Service with name
        Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Connector,name="connector.VM.mule.default.1"
    [06-19 19:15:19] DEBUG SpringRegistry [Thread-0]: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'connector.http.mule.default.1' is defined ##spring容器中没有'connector.http.mule.default.1'的bean定义 [06-19 19:15:19] DEBUG JmxAgent [Thread-0]: Attempting to register service with name:
        Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Connector,name="connector.http.mule.default.1" [06-19 19:15:19] INFO JmxAgent [Thread-0]: Registered Connector Service with name
        Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Connector,name="connector.http.mule.default.1"

    注册统计应用Application [06-19 19:15:19] DEBUG JmxAgent [Thread-0]: Registering application statistics with name: Mule.76f5418f-1674-11e5-a544-239f9557e574:type=Application,name="application totals" ##注册统计应用
    通过DefaultMuleContext打印平台相关信息
    [06-19 19:15:19] INFO DefaultMuleContext [Thread-0]: ********************************************************************** * Mule ESB and Integration Platform * * Version: 3.4.0 Build: c8afb471 * * MuleSoft, Inc. * * For more information go to http://www.mulesoft.org * * * * Server started: 15-6-19 下午7:15 * * Server ID: 76f5418f-1674-11e5-a544-239f9557e574 * * JDK: 1.7.0_76 (mixed mode, sharing) * * OS encoding: GBK, Mule encoding: UTF-8 * * OS: Windows 7 - Service Pack 1 (6.1, x86) * * Host: scada1 (127.0.0.1) * * * * Agents Running: * * JMX Agent * **********************************************************************

    [06-19 19:15:19] DEBUG DefaultEndpointFactory [Thread-0]: DefaultEndpointFactory request for endpoint builder for uri: vm://greeter [06-19 19:15:19] DEBUG DefaultEndpointFactory [Thread-0]: Looking up EndpointBuilder with name:vm://greeter in registry ##在注册表中,查询名字为'vm://greeter'的端点构建器 [06-19 19:15:19] DEBUG SpringRegistry [Thread-0]: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'vm://greeter' is defined [06-19 19:15:19] DEBUG MuleRegistryHelper [Thread-0]: No endpoint builder with the name: vm://greeter found. ##没有发现名为XX的端点构建器 [06-19 19:15:19] DEBUG DefaultEndpointFactory [Thread-0]: Named EndpointBuilder not found, creating endpoint builder for uri ##创建端点构建器 [06-19 19:15:19] DEBUG DefaultTransportServiceDescriptor [Thread-0]: Endpoint builder not set, Loading default builder: org.mule.endpoint.EndpointURIEndpointBuilder ##加载默认的端点构建器 [06-19 19:15:19] DEBUG DefaultTransportServiceDescriptor [Thread-0]: Loading endpointUri resolver: org.mule.endpoint.ResourceNameEndpointURIBuilder ##加载端点URI解析器
    [06-19 19:15:19] DEBUG SpringRegistry [Thread-0]: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'endpoint.vm.greeter' is defined [06-19 19:15:19] DEBUG SpringRegistry [Thread-0]: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'endpoint:1778981589' is defined
    [06-19 19:15:19] DEBUG TransientRegistry [Thread-0]: registering key/object endpoint:1778981589/DefaultOutboundEndpoint ##没有发现端点endpoint.vm.greeter',然后注册该端点
    {
      endpointUri=vm://greeter, connector=VMConnector   {    name=connector.VM.mule.default    lifecycle=start    this=1351a4    numberOfConcurrentTransactedReceivers=4    createMultipleTransactedReceivers=true    connected=true    supportedProtocols=[vm]    serviceOverrides=
    <none>   },   name='endpoint.vm.greeter',
      mep=REQUEST_RESPONSE,
      properties={},
      transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0},
      deleteUnacceptedMessages=false,
      initialState=started,
      responseTimeout=10000,
      endpointEncoding=UTF-8,
      disableTransportTransformer=false
    } [06-19 19:15:19] DEBUG TransientRegistry [Thread-0]: applying processors ##应用处理器 [06-19 19:15:19] DEBUG TransientRegistry [Thread-0]: applying lifecycle to object: DefaultOutboundEndpoint ##应用生命周期
    {
    endpointUri=vm://greeter, connector=VMConnector { name=connector.VM.mule.default lifecycle=start this=1351a4 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=true supportedProtocols=[vm] serviceOverrides=
    <none> } , name='endpoint.vm.greeter', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false}

    [06-19 19:15:19] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for OutboundEndpoint 'vm://greeter' composite request/response chain' [ InterceptingChainLifecycleWrapper 'wrapper for OutboundEndpoint 'vm://greeter' request chain' [ org.mule.endpoint.outbound.OutboundLoggingMessageProcessor, org.mule.lifecycle.processor.ProcessIfStartedMessageProcessor, org.mule.processor.EndpointTransactionalInterceptingMessageProcessor, org.mule.endpoint.outbound.OutboundEventTimeoutMessageProcessor, org.mule.endpoint.outbound.OutboundSessionHandlerMessageProcessor, org.mule.endpoint.outbound.OutboundEndpointPropertyMessageProcessor, org.mule.endpoint.outbound.OutboundRootMessageIdPropertyMessageProcessor, org.mule.endpoint.outbound.OutboundResponsePropertiesMessageProcessor, org.mule.endpoint.outbound.OutboundEndpointMimeTypeCheckingMessageProcessor, org.mule.transport.AbstractConnector$DispatcherMessageProcessor ], InterceptingChainLifecycleWrapper 'wrapper for OutboundEndpoint 'vm://greeter' response chain' [ org.mule.endpoint.outbound.OutboundRewriteResponseEventMessageProcessor ] ] with event MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none


    [06-19 19:15:19] DEBUG SimpleMessageProcessorChain [Thread-0]: Invoking SimpleMessageProcessorChain ##调用简单的消息处理器链 [ InterceptingChainLifecycleWrapper 'wrapper for OutboundEndpoint 'vm://greeter' request chain' [ org.mule.endpoint.outbound.OutboundLoggingMessageProcessor, org.mule.lifecycle.processor.ProcessIfStartedMessageProcessor, org.mule.processor.EndpointTransactionalInterceptingMessageProcessor, org.mule.endpoint.outbound.OutboundEventTimeoutMessageProcessor, org.mule.endpoint.outbound.OutboundSessionHandlerMessageProcessor, org.mule.endpoint.outbound.OutboundEndpointPropertyMessageProcessor, org.mule.endpoint.outbound.OutboundRootMessageIdPropertyMessageProcessor, org.mule.endpoint.outbound.OutboundResponsePropertiesMessageProcessor, org.mule.endpoint.outbound.OutboundEndpointMimeTypeCheckingMessageProcessor, org.mule.transport.AbstractConnector$DispatcherMessageProcessor ], InterceptingChainLifecycleWrapper 'wrapper for OutboundEndpoint 'vm://greeter' response chain' [ org.mule.endpoint.outbound.OutboundRewriteResponseEventMessageProcessor ] ] with event MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none

    [06-19 19:15:19] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for OutboundEndpoint 'vm://greeter' request chain' [ org.mule.endpoint.outbound.OutboundLoggingMessageProcessor, org.mule.lifecycle.processor.ProcessIfStartedMessageProcessor, org.mule.processor.EndpointTransactionalInterceptingMessageProcessor, org.mule.endpoint.outbound.OutboundEventTimeoutMessageProcessor, org.mule.endpoint.outbound.OutboundSessionHandlerMessageProcessor, org.mule.endpoint.outbound.OutboundEndpointPropertyMessageProcessor, org.mule.endpoint.outbound.OutboundRootMessageIdPropertyMessageProcessor, org.mule.endpoint.outbound.OutboundResponsePropertiesMessageProcessor, org.mule.endpoint.outbound.OutboundEndpointMimeTypeCheckingMessageProcessor, org.mule.transport.AbstractConnector$DispatcherMessageProcessor ] with event MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none

    [06-19 19:15:19] DEBUG SimpleMessageProcessorChain [Thread-0]: Invoking SimpleMessageProcessorChain [ org.mule.endpoint.outbound.OutboundLoggingMessageProcessor, org.mule.lifecycle.processor.ProcessIfStartedMessageProcessor ] with event MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none [06-19 19:15:19] DEBUG OutboundLoggingMessageProcessor [Thread-0]: sending event: MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none [06-19 19:15:19] DEBUG SimpleMessageProcessorChain [Thread-0]: Invoking SimpleMessageProcessorChain [ org.mule.endpoint.outbound.OutboundEventTimeoutMessageProcessor, org.mule.endpoint.outbound.OutboundSessionHandlerMessageProcessor, org.mule.endpoint.outbound.OutboundEndpointPropertyMessageProcessor, org.mule.endpoint.outbound.OutboundRootMessageIdPropertyMessageProcessor, org.mule.endpoint.outbound.OutboundResponsePropertiesMessageProcessor ] with event MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none



    [06-19 19:15:19] DEBUG SerializeAndEncodeSessionHandler [Thread-0]: Adding serialized and base64-encoded Session header to message: ##把已序列化并编码后的Session头添加到消息
    rO0ABXNyACNvcmcubXVsZS5zZXNzaW9uLkRlZmF1bHRNdWxlU2Vzc2lvbi7rdtEW7GGKAwAEWgAFdmFsaWRMAA1mbG93Q29uc3RydWN0dAAmTG9yZy9tdWxlL2FwaS9jb25zdHJ1Y3QvRmxvd0NvbnN0cnVjdDtMAAJpZHQAEkxqYXZhL2xhbmcvU3RyaW5nO0wAD3NlY3VyaXR5Q29udGV4dHQAJ0xvcmcvbXVsZS9hcGkvc2VjdXJpdHkvU2VjdXJpdHlDb250ZXh0O3hwAXB0ACQ3ODYzOWVjOC0xNjc0LTExZTUtYTU0NC0yMzlmOTU1N2U1NzRwc3IAJWphdmEudXRpbC5Db2xsZWN0aW9ucyRTeW5jaHJvbml6ZWRNYXAbc/kJS0s5ewMAAkwAAW10AA9MamF2YS91dGlsL01hcDtMAAVtdXRleHQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwc3IAJG9yZy5tdWxlLnV0aWwuQ2FzZUluc2Vuc2l0aXZlSGFzaE1hcJ3R2e9nRc4AAwAAeHB3DD9AAAAAAAAQAAAAAHhxAH4ACXh4


    [06-19 19:15:19] DEBUG SimpleMessageProcessorChain [Thread-0]: Invoking SimpleMessageProcessorChain [ org.mule.endpoint.outbound.OutboundEndpointMimeTypeCheckingMessageProcessor, org.mule.transport.AbstractConnector$DispatcherMessageProcessor ] with event MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none

    [06-19 19:15:19] DEBUG VMConnector [Thread-0]: Borrowing a dispatcher for endpoint: vm://greeter [06-19 19:15:19] INFO AbstractLifecycleManager [Thread-0]: Initialising: 'connector.VM.mule.default.dispatcher.3027266'. Object is: VMMessageDispatcher [06-19 19:15:19] DEBUG VMMessageDispatcher [Thread-0]: Connecting: VMMessageDispatcher{this=2e3142, endpoint=vm://greeter, disposed=false} [06-19 19:15:19] DEBUG VMMessageDispatcher [Thread-0]: Connected: endpoint.outbound.vm://greeter [06-19 19:15:19] INFO AbstractLifecycleManager [Thread-0]: Starting: 'connector.VM.mule.default.dispatcher.3027266'. Object is: VMMessageDispatcher [06-19 19:15:19] DEBUG VMConnector [Thread-0]: Borrowed a dispatcher for endpoint: vm://greeter = VMMessageDispatcher{this=2e3142, endpoint=vm://greeter, disposed=false} [06-19 19:15:19] DEBUG VMConnector [Thread-0]: Borrowed dispatcher: VMMessageDispatcher{this=2e3142, endpoint=vm://greeter, disposed=false}

    [06-19 19:15:19] DEBUG SerializeAndEncodeSessionHandler [Thread-0]: Adding serialized and base64-encoded Session header to message:
    rO0ABXNyACNvcmcubXVsZS5zZXNzaW9uLkRlZmF1bHRNdWxlU2Vzc2lvbi7rdtEW7GGKAwAEWgAFdmFsaWRMAA1mbG93Q29uc3RydWN0dAAmTG9yZy9tdWxlL2FwaS9jb25zdHJ1Y3QvRmxvd0NvbnN0cnVjdDtMAAJpZHQAEkxqYXZhL2xhbmcvU3RyaW5nO0wAD3NlY3VyaXR5Q29udGV4dHQAJ0xvcmcvbXVsZS9hcGkvc2VjdXJpdHkvU2VjdXJpdHlDb250ZXh0O3hwAXB0ACQ3ODYzOWVjOC0xNjc0LTExZTUtYTU0NC0yMzlmOTU1N2U1NzRwc3IAJWphdmEudXRpbC5Db2xsZWN0aW9ucyRTeW5jaHJvbml6ZWRNYXAbc/kJS0s5ewMAAkwAAW10AA9MamF2YS91dGlsL01hcDtMAAVtdXRleHQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwc3IAJG9yZy5tdWxlLnV0aWwuQ2FzZUluc2Vuc2l0aXZlSGFzaE1hcJ3R2e9nRc4AAwAAeHB3DD9AAAAAAAAQAAAAAHhxAH4ACXh4

    [06-19 19:15:19] DEBUG VMConnector [Thread-0]: Looking up vm receiver for address: vm://greeter [06-19 19:15:19] DEBUG VMConnector [Thread-0]: Found exact receiver match on endpointUri: vm://greeter [06-19 19:15:19] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for InboundEndpoint 'vm://greeter' composite request/response chain' [ InterceptingChainLifecycleWrapper 'wrapper for InboundEndpoint 'vm://greeter' request chain' [ org.mule.endpoint.inbound.InboundEndpointMimeTypeCheckingMessageProcessor, org.mule.endpoint.inbound.InboundEndpointPropertyMessageProcessor, org.mule.endpoint.inbound.InboundNotificationMessageProcessor, org.mule.endpoint.inbound.InboundLoggingMessageProcessor, org.mule.routing.requestreply.ReplyToParameterProcessor@1b97ab3, org.mule.construct.AbstractPipeline$3 ], InterceptingChainLifecycleWrapper 'wrapper for InboundEndpoint 'vm://greeter' response chain' [ org.mule.endpoint.inbound.InboundExceptionDetailsMessageProcessor, org.mule.routing.requestreply.ReplyToPropertyRequestReplyReplier ] ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    [06-19 19:15:19] DEBUG SimpleMessageProcessorChain [Thread-0]: Invoking SimpleMessageProcessorChain [ InterceptingChainLifecycleWrapper 'wrapper for InboundEndpoint 'vm://greeter' request chain' [ org.mule.endpoint.inbound.InboundEndpointMimeTypeCheckingMessageProcessor, org.mule.endpoint.inbound.InboundEndpointPropertyMessageProcessor, org.mule.endpoint.inbound.InboundNotificationMessageProcessor, org.mule.endpoint.inbound.InboundLoggingMessageProcessor, org.mule.routing.requestreply.ReplyToParameterProcessor@1b97ab3, org.mule.construct.AbstractPipeline$3 ], InterceptingChainLifecycleWrapper 'wrapper for InboundEndpoint 'vm://greeter' response chain' [ org.mule.endpoint.inbound.InboundExceptionDetailsMessageProcessor, org.mule.routing.requestreply.ReplyToPropertyRequestReplyReplier ] ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter


    [06-19 19:15:19] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for InboundEndpoint 'vm://greeter' request chain' [ org.mule.endpoint.inbound.InboundEndpointMimeTypeCheckingMessageProcessor, org.mule.endpoint.inbound.InboundEndpointPropertyMessageProcessor, org.mule.endpoint.inbound.InboundNotificationMessageProcessor, org.mule.endpoint.inbound.InboundLoggingMessageProcessor, org.mule.routing.requestreply.ReplyToParameterProcessor@1b97ab3, org.mule.construct.AbstractPipeline$3 ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter [06-19 19:15:19] DEBUG SimpleMessageProcessorChain [Thread-0]: Invoking SimpleMessageProcessorChain [ org.mule.endpoint.inbound.InboundEndpointMimeTypeCheckingMessageProcessor, org.mule.endpoint.inbound.InboundEndpointPropertyMessageProcessor, org.mule.endpoint.inbound.InboundNotificationMessageProcessor, org.mule.endpoint.inbound.InboundLoggingMessageProcessor, org.mule.routing.requestreply.ReplyToParameterProcessor@1b97ab3, org.mule.construct.AbstractPipeline$3 ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter


    [06-19 19:15:19] DEBUG InboundLoggingMessageProcessor [Thread-0]: Message Received on: vm://greeter [06-19 19:15:19] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for 'HelloWorldVm' processor chain' [ org.mule.construct.AbstractPipeline$1, org.mule.construct.AbstractPipeline$ProcessIfPipelineStartedMessageProcessor, org.mule.interceptor.ProcessingTimeInterceptor, org.mule.construct.processor.FlowConstructStatisticsMessageProcessor, org.mule.processor.LaxSedaStageInterceptingMessageProcessor, StringToNameString{this=b4fb76, name='StringToNameString', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.example.hello.NameString, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}]}, SubflowInterceptingChainLifecycleWrapper 'HelloWorldSubFlow' [ DefaultJavaComponent{HelloWorldVm.component.26247488}, ChoiceRouter [flow-construct=HelloWorldVm, started=true] ], org.mule.routing.requestreply.AsyncReplyToPropertyRequestReplyReplier, org.mule.construct.AbstractPipeline$2@f2d81 ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    [06-19 19:15:19] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of 'HelloWorldVm' processor chain' [ org.mule.construct.AbstractPipeline$1 ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter [06-19 19:15:19] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of 'HelloWorldVm' processor chain' [ org.mule.construct.processor.FlowConstructStatisticsMessageProcessor, org.mule.processor.LaxSedaStageInterceptingMessageProcessor ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter [06-19 19:15:19] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of 'HelloWorldVm' processor chain' [ StringToNameString{this=b4fb76, name='StringToNameString', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.example.hello.NameString, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}]}, SubflowInterceptingChainLifecycleWrapper 'HelloWorldSubFlow' [ DefaultJavaComponent{HelloWorldVm.component.26247488}, ChoiceRouter [flow-construct=HelloWorldVm, started=true] ], org.mule.routing.requestreply.AsyncReplyToPropertyRequestReplyReplier ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    应用StringToNameString消息转换器 [06-19 19:15:19] DEBUG StringToNameString [Thread-0]: Applying transformer StringToNameString (org.mule.example.hello.StringToNameString) [06-19 19:15:19] DEBUG StringToNameString [Thread-0]: Object before transform: Rose [06-19 19:15:19] DEBUG StringToNameString [Thread-0]: Object after transform: org.mule.example.hello.NameString@1bbd1f9 [06-19 19:15:19] DEBUG AbstractTransformer [Thread-0]: The transformed value is of expected type. Type is: NameString

    调用子流 [06-19 19:15:19] DEBUG SubflowInterceptingChainLifecycleWrapper [Thread-0]: Invoking SubflowInterceptingChainLifecycleWrapper 'HelloWorldSubFlow' [ DefaultJavaComponent{HelloWorldVm.component.26247488}, ChoiceRouter [flow-construct=HelloWorldVm, started=true] ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    调用子流(HelloWorldSubFlow)内对的消息处理器链 [06-19 19:15:19] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of HelloWorldSubFlow' [ DefaultJavaComponent{HelloWorldVm.component.26247488}, ChoiceRouter [flow-construct=HelloWorldVm, started=true] ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    为组件拦截器处理器链,调用拦截器链生命周期包装器 [06-19 19:15:19] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for Component interceptor processor chain for :HelloWorldVm.component.26247488' [ org.mule.component.AbstractComponent$1$1@12da381 ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    [06-19 19:15:19] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of Component interceptor processor chain for :HelloWorldVm.component.26247488' [ org.mule.component.AbstractComponent$1$1@12da381 ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    [06-19 19:15:19] DEBUG AbstractEntryPointResolver [Thread-0]: Invoking org.mule.example.hello.Greeter.greet({class org.mule.example.hello.NameString}) [06-19 19:15:19] DEBUG AbstractEntryPointResolver [Thread-0]: Result of call org.mule.example.hello.Greeter.greet({class org.mule.example.hello.NameString}) is not null [06-19 19:15:19] DEBUG TransformerTemplate [Thread-0]: Applying transformer TransformerTemplate (org.mule.transformer.TransformerTemplate) [06-19 19:15:19] DEBUG TransformerTemplate [Thread-0]: Object before transform: org.mule.DefaultMuleMessage { id=7861ca07-1674-11e5-a544-239f9557e574 payload=org.mule.example.hello.NameString correlationId=
    <not set> correlationGroup=-1 correlationSeq=-1 encoding=UTF-8 exceptionPayload=<not set> Message properties: INVOCATION scoped properties: INBOUND scoped properties: MULE_ENCODING=UTF-8 MULE_ENDPOINT=vm://greeter MULE_ORIGINATING_ENDPOINT=endpoint.vm.greeter MULE_SESSION=rO0ABXNyACNvcmcubXVsZS5zZXNzaW9uLkRlZmF1bHRNdWxlU2Vzc2lvbi7rdtEW7GGKAwAEWgAFdmFsaWRMAA1mbG93Q29uc3RydWN0dAAmTG9yZy9tdWxlL2FwaS9jb25zdHJ1Y3QvRmxvd0NvbnN0cnVjdDtMAAJpZHQAEkxqYXZhL2xhbmcvU3RyaW5nO0wAD3NlY3VyaXR5Q29udGV4dHQAJ0xvcmcvbXVsZS9hcGkvc2VjdXJpdHkvU2VjdXJpdHlDb250ZXh0O3hwAXB0ACQ3ODYzOWVjOC0xNjc0LTExZTUtYTU0NC0yMzlmOTU1N2U1NzRwc3IAJWphdmEudXRpbC5Db2xsZWN0aW9ucyRTeW5jaHJvbml6ZWRNYXAbc/kJS0s5ewMAAkwAAW10AA9MamF2YS91dGlsL01hcDtMAAVtdXRleHQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwc3IAJG9yZy5tdWxlLnV0aWwuQ2FzZUluc2Vuc2l0aXZlSGFzaE1hcJ3R2e9nRc4AAwAAeHB3DD9AAAAAAAAQAAAAAHhxAH4ACXh4 OUTBOUND scoped properties: MULE_CORRELATION_GROUP_SIZE=-1 MULE_CORRELATION_SEQUENCE=-1 MULE_ENCODING=UTF-8 SESSION scoped properties: } [06-19 19:15:19] DEBUG TransformerTemplate [Thread-0]: Object after transform: org.mule.example.hello.NameString@1bbd1f9 [06-19 19:15:19] DEBUG TransformerTemplate [Thread-0]: The transformed object is of expected type. Type is: NameString [06-19 19:15:20] DEBUG SpringRegistry [Thread-0]: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'context' is defined

    [06-19 19:15:20] DEBUG DefaultExpressionManager [Thread-0]: Result of expression: groovy:payload instanceof org.mule.example.hello.NameString is: true ##when条件评估未true

    //-----------------处理器链定义片段------------------------------------

      <when expression="payload instanceof org.mule.example.hello.NameString" evaluator="groovy">
        <processor-chain doc:name="ProcessorChain1">
          <flow-ref name="ChitChat" doc:name="Process ChitChat"/>
        </processor-chain>
      </when>

    //-------------------------------------------------------------------
    为'null'调用拦截器链生命周期包装器(把其下的消息转换器、组件封装成一个链) [06-19 19:15:20] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for null' ##因为处理器链<processor-chain doc:name="ProcessorChain1">未命名(未指定name属性),所以此处显示为’null'处理器链 [ InterceptingChainLifecycleWrapper 'wrapper for processor chain 'null'' [ SubflowInterceptingChainLifecycleWrapper 'ChitChat' ##子流ChitChat的拦截链生命周期包装器 [ NameStringToChatString ##对应消息转换器
        {
          this=152c7b9,
          name='NameStringToChatString',
          ignoreBadInput=false,
          returnClass=SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'},
          sourceTypes=[SimpleDataType{type=org.mule.example.hello.NameString, mimeType='*/*'}]
        },     DefaultJavaComponent{HelloWorldVm.component.26070302}, ##对应java组件     ChatStringToString ##对应消息转换器
        {
          this=1b64fac,
          name='ChatStringToString',
          ignoreBadInput=false,
          returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'},
          sourceTypes=[SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}]
        } ] ] ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    //--------------------- 子流ChitChat声明片段----------------------------------

      <sub-flow name="ChitChat">
        <transformer ref="NameStringToChatString" doc:name="Transform NameString to ChatString"/>
        <component class="org.mule.example.hello.ChitChatter" doc:name="ChitChatter component"/>
        <transformer ref="ChatStringToString" doc:name="Transform ChatString to String"/>
      </sub-flow>

    //--------------------------------------------------------------------------

    调用(上面封装好的)消息处理器链 [06-19 19:15:20] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of null' [ InterceptingChainLifecycleWrapper 'wrapper for processor chain 'null'' [ SubflowInterceptingChainLifecycleWrapper 'ChitChat' [ NameStringToChatString{this=152c7b9, name='NameStringToChatString', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.NameString, mimeType='*/*'}]}, DefaultJavaComponent{HelloWorldVm.component.26070302}, ChatStringToString{this=1b64fac, name='ChatStringToString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}]} ] ] ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    [06-19 19:15:20] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for processor chain 'null'' [ SubflowInterceptingChainLifecycleWrapper 'ChitChat' [ NameStringToChatString{this=152c7b9, name='NameStringToChatString', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.NameString, mimeType='*/*'}]}, DefaultJavaComponent{HelloWorldVm.component.26070302}, ChatStringToString{this=1b64fac, name='ChatStringToString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}]} ] ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter

    [06-19 19:15:20] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of processor chain 'null'' [ SubflowInterceptingChainLifecycleWrapper 'ChitChat' [ NameStringToChatString{this=152c7b9, name='NameStringToChatString', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.NameString, mimeType='*/*'}]}, DefaultJavaComponent{HelloWorldVm.component.26070302}, ChatStringToString{this=1b64fac, name='ChatStringToString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}]} ] ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter



    调用子流ChitChat拦截器链包装器 [06-19 19:15:20] DEBUG SubflowInterceptingChainLifecycleWrapper [Thread-0]: Invoking SubflowInterceptingChainLifecycleWrapper 'ChitChat' [ NameStringToChatString{this=152c7b9, name='NameStringToChatString', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.NameString, mimeType='*/*'}]}, DefaultJavaComponent{HelloWorldVm.component.26070302}, ChatStringToString{this=1b64fac, name='ChatStringToString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}]} ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter


    迭代调用子流ChitChat内部链中的消息处理器 [06-19 19:15:20] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of ChitChat' [ NameStringToChatString{this=152c7b9, name='NameStringToChatString', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.NameString, mimeType='*/*'}]}, DefaultJavaComponent{HelloWorldVm.component.26070302}, ChatStringToString{this=1b64fac, name='ChatStringToString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.mule.example.hello.ChatString, mimeType='*/*'}]} ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter


    [06-19 19:15:20] DEBUG NameStringToChatString [Thread-0]: Applying transformer NameStringToChatString (org.mule.example.hello.NameStringToChatString) [06-19 19:15:20] DEBUG NameStringToChatString [Thread-0]: Object before transform: org.mule.example.hello.NameString@1bbd1f9 [06-19 19:15:20] DEBUG NameStringToChatString [Thread-0]: Object after transform: Hello Rose [06-19 19:15:20] DEBUG AbstractTransformer [Thread-0]: The transformed value is of expected type. Type is: ChatString


    调用子流中的Component组件 [06-19 19:15:20] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for Component interceptor processor chain for :HelloWorldVm.component.26070302' [ org.mule.component.AbstractComponent$1$1@130ac20 ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter [06-19 19:15:20] DEBUG DefaultMessageProcessorChain [Thread-0]: Invoking DefaultMessageProcessorChain '(inner iterating chain) of Component interceptor processor chain for :HelloWorldVm.component.26070302' [ org.mule.component.AbstractComponent$1$1@130ac20 ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter
    执行输出: [06-19 19:15:20] DEBUG AbstractEntryPointResolver [Thread-0]: Invoking org.mule.example.hello.ChitChatter.chat({class org.mule.example.hello.ChatString}) [06-19 19:15:20] DEBUG AbstractEntryPointResolver [Thread-0]: Result of call org.mule.example.hello.ChitChatter.chat({class org.mule.example.hello.ChatString}) is not null

    应用消息转换器ChatStringToString [06-19 19:15:20] DEBUG ChatStringToString [Thread-0]: Applying transformer ChatStringToString (org.mule.example.hello.ChatStringToString) [06-19 19:15:20] DEBUG ChatStringToString [Thread-0]: Object before transform: Hello Rose, how are you? [06-19 19:15:20] DEBUG ChatStringToString [Thread-0]: Object after transform: Hello Rose, how are you? [06-19 19:15:20] DEBUG AbstractTransformer [Thread-0]: The transformed value is of expected type. Type is: String

    [06-19 19:15:20] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for InboundEndpoint 'vm://greeter' response chain' [ org.mule.endpoint.inbound.InboundExceptionDetailsMessageProcessor, org.mule.routing.requestreply.ReplyToPropertyRequestReplyReplier ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter [06-19 19:15:20] DEBUG SimpleMessageProcessorChain [Thread-0]: Invoking SimpleMessageProcessorChain [ org.mule.endpoint.inbound.InboundExceptionDetailsMessageProcessor, org.mule.routing.requestreply.ReplyToPropertyRequestReplyReplier ] with event MuleEvent: 0-7867966d-1674-11e5-a544-239f9557e574, stop processing=false, vm://greeter


    [06-19 19:15:20] DEBUG SerializeAndEncodeSessionHandler [Thread-0]: Adding serialized and base64-encoded Session header to message: rO0ABXNyACNvcmcubXVsZS5zZXNzaW9uLkRlZmF1bHRNdWxlU2Vzc2lvbi7rdtEW7GGKAwAEWgAFdmFsaWRMAA1mbG93Q29uc3RydWN0dAAmTG9yZy9tdWxlL2FwaS9jb25zdHJ1Y3QvRmxvd0NvbnN0cnVjdDtMAAJpZHQAEkxqYXZhL2xhbmcvU3RyaW5nO0wAD3NlY3VyaXR5Q29udGV4dHQAJ0xvcmcvbXVsZS9hcGkvc2VjdXJpdHkvU2VjdXJpdHlDb250ZXh0O3hwAXB0ACQ3ODYzOWVjOC0xNjc0LTExZTUtYTU0NC0yMzlmOTU1N2U1NzRwc3IAJWphdmEudXRpbC5Db2xsZWN0aW9ucyRTeW5jaHJvbml6ZWRNYXAbc/kJS0s5ewMAAkwAAW10AA9MamF2YS91dGlsL01hcDtMAAVtdXRleHQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwc3IAJG9yZy5tdWxlLnV0aWwuQ2FzZUluc2Vuc2l0aXZlSGFzaE1hcJ3R2e9nRc4AAwAAeHB3DD9AAAAAAAAQAAAAAHhxAH4ACXh4 [06-19 19:15:20] DEBUG VMMessageDispatcher [Thread-0]: sent event on endpointUri: vm://greeter [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Returning dispatcher for endpoint: vm://greeter = VMMessageDispatcher{this=2e3142, endpoint=vm://greeter, disposed=false} [06-19 19:15:20] DEBUG InterceptingChainLifecycleWrapper [Thread-0]: Invoking InterceptingChainLifecycleWrapper 'wrapper for OutboundEndpoint 'vm://greeter' response chain' [ org.mule.endpoint.outbound.OutboundRewriteResponseEventMessageProcessor ] with event MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none [06-19 19:15:20] DEBUG SimpleMessageProcessorChain [Thread-0]: Invoking SimpleMessageProcessorChain [ org.mule.endpoint.outbound.OutboundRewriteResponseEventMessageProcessor ] with event MuleEvent: 0-78639ec9-1674-11e5-a544-239f9557e574, stop processing=false, none ####>>>response: Hello Rose, how are you? [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: Applying lifecycle phase: org.mule.lifecycle.phases.MuleContextStopPhase@168ae23 for registry: DefaultRegistryBroker [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: Flow{HelloWorld} [06-19 19:15:20] INFO FlowConstructLifecycleManager [Thread-0]: Stopping flow: HelloWorld [06-19 19:15:20] INFO HttpConnector [Thread-0]: Removing listener on endpointUri: http://localhost:8888 [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Disposing: 'null'. Object is: HttpMessageReceiver [06-19 19:15:20] INFO SedaStageLifecycleManager [Thread-0]: Stopping service: HelloWorld.stage1 [06-19 19:15:20] INFO ComponentLifecycleManager [Thread-0]: Stopping component: component.30676305 [06-19 19:15:20] INFO ComponentLifecycleManager [Thread-0]: Stopping component: component.14463286 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: Flow{HelloWorldVm} [06-19 19:15:20] INFO FlowConstructLifecycleManager [Thread-0]: Stopping flow: HelloWorldVm [06-19 19:15:20] INFO VMConnector [Thread-0]: Removing listener on endpointUri: vm://greeter [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Stopping: 'null'. Object is: VMMessageReceiver [06-19 19:15:20] DEBUG VMMessageReceiver [Thread-0]: Disconnecting: VMMessageReceiver{this=6bc833, receiverKey=greeter, endpoint=vm://greeter} [06-19 19:15:20] DEBUG VMMessageReceiver [Thread-0]: Disconnected: VMMessageReceiver{this=6bc833, receiverKey=greeter, endpoint=vm://greeter} [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Disposing: 'null'. Object is: VMMessageReceiver [06-19 19:15:20] INFO SedaStageLifecycleManager [Thread-0]: Stopping service: HelloWorldVm.stage1 [06-19 19:15:20] INFO ComponentLifecycleManager [Thread-0]: Stopping component: component.26247488 [06-19 19:15:20] INFO ComponentLifecycleManager [Thread-0]: Stopping component: component.26070302 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: SedaModel{_muleSystemModel} [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Stopping model: _muleSystemModel [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: org.mule.module.management.agent.JmxAgent@7d7969 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: VMConnector { name=connector.VM.mule.default lifecycle=start this=1351a4 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=true supportedProtocols=[vm] serviceOverrides=
    <none> } [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Stopping connector: connector.VM.mule.default [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Disposing dispatcher work manager [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Disposing requester work manager [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Disposing receiver work manager [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Clearing Dispatcher pool [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Stopping: 'connector.VM.mule.default.dispatcher.3027266'. Object is: VMMessageDispatcher [06-19 19:15:20] DEBUG VMMessageDispatcher [Thread-0]: Disconnecting: VMMessageDispatcher{this=2e3142, endpoint=vm://greeter, disposed=false} [06-19 19:15:20] DEBUG VMMessageDispatcher [Thread-0]: Disconnected: VMMessageDispatcher{this=2e3142, endpoint=vm://greeter, disposed=false} [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Disposing: 'connector.VM.mule.default.dispatcher.3027266'. Object is: VMMessageDispatcher [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Dispatcher pool cleared [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Clearing Requester pool [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Requester pool cleared [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: HttpConnector { name=connector.http.mule.default lifecycle=stop this=2410f1 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=false supportedProtocols=[http] serviceOverrides=<none> } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: org.mule.util.queue.TransactionalQueueManager@6e4ea2 [06-19 19:15:20] INFO TransactionalQueueManager [Thread-0]: Stopping ResourceManager [06-19 19:15:20] INFO TransactionalQueueManager [Thread-0]: Stopped ResourceManager [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: DefaultInboundEndpoint{endpointUri=http://localhost:8888, connector=HttpConnector { name=connector.http.mule.default lifecycle=stop this=2410f1 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=false supportedProtocols=[http] serviceOverrides=<none> } , name='endpoint.http.localhost.8888', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: DefaultInboundEndpoint{endpointUri=vm://greeter, connector=VMConnector { name=connector.VM.mule.default lifecycle=stop this=1351a4 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=true supportedProtocols=[vm] serviceOverrides=<none> } , name='endpoint.vm.greeter', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: org.mule.management.stats.DefaultProcessingTimeWatcher@b57b0a [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: stop for object: org.mule.DefaultMuleContext@903261 [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Disposing RegistryBroker [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: Applying lifecycle phase: org.mule.lifecycle.phases.MuleContextDisposePhase@13833a7 for registry: TransientRegistry [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.management.agent.JmxAgent@7d7969 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: VMConnector { name=connector.VM.mule.default lifecycle=stop this=1351a4 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=true supportedProtocols=[vm] serviceOverrides=<none> } [06-19 19:15:20] INFO VMConnector [Thread-0]: Disconnected: VMConnector { name=connector.VM.mule.default lifecycle=stop this=1351a4 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=true supportedProtocols=[vm] serviceOverrides=<none> } [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Disposing connector: connector.VM.mule.default [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Disposing Receivers [06-19 19:15:20] DEBUG VMConnector [Thread-0]: Receivers Disposed [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: HttpConnector { name=connector.http.mule.default lifecycle=stop this=2410f1 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=false supportedProtocols=[http] serviceOverrides=<none> } [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Disposing connector: connector.http.mule.default [06-19 19:15:20] DEBUG HttpConnector [Thread-0]: Closing TCP connector [06-19 19:15:20] INFO ExpiryMonitor [Thread-0]: disposing monitor [06-19 19:15:20] DEBUG HttpConnector [Thread-0]: Disposing Receivers [06-19 19:15:20] DEBUG HttpConnector [Thread-0]: Receivers Disposed [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: DefaultInboundEndpoint{endpointUri=http://localhost:8888, connector=HttpConnector { name=connector.http.mule.default lifecycle=dispose this=2410f1 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=false supportedProtocols=[http] serviceOverrides=<none> } , name='endpoint.http.localhost.8888', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: DefaultInboundEndpoint{endpointUri=vm://greeter, connector=VMConnector { name=connector.VM.mule.default lifecycle=dispose this=1351a4 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=false supportedProtocols=[vm] serviceOverrides=<none> } , name='endpoint.vm.greeter', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessagePayloadExpressionEvaluator@133c9a1 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.expression.BeanPayloadExpressionEvaluator@ba638e [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: JMSMessageToObject{this=13ae860, name='_JMSMessageToVector', ignoreBadInput=false, returnClass=CollectionDataType{type=java.util.Vector, itemType=java.lang.Object, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=javax.jms.Message, mimeType='*/*'}, SimpleDataType{type=javax.jms.TextMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.ObjectMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.BytesMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.MapMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.StreamMessage, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.scripting.config.GroovyAnnotationParser@1ed0e8e [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToString{this=fe9c23, name='ObjectToAtomString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='application/atom+xml'}, sourceTypes=[SimpleDataType{type=java.lang.Object, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: StringToBoolean{this=f3eac0, name='StringToBoolean', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.Boolean, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToFeed{this=1453782, name='_ObjectToFeed', ignoreBadInput=false, returnClass=SimpleDataType{type=org.apache.abdera.model.Feed, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=java.lang.String, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageExpressionEvaluator@451d62 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: StringToNumber{this=1d80dfe, name='StringToLong', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.Long, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToInputStream{this=4ba6de, name='_ObjectToInputStream', ignoreBadInput=false, returnClass=SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.io.Serializable, mimeType='*/*'}, SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MapPayloadExpressionEvaluator@12719ad [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.RegexExpressionEvaluator@150da10 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.processors.DecoratingAnnotatedServiceProcessor@1e69671 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.parsers.OutboundAttachmentsAnnotationParser@c67308 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MuleExpressionEvaluator@c190b5 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.expression.JaxpXPathExpressionEvaluator@8320d1 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.transport.service.DefaultTransportServiceDescriptor@16b4de4 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToRssFeed{this=1c08732, name='null', ignoreBadInput=false, returnClass=SimpleDataType{type=com.sun.syndication.feed.synd.SyndFeed, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Document, mimeType='*/*'}, SimpleDataType{type=org.xml.sax.InputSource, mimeType='*/*'}, SimpleDataType{type=java.io.File, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: JsonToObject{this=efc7f1, name='_JsonToJsonData', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.module.json.JsonData, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.io.Reader, mimeType='*/*'}, SimpleDataType{type=java.net.URL, mimeType='*/*'}, SimpleDataType{type=java.io.File, mimeType='*/*'}, SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.endpoint.RegistryBackedAnnotationsParserFactory@11d7bd5 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MuleContextExpressionEvaluator@1987b05 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.config.XPathAnnotationParser@629ceb [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.el.XMLExpressionLanguageExtension@1d4a708 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.util.XMLStreamCloser@12d5cf3 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.EndpointInfoExpressionEvaluator@f73fe2 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.RegistryExpressionEvaluator@aa6e7e [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: {} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToString{this=fa3ce4, name='ObjectToHtmlString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='text/html'}, sourceTypes=[SimpleDataType{type=java.lang.Object, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.transport.service.DefaultTransportServiceDescriptor@d5a66a [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: StringToNumber{this=ebd747, name='StringToShort', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.Short, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: XmlToDomDocument{this=1847a91, name='XmlToW3CDocument', ignoreBadInput=false, returnClass=SimpleDataType{type=org.w3c.dom.Document, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=javax.xml.transform.Source, mimeType='*/*'}, SimpleDataType{type=org.xml.sax.InputSource, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Node, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Element, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, SimpleDataType{type=javax.xml.stream.XMLStreamReader, mimeType='*/*'}, SimpleDataType{type=org.mule.module.xml.transformer.DelayedResult, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: DefaultOutboundEndpoint{endpointUri=vm://greeter, connector=VMConnector { name=connector.VM.mule.default lifecycle=dispose this=1351a4 numberOfConcurrentTransactedReceivers=4 createMultipleTransactedReceivers=true connected=false supportedProtocols=[vm] serviceOverrides=<none> } , name='endpoint.vm.greeter', mep=REQUEST_RESPONSE, properties={}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.json.transformers.JsonTransformerResolver@18af427 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.json.JsonNodeExpressionEvaluator@108bddb [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: BaseToOutputHandler{this=14906b9, name='_BaseToOutputHandler', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=org.apache.abdera.model.Base, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.WilcardExpressionEvaluator@1805c16 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.lifecycle.RegistryLifecycleManager@2ad892 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: StringToNumber{this=b4ff9a, name='StringToFloat', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.Float, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToByteArray{this=1d8a5c4, name='_ObjectToByteArray', ignoreBadInput=false, returnClass=SimpleDataType{type=[B, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.io.Serializable, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageProcessorExpressionEvaluator@3a5e80 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: JMSMessageToObject{this=d405e2, name='_JMSMessageToHashtable', ignoreBadInput=false, returnClass=SimpleDataType{type=java.util.Hashtable, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=javax.jms.Message, mimeType='*/*'}, SimpleDataType{type=javax.jms.TextMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.ObjectMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.BytesMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.MapMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.StreamMessage, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.json.config.JsonPathAnnotationParser@1870b40 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: StringToNumber {this=c44924, name='StringToDouble', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.Double, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.apache.abdera.parser.stax.FOMFactory@15458df [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.ExceptionTypeExpressionEvaluator@1f32798 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: StringToNumber {this=171a8f6, name='StringToBigDecimal', ignoreBadInput=false, returnClass=SimpleDataType{type=java.math.BigDecimal, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}]} [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.parsers.OutboundHeadersAnnotationParser@1282373 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.ognl.config.OgnlAnnotationParser@4177e3 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageHeadersExpressionEvaluator@508204 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.transformer.jaxb.JAXBContextResolver@8eb36a [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.StringExpressionEvaluator@7fd415 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.FunctionExpressionEvaluator@e696f9 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.json.JsonExpressionEvaluator@1299648 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.registry.LifecycleStateInjectorProcessor@4d9531 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.VariableExpressionEnricher@134accc [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: JMSMessageToObject { this=68333e, name='_JMSMessageToByteArray', ignoreBadInput=false, returnClass=SimpleDataType{type=[B, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=javax.jms.Message, mimeType='*/*'}, SimpleDataType{type=javax.jms.TextMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.ObjectMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.BytesMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.MapMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.StreamMessage, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: XmlToDomDocument { this=16d0dd3, name='XmlToDom4jDocument', ignoreBadInput=false, returnClass=SimpleDataType{type=org.dom4j.Document, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=javax.xml.transform.Source, mimeType='*/*'}, SimpleDataType{type=org.xml.sax.InputSource, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Node, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Element, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, SimpleDataType{type=javax.xml.stream.XMLStreamReader, mimeType='*/*'}, SimpleDataType{type=org.mule.module.xml.transformer.DelayedResult, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.expression.XPathNodeExpressionEvaluator@147b1c8 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.parsers.PayloadAnnotationParser@c184cd [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageAttachmentExpressionEvaluator@1cadfde [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: JsonToObject { this=2d6636, name='_JsonToDynaBean', ignoreBadInput=false, returnClass=SimpleDataType{type=org.apache.commons.beanutils.DynaBean, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=java.io.Reader, mimeType='*/*'}, SimpleDataType{type=java.net.URL, mimeType='*/*'}, SimpleDataType{type=java.io.File, mimeType='*/*'}, SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.scripting.expression.GroovyExpressionEvaluator@11117d3 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.parsers.InboundAttachmentsAnnotationParser@a6aae0 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToString { this=ad8a09, name='ObjectToRssString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='application/rss+xml'}, sourceTypes=[ SimpleDataType{type=java.lang.Object, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.OutboundAttachmentsExpressionEvaluator@cd564c [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToJMSMessage { this=1a42493, name='_ObjectToMessage', ignoreBadInput=false, returnClass=SimpleDataType{type=javax.jms.Message, mimeType='*/*'}, sourceTypes=[] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.registry.MuleContextProcessor@c890f0 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: XmlToDomDocument { this=e02ea0, name='_XmlToDocumentResult', ignoreBadInput=false, returnClass=SimpleDataType{type=org.dom4j.io.DocumentResult, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=javax.xml.transform.Source, mimeType='*/*'}, SimpleDataType{type=org.xml.sax.InputSource, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Node, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Element, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, SimpleDataType{type=javax.xml.stream.XMLStreamReader, mimeType='*/*'}, SimpleDataType{type=org.mule.module.xml.transformer.DelayedResult, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageHeadersListExpressionEvaluator@6bad10 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: XmlToXMLStreamReader { this=1630366, name='_XmlToXMLStreamReader', ignoreBadInput=false, returnClass=SimpleDataType{type=javax.xml.stream.XMLStreamReader, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=javax.xml.transform.Source, mimeType='*/*'}, SimpleDataType{type=org.xml.sax.InputSource, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Node, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Element, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, SimpleDataType{type=javax.xml.stream.XMLStreamReader, mimeType='*/*'}, SimpleDataType{type=org.mule.module.xml.transformer.DelayedResult, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.expression.LookupAnnotationParser@f01f4d [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: JMSMessageToObject { this=1a7261, name='_JMSMessageToString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=javax.jms.Message, mimeType='*/*'}, SimpleDataType{type=javax.jms.TextMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.ObjectMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.BytesMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.MapMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.StreamMessage, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.expression.XPathBranchExpressionEvaluator@17b20c6 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.transport.quartz.config.ScheduleAnnotationParser@f07524 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.transformer.AnnotatedTransformerObjectProcessor@17a7bae [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.PayloadTypeExpressionEvaluator@17189ad [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.registry.ExpressionEvaluatorProcessor@b189d7 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.registry.ExpressionEnricherProcessor@1c2e94c [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageAttachmentsListExpressionEvaluator@50aec4 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.expression.XPathExpressionEvaluator@1e64c3a [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.registry.JSR250ValidatorProcessor@1f71eb7 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: DomDocumentToXml { this=672832, name='_DomDocumentToString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='text/xml'}, sourceTypes=[ SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=javax.xml.transform.Source, mimeType='*/*'}, SimpleDataType{type=org.xml.sax.InputSource, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Node, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Element, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, SimpleDataType{type=javax.xml.stream.XMLStreamReader, mimeType='*/*'}, SimpleDataType{type=org.mule.module.xml.transformer.DelayedResult, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToString { this=1db9ab7, name='ObjectToTextString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='text/plain'}, sourceTypes=[ SimpleDataType{type=java.lang.Object, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.expression.FunctionAnnotationParser@45e380 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.OutboundHeadersExpressionEvaluator@133f28b [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.ognl.expression.OgnlExpressionEvaluator@188a54 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: DataHandlerToInputStreamTransformer { this=1542b5b, name='_DataHandlerToInputStream', ignoreBadInput=false, returnClass=SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=javax.activation.DataHandler, mimeType='*/*'}] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageHeaderExpressionEnricher@c0b7f6 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.json.transformers.JsonMapperResolver@1874ef4 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.VariableExpressionEvaluator@d77506 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.expression.ExprAnnotationParser@bc71dd [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: JMSMessageToObject { this=3c447d, name='_JMSMessageToObject', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.Object, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=javax.jms.Message, mimeType='*/*'}, SimpleDataType{type=javax.jms.TextMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.ObjectMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.BytesMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.MapMessage, mimeType='*/*'}, SimpleDataType{type=javax.jms.StreamMessage, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ServletRequestToOutputHandler { this=c25ffa, name='_ServletRequestToOutputHandler', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=javax.servlet.http.HttpServletRequest, mimeType='*/*'}] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToString { this=f02b36, name='ObjectToJsonString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='application/json'}, sourceTypes=[ SimpleDataType{type=java.lang.Object, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.registry.TypeBasedTransformerResolver@1d69ffc [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.expression.MuleAnnotationParser@199832c [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: NumberToString { this=9df87d, name='NumberToString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.Number, mimeType='*/*'}] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: XmlToOutputHandler { this=e4af77, name='_XmlToOutputHandler', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=javax.xml.transform.Source, mimeType='*/*'}, SimpleDataType{type=org.xml.sax.InputSource, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Node, mimeType='*/*'}, SimpleDataType{type=org.dom4j.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Document, mimeType='*/*'}, SimpleDataType{type=org.w3c.dom.Element, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, SimpleDataType{type=javax.xml.stream.XMLStreamReader, mimeType='*/*'}, SimpleDataType{type=org.mule.module.xml.transformer.DelayedResult, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageHeaderExpressionEvaluator@7de4f1 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToOutputHandler { this=10e6f59, name='_ObjectToOutputHandler', ignoreBadInput=false, returnClass=SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'}, sourceTypes=[ SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.lang.String, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=java.io.Serializable, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.parsers.InboundHeadersAnnotationParser@f0f875 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: StringToNumber { this=b31e28, name='StringToInteger', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.Integer, mimeType='*/*'}, sourceTypes=[SimpleDataType{type=java.lang.String, mimeType='*/*'}] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.config.processors.LookupInjectionProcessor@560d91 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.expression.JXPathExpressionEvaluator@4993d4 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.expression.MessageAttachmentsExpressionEvaluator@25c793 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: org.mule.module.xml.transformer.jaxb.JAXBTransformerResolver@167e012 [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: lifecycle phase: dispose for object: ObjectToString { this=147af37, name='ObjectToXmlString', ignoreBadInput=false, returnClass=SimpleDataType{type=java.lang.String, mimeType='text/xml'}, sourceTypes=[ SimpleDataType{type=java.lang.Object, mimeType='*/*'}, SimpleDataType{type=[B, mimeType='*/*'}, SimpleDataType{type=java.io.InputStream, mimeType='*/*'}, SimpleDataType{type=org.mule.api.transport.OutputHandler, mimeType='*/*'} ] } [06-19 19:15:20] DEBUG RegistryLifecycleManager$RegistryLifecycleCallback [Thread-0]: Applying lifecycle phase: org.mule.config.spring.SpringRegistryLifecycleManager$SpringContextDisposePhase@1e64a23 for registry: SpringRegistry [06-19 19:15:20] INFO MuleApplicationContext [Thread-0]: Closing org.mule.config.spring.MuleApplicationContext@be0382: startup date [Fri Jun 19 19:15:17 CST 2015]; root of context hierarchy [06-19 19:15:20] INFO FlowConstructLifecycleManager [Thread-0]: Disposing flow: HelloWorldVm [06-19 19:15:20] INFO SedaStageLifecycleManager [Thread-0]: Disposing service: HelloWorldVm.stage1 [06-19 19:15:20] INFO ComponentLifecycleManager [Thread-0]: Disposing component: component.26247488 [06-19 19:15:20] INFO ComponentLifecycleManager [Thread-0]: Disposing component: component.26070302 [06-19 19:15:20] INFO FlowConstructLifecycleManager [Thread-0]: Disposing flow: HelloWorld [06-19 19:15:20] INFO SedaStageLifecycleManager [Thread-0]: Disposing service: HelloWorld.stage1 [06-19 19:15:20] INFO ComponentLifecycleManager [Thread-0]: Disposing component: component.30676305 [06-19 19:15:20] INFO ComponentLifecycleManager [Thread-0]: Disposing component: component.14463286 [06-19 19:15:20] INFO AbstractLifecycleManager [Thread-0]: Disposing model: _muleSystemModel [06-19 19:15:20] INFO DefaultMuleContext [Thread-0]: ********************************************************************** * Mule Context shut down normally on: 15-6-19 下午7:15 * * Server was up for: 0 days, 0 hours, 0 mins, 1.70 sec * **********************************************************************

    6 浏览器测试HelloWorld流

  • 相关阅读:
    Intersection of Two Linked Lists
    Tools:实现vmware虚拟机开机自启动
    Tools:实现ping操作带时间戳【windows+linux】
    Django:学习笔记
    Python:笔记2
    Python:笔记1_字符串处理【转载】
    Pycharm:使用笔记
    python:win下将py文件打包成exe
    python:选房抽签小工具
    RF:操作笔记
  • 原文地址:https://www.cnblogs.com/asnjudy/p/4589607.html
Copyright © 2020-2023  润新知