找到了无效的内容,从元素' json:object-to-json-transformer'开始。

时间:2018-05-03 06:24:07

标签: mule mule-studio mule-component anypoint-studio mule-esb

我正在使用最新的Anypoint Studio 4

我的工作流程

    <?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
    xmlns:json="http://www.mulesoft.org/schema/mule/json" 
    xmlns:db="http://www.mulesoft.org/schema/mule/db"
    xmlns="http://www.mulesoft.org/schema/mule/core"
    xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="
http://www.mulesoft.org/schema/mule/db http://www.mulesoft.org/schema/mule/db/current/mule-db.xsd http://www.mulesoft.org/schema/mule/json 
    http://www.mulesoft.org/schema/mule/json/current/mule-json.xsd 
    http://www.mulesoft.org/schema/mule/core 
    http://www.mulesoft.org/schema/mule/core/current/mule.xsd
    http://www.mulesoft.org/schema/mule/db 
    http://www.mulesoft.org/schema/mule/db/current/mule-db.xsd
    http://www.mulesoft.org/schema/mule/ee/core 
    http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
    <db:config name="Database_Config" doc:name="Database Config" doc:id="b64daf9d-2d50-406d-8555-2669e73fdaa0" >
        <db:my-sql-connection host="localhost" port="3306" user="root" password="admin" database="company?useSSL=false" />
    </db:config>
    <flow name="ducksoupFlow" doc:id="667d651e-5778-4470-9cf8-6ce044f3c53f" >
        <scheduler doc:name="Scheduler" doc:id="737ee2ce-e3b3-4e7f-838f-18146b871299" >
            <scheduling-strategy >
                <fixed-frequency />
            </scheduling-strategy>
        </scheduler>
        <db:select doc:name="Database_Config" doc:id="25c71406-2ef2-41fb-8521-37e138f5dc1e" config-ref="Database_Config">
            <db:sql >select dob,first_name,last_name,gender, role from employees e, roles r where e.no = r.emp_no</db:sql>
        </db:select>
        <json:object-to-json-transformer doc:name="Object to JsOn" doc:id="97af6f79-004a-4a63-a5c4-aa7c08273bde" />
        <logger level="INFO" doc:name="Logger" doc:id="a730ff7b-9fb6-4c0e-979c-c9c692ec5b74" message="#[payload]"/>
    </flow>
</mule>

构建成功,部署时获取错误

  

org.xml.sax.SAXParseException; lineNumber:30; columnNumber:110; cvc-complex-type.2.4.a:从元素&#39; json:object-to-json-transformer&#39;开始发现无效内容。 &#39; {&#34; http://www.mulesoft.org/schema/mule/core&#34;:抽象消息处理器,&#34; http://www.mulesoft.org/schema/mule/core&#34;:抽象混合内容消息处理器,&#34; http://www.mulesoft.org/schema/mule/core&#34;:abstract-exception-strategy}&#39;是预期的。

某处它建议改变&#34;当前&#34;在命名空间中的版本。我也试过了。没有运气

非常感谢任何帮助

1 个答案:

答案 0 :(得分:1)

如果您使用的是Mule Runtime版本 3.x ,请确保您在pom.xml中具有以下依赖关系

<dependency>
    <groupId>org.mule.modules</groupId>
    <artifactId>mule-module-json</artifactId>
    <version>${mule.version}</version>
</dependency>

如果您使用的是Mule 4.x ,则建议使用DataWeave。

<set-payload value=#[output application/json --- payload] />

<set-payload value="#[payload]" mimeType="application/json" />