我将资源从不同的Mule项目迁移到一个Mule域项目(所有其他Mule项目都应使用该项目)。除了mongodb的配置之外,其他所有东西都可以正常工作。如果我启动所有内容,并且域开始初始化,则会出现以下错误:

org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'http://www.mulesoft.org/schema/mule/mongo/current/mule-mongo.xsd'


请参阅相应的mule-domain-config.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<mule-domain
    xmlns="http://www.mulesoft.org/schema/mule/domain"
    xmlns:mule="http://www.mulesoft.org/schema/mule/core"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:spring="http://www.springframework.org/schema/beans"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
    xmlns:mongo="http://www.mulesoft.org/schema/mule/mongo"
    xmlns:http="http://www.mulesoft.org/schema/mule/http"
    xsi:schemaLocation="
           http://www.mulesoft.org/schema/mule/domain http://www.mulesoft.org/schema/mule/domain/current/mule-domain.xsd
           http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
           http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
           http://www.mulesoft.org/schema/mule/mongo http://www.mulesoft.org/schema/mule/mongo/current/mule-mongo.xsd
           http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd">

    <!-- configure here resource to be shared within the domain -->

    <context:property-placeholder location="${mule.env}.properties "/>

    <mongo:config name="mongoconfig" host="${mongo.host}" port="${mongo.port}" database="${mongo.database}"   doc:name="Mongo DB" connectTimeout="5000" connectionsPerHost="1" autoConnectRetry="true" threadsAllowedToBlockForConnectionMultiplier="50" username="${mongo.username}">
        <mongo:connection-pooling-profile maxActive="150" initialisationPolicy="INITIALISE_ONE" exhaustedAction="WHEN_EXHAUSTED_GROW" maxIdle="50" ></mongo:connection-pooling-profile>
        <mule:reconnect frequency="1000"></mule:reconnect>
    </mongo:config>

    <http:listener-config name="HTTP_Listener_Configuration" host="${http.host}" port="${http.port}" doc:name="HTTP Listener Configuration"/>

</mule-domain>


我的第一个想法是,我需要将mule-module-mongo依赖项添加到pom.xml中。但这并没有改变任何东西。

在Mule Projects中,使用相同的架构声明进行相同的配置就可以了。我在这里想念什么吗?

最佳答案

问题在于,Mongo不支持作为共享资源,因此您无法在域级别定义它的配置。

您可以找到有关here支持哪些连接器的更多信息。

高温超导

关于java - org.xml.sax.SAXParseException:无法在mule-domain-config中读取架构文档mule-mongo.xsd,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36134702/

10-12 18:21