如何解决有效XML消息中不允许使用元素“ xmlData”死了在C:/Perl/site/lib/SOAP/Lite.pm行1412
| 作为客户端,我有以下代码:my $soap = SOAP::Lite
-> uri(\'$uri_address\')
-> on_action( sub { join \'/\',\'$uri_address\',$_[1] } )
-> proxy(\'$url_address\');
my $method = SOAP::Data->name(\'MyMethod\')
->attr({xmlns => \'$uri_address\'});
#The parameters are held in @params
my @params = ( SOAP::Data->name(xmlData => $xml_string));
my $result = $soap
->soapversion(\'1.2\')
->call($method => @params);
i f ($result->fault)
{
print $result->faultstring;
}
else
{
print $result->result;
}
我用+trace=>all
,并在日志中得到:
SOAP::Transport::new: ()
SOAP::Serializer::new: ()
SOAP::Deserializer::new: ()
SOAP::Parser::new: ()
SOAP::Lite::new: ()
SOAP::Transport::HTTP::Client::new: ()
SOAP::Data::new: ()
SOAP::Data::new: ()
SOAP::Lite::call: ()
SOAP::Serializer::envelope: ()
SOAP::Serializer::envelope: SOAP::Data=HASH(0x35bb7f4) SOAP::Data=HASH(0x35bba94)
SOAP::Data::new: ()
SOAP::Data::new: ()
SOAP::Data::new: ()
SOAP::Data::new: ()
Element \'xmlData\' can\'t be allowed in valid XML message. Died. at C:/Perl/site/lib/SOAP/Lite.pm line 1412.
SOAP::Lite::DESTROY: ()
SOAP::Serializer::DESTROY: ()
SOAP::Data::DESTROY: ()
SOAP::Data::DESTROY: ()
SOAP::Data::DESTROY: ()
SOAP::Data::DESTROY: ()
SOAP::Data::DESTROY: ()
SOAP::Data::DESTROY: ()
SOAP::Transport::DESTROY: ()
SOAP::Transport::HTTP::Client::DESTROY: ()
SOAP::Deserializer::DESTROY: ()
SOAP::Parser::DESTROY: ()
有人有解决方案吗?
提前致谢!
解决方法
XML§2.3
以字符串\“ xml \” […]开头的名称保留用于本规范的此版本或将来版本中的标准化。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。