wsdl2perl不生成类

时间:2012-01-31 13:05:38

标签: perl soap wsdl

我曾尝试为WSDL生成类(我需要复杂类型类)

--> WSDL here <--

但有很多错误:

found unrecognised attribute {http://schemas.xmlsoap.org/wsdl/}arrayType (ignored) at /usr/share/perl5/SOAP/WSDL/Base.pm line 130.
found unrecognised attribute {http://schemas.xmlsoap.org/wsdl/}arrayType (ignored) at /usr/share/perl5/SOAP/WSDL/Base.pm line 130.
found unrecognised attribute {http://schemas.xmlsoap.org/wsdl/}arrayType (ignored) at /usr/share/perl5/SOAP/WSDL/Base.pm line 130.
found unrecognised attribute {http://schemas.xmlsoap.org/wsdl/}arrayType (ignored) at /usr/share/perl5/SOAP/WSDL/Base.pm line 130.
Creating complexType class MyTypes/AddressInfoStruct.pm 
Creating complexType class MyTypes/AddressUserDataStruct.pm 
Creating complexType class MyTypes/AddressesInfoStruct.pm 
/usr/share/perl5/SOAP/WSDL/Generator/Template/XSD\complexType.tt undef error - no node  at /usr/share/perl5/SOAP/WSDL/Generator/Template/Plugin/XSD.pm line 55
    SOAP::WSDL::Generator::Template::Plugin::XSD::create_xsd_name('SOAP::WSDL::Generator::Template::Plugin::XSD=SCALAR(0xa17155c)', '') called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD/complexType/attributeSet.tt line 42
    eval {...} called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD/complexType/attributeSet.tt line 42
    eval {...} called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD/complexType/attributeSet.tt line 6
    eval {...} called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD/complexType/attributeSet.tt line 7
    Template::Document::__ANON__('Template::Context=HASH(0xa171728)') called at /usr/lib/perl5/Template/Document.pm line 151
    eval {...} called at /usr/lib/perl5/Template/Document.pm line 149
    Template::Document::process('Template::Document=HASH(0xa15ead4)', 'Template::Context=HASH(0xa171728)') called at /usr/lib/perl5/Template/Context.pm line 347
    eval {...} called at /usr/lib/perl5/Template/Context.pm line 321
    Template::Context::process('Template::Context=HASH(0xa171728)', 'complexType/attributeSet.tt', undef, 'localize me!') called at /usr/lib/perl5/Template/Context.pm line 409
    Template::Context::include('Template::Context=HASH(0xa171728)', 'complexType/attributeSet.tt') called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD/complexType/contentModel.tt line 19
    eval {...} called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD/complexType/contentModel.tt line 7
    Template::Document::__ANON__('Template::Context=HASH(0xa171728)') called at /usr/lib/perl5/Template/Document.pm line 151
    eval {...} called at /usr/lib/perl5/Template/Document.pm line 149
    Template::Document::process('Template::Document=HASH(0xa149910)', 'Template::Context=HASH(0xa171728)') called at /usr/lib/perl5/Template/Context.pm line 347
    eval {...} called at /usr/lib/perl5/Template/Context.pm line 321
    Template::Context::process('Template::Context=HASH(0xa171728)', 'complexType/contentModel.tt', undef, 'localize me!') called at /usr/lib/perl5/Template/Context.pm line 409
    Template::Context::include('Template::Context=HASH(0xa171728)', 'complexType/contentModel.tt') called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD/complexType.tt line 18
    eval {...} called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD/complexType.tt line 7
    Template::Document::__ANON__('Template::Context=HASH(0xa171728)') called at /usr/lib/perl5/Template/Document.pm line 151
    eval {...} called at /usr/lib/perl5/Template/Document.pm line 149
    Template::Document::process('Template::Document=HASH(0xa157e18)', 'Template::Context=HASH(0xa171728)') called at /usr/lib/perl5/Template/Context.pm line 347
    eval {...} called at /usr/lib/perl5/Template/Context.pm line 321
    Template::Context::process('Template::Context=HASH(0xa171728)', 'Template::Document=HASH(0xa157e18)') called at /usr/lib/perl5/Template/Service.pm line 94
    eval {...} called at /usr/lib/perl5/Template/Service.pm line 91
    Template::Service::process('Template::Service=HASH(0xa170bd4)', 'complexType.tt', 'HASH(0xa157558)') called at /usr/lib/perl5/Template.pm line 66
    Template::process('Template=HASH(0xa170da0)', 'complexType.tt', 'HASH(0xa157558)', 'MyTypes/AddressesInfoStruct.pm') called at /usr/share/perl5/SOAP/WSDL/Generator/Template.pm line 66
    SOAP::WSDL::Generator::Template::_process('SOAP::WSDL::Generator::Template::XSD=SCALAR(0x9f2a628)', 'complexType.tt', 'HASH(0x9f38434)', 'MyTypes/AddressesInfoStruct.pm') called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD.pm line 232
    SOAP::WSDL::Generator::Template::XSD::visit_XSD_ComplexType('SOAP::WSDL::Generator::Template::XSD=SCALAR(0x9f2a628)', 'SOAP::WSDL::XSD::ComplexType=SCALAR(0x9b309d0)') called at /usr/share/perl5/SOAP/WSDL/Base.pm line 62
    SOAP::WSDL::Base::_accept('SOAP::WSDL::XSD::ComplexType=SCALAR(0x9b309d0)', 'SOAP::WSDL::Generator::Template::XSD=SCALAR(0x9f2a628)') called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD.pm line 90
    SOAP::WSDL::Generator::Template::XSD::generate_typelib('SOAP::WSDL::Generator::Template::XSD=SCALAR(0x9f2a628)', undef) called at /usr/share/perl5/SOAP/WSDL/Generator/Template/XSD.pm line 76
    SOAP::WSDL::Generator::Template::XSD::generate('SOAP::WSDL::Generator::Template::XSD=SCALAR(0x9f2a628)') called at /usr/bin/wsdl2perl line 151
 at /usr/share/perl5/SOAP/WSDL/Base.pm line 62

怎么了?

1 个答案:

答案 0 :(得分:0)

基本上,SOAP :: WSDL当前无法解析WSDL,这是一个已经被记录的错误here所以我认为最好的选择是尝试使用SOAP :: Lite或创建WSDL类手动?!