免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3275 | 回复: 9
打印 上一主题 下一主题

你好,我遇到一个新的问题,解决不了,帮忙看一下 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-06-26 11:21 |只看该作者 |倒序浏览
#!/usr/bin/perl

use SOAP::Lite+trace;
use POSIX qw(strftime);
use Time::Local;
#my $atime='20080601';
my $atime;

my $ef=localtime(time);

my $fileType="txt";

my $uris='http://10.0.18.230:8080/AllCounterService/';
my $filePath="10.0.21.26:8080:/forWK/catalina(2008-06-23).log\@'maintain'\@'maintain6789'";
my $btime=SOAP:ata->name('endtime')->type('date')->value($ef);
my $bol=SOAP:ata->name('Flag')->type('boolean')->value("true";
my $path=SOAP:ata->name('filePath')->type('string')->value($filePath);
my $txt=SOAP:ata->name('fileType')->type('string')->value("txt";

my $ret=SOAP::Lite
                -> uri('http://10.0.18.230:8080/AllCounterService/')
    -> proxy('http://10.0.18.230:8080/AllCounterService/services/AllCounterService')
    -> noticePickFile($txt,$btime,$path,$bol)
    -> result;

INFO: Fault occurred!
org.codehaus.xfire.fault.XFireFault: Parameter {http://10.0.18.230:8080/AllCounterService/}noticePickFile does not exist!
        at org.codehaus.xfire.service.binding.AbstractBinding.read(AbstractBinding.java:201)
        at org.codehaus.xfire.service.binding.DocumentBinding.readMessage(DocumentBinding.java:35)
        at org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(SoapBodyHandler.java:42)
        at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
        at org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:64)
        at org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:3
        at org.codehaus.xfire.transport.http.XFireServletController.invoke(XFireServletController.java:304)
        at org.codehaus.xfire.transport.http.XFireServletController.doService(XFireServletController.java:129)
        at org.codehaus.xfire.transport.http.XFireServlet.doPost(XFireServlet.java:116)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:12
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:595)

论坛徽章:
0
2 [报告]
发表于 2008-06-27 08:47 |只看该作者
不是说了么?

  1. org.codehaus.xfire.fault.XFireFault: Parameter {[url]http://10.0.18.230:8080/AllCounterService/[/url]}noticePickFile does not exist!
复制代码

论坛徽章:
0
3 [报告]
发表于 2008-06-27 09:11 |只看该作者

你好,我把wsdl发上去帮忙给看一下吧,谢谢

附件是我的wsdl文件帮忙看看一下,谢谢!!

1.rar

1.01 KB, 下载次数: 33

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
4 [报告]
发表于 2008-06-27 13:57 |只看该作者
-> noticePickFile($txt,$btime,$path,$bol)
没这个method....
下面是noticePickFile要传入的Object..
应该是notickPickFile($obj);
$obj是一个Object , 里面要有四个attribute...
你要看一下文档里面有关ComplexType  Object那一段..我没写过这麽复杂的...

<xsd:element name="noticePickFile">
        <xsd:complexType>
                <xsd:sequence>
                        <xsd:element maxOccurs="1" minOccurs="1" name="fileType" nillable="true" type="xsd:string"/>
                        <xsd:element maxOccurs="1" minOccurs="1" name="endTime" type="xsd:dateTime"/>
                        <xsd:element maxOccurs="1" minOccurs="1" name="filePath" nillable="true" type="xsd:string"/>
                        <xsd:element maxOccurs="1" minOccurs="1" name="Flag" nillable="true" type="xsd:boolean"/>
                </xsd:sequence>
        </xsd:complexType>
</xsd:element>

[ 本帖最后由 apile 于 2008-6-27 14:01 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2008-06-30 10:07 |只看该作者
你好:
    你让我看一下文档:你要看一下文档里面有关ComplexType  Object那一段..我没写过这麽复杂的..关于这个,看什么文档啊,我找了找wsdl
的文档,没找到相关的解释,你指的让我看什么文档啊。

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
6 [报告]
发表于 2008-06-30 10:26 |只看该作者
SOAP::Lite相关文档..不然去找一本WebServices Programming with perl...
应该有人有才对...研究看看...
SOAP::Lite里面有很多Object可以用.....其对应的文档..

论坛徽章:
0
7 [报告]
发表于 2008-06-30 10:33 |只看该作者

你好,apile

你好,apile ,能不能加我的msn啊,交流一下,我快因为这个问题,憋疯了,哎

论坛徽章:
0
8 [报告]
发表于 2008-06-30 15:05 |只看该作者

你好,apile

你好,apile :
   我没能解决perl中的DateTime这个类型,现在将endTime参数的类型改为:String类型的话,我的问题就解决了,
  
#!/usr/bin/perl

use SOAP::Lite+trace;
use POSIX qw(strftime);
use Time::Local;

my $btime=SOAP:ata->name('endtime')->type('string')->value($ef);
my $bol=SOAP:ata->name('Flag')->type('boolean')->value("true";
my $path=SOAP:ata->name('filePath')->type('string')->value($filePath);
my $txt=SOAP:ata->name('fileType')->type('string')->value("txt";



my $ret=SOAP::Lite
                -> uri('http://10.0.10.2:8080/AllCounterService/')
    -> proxy('http://10.0.10.2:8080/AllCounterService/services/AllCounterService')
    -> noticePickFile($txt,$btime,$path,$bol)
    -> result;

谢谢你,给我的建议和帮助,谢了啊!!

论坛徽章:
0
9 [报告]
发表于 2008-07-16 17:23 |只看该作者
你好,你发 code 的时候,能不能把笑脸去掉啊

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
10 [报告]
发表于 2008-07-17 11:54 |只看该作者
我用Perl写Web Service Client, 不喜欢碰到这种要传入Object的...
每次不是要求对方修正, 就是改用java写....

用SOAP::Lite应该也可以..只是没时间研究...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP