【问题标题】:Mule jdbc connector xml parsingMule jdbc连接器xml解析
【发布时间】:2011-12-23 19:49:30
【问题描述】:

我在将 JDBC 端点添加到我的 Mule 项目时遇到问题,但由于一些 XML 解析问题,我在初始化期间遇到了问题。 添加 JDBC 端点后问题就开始了。

Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content was found starting with element 'jdbc:inbound-endpoint'. One of '{
"http://www.mulesource.org/schema/mule/core/2.2":description,
"http://www.springframework.org/schema/beans":beans,
"http://www.springframework.org/schema/beans":bean,
"http://www.springframework.org/schema/context":property-placeholder,
"http://www.mulesource.org/schema/mule/core/2.2":global-property,
"http://www.mulesource.org/schema/mule/core/2.2":configuration,
"http://www.mulesource.org/schema/mule/core/2.2":notifications,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-extension,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-security-manager,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-transaction-manager,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-connector,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-global-endpoint,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-transformer,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-filter,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-model,
"http://www.mulesource.org/schema/mule/core/2.2":abstract-interceptor-stack}'
is expected.

我一直在关注这个指南http://www.mulesoft.org/documentation/display/MULE2USER/JDBC+Transport#JDBCTransport-ConfigurationReference

Mule JDBC 命名空间已添加到我的 xml 定义中。

有什么想法吗?

检查我的配置文件:

<mule
xmlns="http://www.mulesource.org/schema/mule/core/2.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jms="http://www.mulesource.org/schema/mule/jms/2.2"
xmlns:xm="http://www.mulesource.org/schema/mule/xml/2.2"
xmlns:vm="http://www.mulesource.org/schema/mule/vm/2.2"
xmlns:jdbc="http://www.mulesource.org/schema/mule/jdbc/2.2"
xmlns:file="http://www.mulesource.org/schema/mule/file/2.2"
xsi:schemaLocation="
    http://www.mulesource.org/schema/mule/jdbc/2.2 http://www.mulesource.org/schema/mule/jdbc/2.2/mule-jdbc.xsd
   http://www.mulesource.org/schema/mule/core/2.2 http://www.mulesource.org/schema/mule/core/2.2/mule.xsd
   http://www.mulesource.org/schema/mule/jms/2.2 http://www.mulesource.org/schema/mule/jms/2.2/mule-jms.xsd
   http://www.mulesource.org/schema/mule/vm/2.2 http://www.mulesource.org/schema/mule/vm/2.2/mule-vm.xsd
   http://www.mulesource.org/schema/mule/file/2.2 http://www.mulesource.org/schema/mule/file/2.2/mule-file.xsd
   http://www.mulesource.org/schema/mule/xml/2.2 http://www.mulesource.org/schema/mule/xml/2.2/mule-xml.xsd">

<!-- Endpoints -->

<jdbc:inbound-endpoint
    name="jdbcKapitalCommandIn"
    connector-ref="jdbcConnector"
    queryKey="queryKapitalProcessControl"
    pollingFrequency="10000" synchronous="true">
</jdbc:inbound-endpoint>

<jdbc:outbound-endpoint
    name="jdbcKapitalCommandOut"
    connector-ref="jdbcConnector"
    queryKey="updateKapitalProcessControl"
    synchronous="true">
</jdbc:outbound-endpoint>   

<file:endpoint
    name="kapitalErrorBackup"
    path="${APPS_HOME}/lbo-esb/files/kapital/error"
    outputPattern="#[DATE:yyyy-MM-dd_HH-mm-ss]_error.txt">
</file:endpoint>
<file:endpoint
    name="kapitalInputBackup"
    path="${APPS_HOME}/lbo-esb/files/kapital/backup"
    outputPattern="#[DATE:yyyy-MM-dd_HH-mm-ss]_kapital-command.xml">
</file:endpoint>
<file:endpoint
    name="kapitalInvalidSchemaBackup"
    path="${APPS_HOME}/lbo-esb/files/kapital/error"
    outputPattern="#[DATE:yyyy-MM-dd_HH-mm-ss]_inv_schema.xml">
</file:endpoint>

<!-- Kapital -->
<vm:endpoint
    name="kapitalTransactionInput"
    path="kapital.transaction.input">
</vm:endpoint>
<vm:endpoint
    name="kapitalError"
    path="kapital.error.input">
</vm:endpoint>


<model
    name="KapitalServices">

    <default-service-exception-strategy>
        <outbound-endpoint
            ref="kapitalError">
        </outbound-endpoint>
    </default-service-exception-strategy>   
    <service
        name="kapitalService">
        <inbound>
            <inbound-endpoint
                ref="jdbcKapitalCommandIn">
            </inbound-endpoint>             
        </inbound>
        <echo-component />
    <!-- more stuff from here -->
    </service>
</model>

<!-- more stuff from here -->
</mule>

【问题讨论】:

    标签: jdbc esb mule endpoint connector


    【解决方案1】:

    由于您没有显示您的配置,因此很难为您提供帮助。

    从异常中,我的印象是这个问题与 JDBC 无关。您似乎尝试在只能声明全局端点(不是入站,不是出站)的地方定义一个入站端点。全局端点被声明在服务之外,在服务内部/出站。

    如果我的诊断有误,请分享您的配置。

    【讨论】:

    • 我是对的 :) 您在服务之外有入站端点和出站端点,即只允许使用端点。比较您的 JDBC(错误)和 File/WM(正确)全局端点...
    • 太酷了。我已经在我的服务路由器上添加了我的端点声明
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-26
    • 1970-01-01
    • 2019-10-01
    • 2016-06-07
    • 2017-08-23
    • 2013-07-06
    • 1970-01-01
    相关资源
    最近更新 更多