wso2 服务器重新部署错误 "Faulty Carbon Applications."

wso2 server redeployment error "Faulty Carbon Applications."

每当我尝试将应用程序重新部署到 esb 时,我都会收到错误消息。我正在尝试合并来自不同 api 的 2 个响应,然后映射和操作该响应。我也在使用最新的 5.0.0 BETA 版本,包括 esb 工具和 esb。

故障原因如下

org.apache.axis2.deployment.DeploymentException: API deployment from the file : /Users/me/Downloads/wso2esb-5.0.0-BETA2/tmp/carbonapps/-1234/1468999438631movieapiApp_1.0.0.car/movieAPI_1.0.0/movieAPI-1.0.0.xml : Failed. at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy(AbstractSynapseArtifactDeployer.java:213) at org.wso2.carbon.application.deployer.synapse.SynapseAppDeployer.deployArtifacts(SynapseAppDeployer.java:131) at org.wso2.carbon.application.deployer.internal.ApplicationManager.deployCarbonApp(ApplicationManager.java:263) at org.wso2.carbon.application.deployer.CappAxis2Deployer.deploy(CappAxis2Deployer.java:72) at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807) at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144) at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377) at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254) at org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:371) at org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:59) at org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:67) at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment(CarbonDeploymentSchedulerTask.java:93) at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:138) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access1(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: org.apache.axis2.deployment.DeploymentException: API deployment from the file : /Users/me/Downloads/wso2esb-5.0.0-BETA2/tmp/carbonapps/-1234/1468999438631movieapiApp_1.0.0.car/movieAPI_1.0.0/movieAPI-1.0.0.xml : Failed. at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy(AbstractSynapseArtifactDeployer.java:201) ... 20 more Caused by: org.apache.synapse.deployers.SynapseArtifactDeploymentException: API deployment from the file : /Users/me/Downloads/wso2esb-5.0.0-BETA2/tmp/carbonapps/-1234/1468999438631movieapiApp_1.0.0.car/movieAPI_1.0.0/movieAPI-1.0.0.xml : Failed. at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.handleSynapseArtifactDeploymentError(AbstractSynapseArtifactDeployer.java:474) at org.apache.synapse.deployers.APIDeployer.deploySynapseArtifact(APIDeployer.java:71) at org.wso2.carbon.rest.api.ApiDeployer.deploySynapseArtifact(ApiDeployer.java:34) at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy(AbstractSynapseArtifactDeployer.java:194) ... 20 more Caused by: org.apache.synapse.SynapseException: Duplicate resource definition by the name: movieapi at org.apache.synapse.config.SynapseConfiguration.handleException(SynapseConfiguration.java:1627) at org.apache.synapse.config.SynapseConfiguration.addAPI(SynapseConfiguration.java:414) at org.apache.synapse.deployers.APIDeployer.deploySynapseArtifact(APIDeployer.java:59) ... 22 more

这是我的 api

<?xml version="1.0" encoding="UTF-8"?>
<api context="/movieapi" name="movieapi" xmlns="http://ws.apache.org/ns/synapse">
    <resource methods="GET" uri-template="/*">
        <inSequence>
            <property name="ROOT" scope="default">
                <root:movie xmlns:root="www.wso2esb.com"/>
            </property>
            <log level="full"/>
            <clone continueParent="true" id="movie" sequential="true">
                <target>
                    <sequence>
                        <send>
                            <endpoint>
                                <address format="rest" uri="https://api.themoviedb.org/3/movie/tt0918940?api_key=code&amp;append_to_response=casts,images%22"/>
                            </endpoint>
                        </send>
                    </sequence>
                </target>
                <target>
                    <sequence>
                        <send>
                            <endpoint>
                                <address format="rest" uri="https://www.omdbapi.com/?type=movie&amp;i=tt0918940"/>
                            </endpoint>
                        </send>
                    </sequence>
                </target>
            </clone>
        </inSequence>
        <outSequence>
            <aggregate id="movie">
                <completeCondition>
                    <messageCount max="-1" min="-1"/>
                </completeCondition>
                <onComplete enclosingElementProperty="ROOT" expression="//jsonObject" xmlns:dummy="http://org.dummy" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
                    <datamapper config="gov:datamapper/movieapiMapping.dmc" inputSchema="gov:datamapper/movieapiMapping_inputSchema.json" inputType="JSON" outputSchema="gov:datamapper/movieapiMapping_outputSchema.json" outputType="JSON"/>
                    <property name="messageType" scope="axis2" type="STRING" value="application/json"/>
                    <respond/>
                </onComplete>
            </aggregate>
        </outSequence>
        <faultSequence/>
    </resource>
</api>

这是来自终端

[2016-07-20 15:36:48,890] ERROR - DataMapperMediator DataMapper mediator : mapping configuration is null

您收到指示数据映射器配置为空的错误。所以你必须添加你在代理中给出的相关配置:

<datamapper config="gov:datamapper/movieapiMapping.dmc" inputSchema="gov:datamapper/movieapiMapping_inputSchema.json" inputType="JSON" outputSchema="gov:datamapper/movieapiMapping_outputSchema.json" outputType="JSON"/>

例如:您表示关于 gov:datamapper/movieapiMapping.dmc

这应该在治理中可用registry.Please将相关配置部署到 ESB。

您在终端中得到的错误DataMapperMediator DataMapper mediator : mapping configuration is null是因为没有部署相关的注册表资源(更准确地说,配置.dmc 文件)。部署 capp 时,请确保还包括所有注册表资源。还有当capp部署失败的时候,能不能去管理控制台看看有没有问题services/APIs?

打开 CompositeApplication 中的 pom.xml 文件。 在设计模式中编辑它。 在依赖项下,您可以看到可以包含的工件。 勾选相关注册表工件附近的复选框。保存 pom 文件。 现在将应用程序重新部署到服务器或重新生成您的汽车文件