wso2esb - XSD import from file -
we in process of putting wso2esb server in between our webservices , our customers. i'am having problems imports , includes in wsdl-files.
to make migration simple, thought we'd copy wsdl , xsd files we've got on directory on esb server (but outside of wso2esb software). in creating services in esb, refer wsdl-files using 'specify source wsdl'.
this show wsdl, not (exactly) 1 we've created. we're using 'useoriginalwsdl=true', 'modifyuserwsdlportaddress=true', 'showabsoluteschemaurl=true'.
in 1 of our wsdl we'ver got piece of code:
<xs:schema targetnamespace="http: //www.egem.nl/stuf/wsdl/zkn0201.wsdl"> <xs:import schemalocation="xsd/stuf0204.xsd" namespace="http://www.egem.nl/stuf/stuf0204"/> <xs:import schemalocation="xsd/zkn0201.msg.xsd" namespace="http://www.egem.nl/stuf/sector/zkn/0201"/> </xs:schema>
with above parameters set, shows in wsdl of service as:
<xs:schema targetnamespace="http://www.egem.nl/stuf/wsdl/zkn0201.wsdl"> <xs:import namespace="http://www.egem.nl/stuf/stuf0204" schemalocation="haem_test?xsd=xsd/stuf0204.xsd"/> <xs:import namespace="http://www.egem.nl/stuf/sector/zkn/0201" schemalocation="haem_test?xsd=xsd/zkn0201.msg.xsd"/> </xs:schema>
but when query wsdl "http:// ...../sevices/haem_test?xsd=xsd/zkn0201.msg.xsd", not return content of xsd. though xsd's presenton disk relative actual wsdl used service:
on disk:
$ ls -lr /some/path/to/my/resource .: drwx------. 2 wnproesb01 wnproesb01 4096 apr 17 23:15 xsd -rwx------. 1 wnproesb01 wnproesb01 9498 apr 16 18:31 zkn0201.wsdl ./xsd: -rwx------. 1 wnproesb01 wnproesb01 13885 apr 16 18:31 stuf0204.xsd -rwx------. 1 wnproesb01 wnproesb01 63982 apr 16 18:31 zkn0201.msg.xsd
these xsd-files may have imports or includes themselves, given relative path compared themselves.
the big question: need do, make wsdl valid, working wsdl presented wso2esb? including included/imported xsd's.
you can use registry store wsdls , refer there. far more convenient storing in file system.
http://madhukaudantha.blogspot.nl/2012/07/wso2-esb-proxy-from-registry.html
and refer on how define schema location wsdl imports correctly.
wso2 esb 4.5.0 fails create proxy service governance registry