当我编译 Mule 项目并将其部署到 mule-standalone-4.5.0 时,出现以下错误:
org.mule.runtime.api.exception.MuleRuntimeException:神器 bridge-1.0.0-mule-application 需要不同的运行时。这 工件所需的运行时是 MULE_EE,运行时是 MULE
寻找解决方案,我发现https://help.mulesoft.com/s/question/0D52T00005v4UH8SAM/error-while-deploying-domain-application-to-onpremisece-instance-the-artifact-required-runtime-is -muleee-and-the-runtime-is-mule 和https://help.mulesoft.com/s/question/0D52T00006BcCs9SAF/getting-error-the-artifact-application-requires-a- Different-runtime-the-工件所需的运行时是 muleee,并且运行时是 mule,同时在 mulestandalone 中部署 mule 应用程序4302021019-服务器
这些帖子似乎表明,如果我使用 Mule 社区版独立服务器,那么我不能使用任何 EE 组件,例如 ee:transform。这是真的吗?如果是这样,有解决方法吗?如果没有,我该如何修复我的错误?
作为参考,这是我的项目:
<http:listener-config name="listener-config-mule" basePath="/base">
<http:listener-connection host="0.0.0.0" port="8081" />
</http:listener-config>
<apikit-soap:config name="soapkit-config-bridge" wsdlLocation="bridge.wsdl" service="Calculator" port="CalculatorSoap12" />
<wsc:config name="wsc-config-bridge">
<wsc:connection soapVersion="SOAP12" wsdlLocation="api\bridge.wsdl" service="Calculator" port="CalculatorSoap12" address="http://www.dneonline.com/calculator.asmx" />
</wsc:config>
<flow name="api-main">
<http:listener config-ref="listener-config-mule" path="/app" />
<apikit-soap:router config-ref="soapkit-config-bridge">
<apikit-soap:attributes><![CDATA[#[%dw 2.0
output application/java
---
{
headers: attributes.headers,
method: attributes.method,
queryString: attributes.queryString
}]]]></apikit-soap:attributes>
</apikit-soap:router>
</flow>
<flow name="Add:\soapkit-config-bridge">
<ee:transform>
<ee:message>
<ee:set-payload><![CDATA[%dw 2.0
output application/xml
---
payload.body]]></ee:set-payload>
</ee:message>
</ee:transform>
<wsc:consume config-ref="wsc-config-bridge" operation="Add" />
<ee:transform>
<ee:message>
<ee:set-payload><![CDATA[%dw 2.0
output application/xml
---
payload.body]]></ee:set-payload>
</ee:message>
</ee:transform>
</flow>
是的,确实,如果您在 Mule 4 中使用名为 Kernal 的 Mule 社区版本,您将无法使用任何基于 EE 的命名空间和模式位置,并且如果您运行该应用程序,您将收到错误。
替代方案:
另请编辑 mule-artifact.json 以使用 Mule Runtime 作为内核,使用下面所需的产品密钥。
{
"requiredProduct":"MULE",
"minMuleVersion":"4.5.0"
}