无法使用wmMediator将multipart / form-data发布到端点

时间:2017-10-09 08:22:25

标签: mediator webmethods

我遇到Mediator(9.7 with Fix 11)包的问题,​​我想知道你是否遇到过同样的问题,或者你是否有一些想法要纠正或绕过它?

问题是:我有一个类似REST REST的请求,实际上是一个multipart / form-data页面。当我通过Mediator调用它(使用Centrasite虚拟化)时,多部分有效负载将以xml格式转换。端点无法正确响应该格式。

为什么调解员会进行这种转变?我们如何防止它?

在Mediator输入中,我们有:

Content-Type: multipart/form-data; boundary=----    WebKitFormBoundaryiBMdnONIEM1rPnWp\r\n
------WebKitFormBoundaryiBMdnONIEM1rPnWp
Content-Disposition: form-data; name="typeEnvoi"
99
------WebKitFormBoundaryiBMdnONIEM1rPnWp
Content-Disposition: form-data; name="prenom"
hhhh
------WebKitFormBoundaryiBMdnONIEM1rPnWp
Content-Disposition: form-data; name="fileVisualExam1";     filename="Mezer_Stamp.png"
Content-Type: image/png
?PNG

终点接收:

Content-Type: application/xml; charset=UTF-8
<?xml version='1.0' encoding='UTF-8'?><tns:POST_AppMobile
 xmlns:tns="http://namespaces.compagny.com/wsdl">    
<typeEnvoi>99</typeEnvoi>     
<fileVisualExam1>iVBORw0KGgoAAAANSUhEUgAAAF4AAABZCAYAAAC315PWAAAAAXNSR0IArs
4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAARZSURBVHja7NAJAQAwEAIg+5
[...] Wp70lgEAafIxtwjUN/HS1B12VkNYiYm0i9wcjG1+yo+S9ZjauIsIDRm5RobKkeQoQ2fYxx9DUmU5S9Kx
T8QwYfynJcRoSFgt6mVKqxBdehf4bx9B7G0A+Y6r6ra9R1VdvI=</fileVisualExam1>    
<prenom>hhhh</prenom></tns:POST_AppMobile>

我通过修改mediator的content-types.xml配置文件(为该mime添加multipart或binary)做了一些尝试,但没有成功。

1 个答案:

答案 0 :(得分:1)

请安装最新的Mediator 9.7修复程序(当前修复18)。自Fix 15起,以下问题已得到解决:

$manager = $this->getObjectManager();
$sessionObject = $session->get($workflowSessionName);
$manager->merge($sessionObject);
$manager->flush();

这可以解决您的问题。