Hello, Now I'm using the code below:
use strict; use SOAP::Lite +trace => 'all'; my $soap = SOAP::Lite->new( proxy => 'http://192.168.1.100/Service/IndicatorsService.asmx'); $soap->default_ns('http://tempuri.org/'); $soap->on_action(sub { join '', @_ }); my $method = SOAP::Data->name('DataUpLoad') ->attr({xmlns => 'http://tempuri.org/'}); my @param = ( SOAP::Data->name('input')->value( [ SOAP::Data->name('User')->value('demo'), SOAP::Data->name('UserIP')->value('0.0.0.0'), SOAP::Data->name('NetType')->value(0), SOAP::Data->name('OS')->value('Linux'), SOAP::Data->name('Data')->value( [ SOAP::Data->name('DataUpLoadInputData')->value( [ SOAP::Data->name('INDICATORSNUMBER')->value('1010101010101210'), SOAP::Data->name('RECORDINGTIME')->value('2010-03-29 17:00:00'), SOAP::Data->name('FVALUE')->value(50), SOAP::Data->name('Valid')->value(''), SOAP::Data->name('Info')->value(''), ]), ]), ])); my $run = $soap->call($method => @param); But sorry it can't run correctly yet. The error shows: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>System.Web.Services.Protocols.SoapException: 服务器无法读取请求。 ---> System.InvalidOperationException: XML 文档(1, 381)中有错误。 ---> System.InvalidOperationException: 未识别指定的类型: name='Array',namespace='http://schemas.xmlsoap.org/soap/encoding/',位于 <input xmlns='http://tempuri.org/'>。 在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReader1.Read3_DataUpLoadInput(Boolean isNullable, Boolean checkType) 在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReader1.Read7_DataUpLoad() 在 Microsoft.Xml.Serialization.GeneratedAssembly.ArrayOfObjectSerializer.Deserialize(XmlSerializationReader reader) 在 System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events) --- 内部异常堆栈跟踪的结尾 --- 在 System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events) 在 System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle) 在 System.Web.Services.Protocols.SoapServerProtocol.ReadParameters() --- 内部异常堆栈跟踪的结尾 --- 在 System.Web.Services.Protocols.SoapServerProtocol.ReadParameters() 在 System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()</faultstring><detail /></soap:Fault></soap:Body></soap:Envelope> Any future helps? Thanks. -- Jeff Peng Email: jeffp...@netzero.net Skype: compuperson -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/