我的序列中有一个丰富的介体,其值以纯文本显示。我已经用log验证了该值,并确保它是文本。但是,当我在功能丰富(请参阅下文)之后进行调用时,API会以JSON的形式接收有效负载,且其密钥始终为“ test”:然后是纯文本值。
下面的API需要任何值,它只是将正文保存到文件中。当我尝试在调用状态消息type = text / plain之前设置属性时,它只是挂起,不执行调用吗?
问题:WSO2介体(wso2框架)本质上是否期望该主体为JSON或XML?不允许文本/纯文本。如果是这样,那么我必须更改我的API来处理我认为的这个问题。
如果有人可以回答这个问题,我想我会做的。因为当我使用带有相同选项的Java类介体调用相同的API时,它工作正常。
<call>
<endpoint>
<http method="POST" uri-template="http://xxxxxxx.38:8280/writefile"/>
</endpoint>
</call>
答案 0 :(得分:1)
感谢您的更新。我以前曾尝试过,当我知道该进程已挂起并且不会调用api时。这是我们所做的工作:
<payloadFactory media-type="xml">
<format>
<text xmlns="http://ws.apache.org/commons/ns/payload">$1</text>
</format>
<args>
<arg evaluator="xml" expression="get-property('fileContent')"/>
</args>
</payloadFactory>
<property name="messageType" scope="axis2" type="STRING" value="text/plain"/>
感谢大家的更新。第一次问一个问题,很高兴看到尽快得到答复。将尝试贡献我的学习并寻求帮助。
答案 1 :(得分:0)
在call
中介者之前添加它。
<property name="messageType" value="text/plain" scope="axis2"/>