DefV-soap4r 1.5.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (443) hide show
  1. data/bin/wsdl2ruby.rb +137 -0
  2. data/bin/xsd2ruby.rb +90 -0
  3. data/lib/soap/attachment.rb +108 -0
  4. data/lib/soap/attrproxy.rb +34 -0
  5. data/lib/soap/baseData.rb +1094 -0
  6. data/lib/soap/element.rb +277 -0
  7. data/lib/soap/encodingstyle/aspDotNetHandler.rb +207 -0
  8. data/lib/soap/encodingstyle/handler.rb +120 -0
  9. data/lib/soap/encodingstyle/literalHandler.rb +195 -0
  10. data/lib/soap/encodingstyle/soapHandler.rb +559 -0
  11. data/lib/soap/filter.rb +13 -0
  12. data/lib/soap/filter/filterchain.rb +51 -0
  13. data/lib/soap/filter/handler.rb +31 -0
  14. data/lib/soap/filter/streamhandler.rb +29 -0
  15. data/lib/soap/generator.rb +299 -0
  16. data/lib/soap/header/handler.rb +61 -0
  17. data/lib/soap/header/handlerset.rb +70 -0
  18. data/lib/soap/header/mappinghandler.rb +47 -0
  19. data/lib/soap/header/simplehandler.rb +44 -0
  20. data/lib/soap/httpconfigloader.rb +139 -0
  21. data/lib/soap/mapping.rb +12 -0
  22. data/lib/soap/mapping/encodedregistry.rb +537 -0
  23. data/lib/soap/mapping/factory.rb +388 -0
  24. data/lib/soap/mapping/literalregistry.rb +391 -0
  25. data/lib/soap/mapping/mapping.rb +577 -0
  26. data/lib/soap/mapping/registry.rb +295 -0
  27. data/lib/soap/mapping/rubytypeFactory.rb +446 -0
  28. data/lib/soap/mapping/schemadefinition.rb +170 -0
  29. data/lib/soap/mapping/typeMap.rb +106 -0
  30. data/lib/soap/mapping/wsdlencodedregistry.rb +211 -0
  31. data/lib/soap/mapping/wsdlliteralregistry.rb +248 -0
  32. data/lib/soap/marshal.rb +59 -0
  33. data/lib/soap/mimemessage.rb +241 -0
  34. data/lib/soap/nestedexception.rb +42 -0
  35. data/lib/soap/netHttpClient.rb +241 -0
  36. data/lib/soap/ns.rb +34 -0
  37. data/lib/soap/parser.rb +252 -0
  38. data/lib/soap/processor.rb +66 -0
  39. data/lib/soap/property.rb +333 -0
  40. data/lib/soap/proxy.rb +14 -0
  41. data/lib/soap/rpc/cgistub.rb +247 -0
  42. data/lib/soap/rpc/driver.rb +221 -0
  43. data/lib/soap/rpc/element.rb +374 -0
  44. data/lib/soap/rpc/element.rb.orig +374 -0
  45. data/lib/soap/rpc/httpserver.rb +142 -0
  46. data/lib/soap/rpc/methodDef.rb +68 -0
  47. data/lib/soap/rpc/proxy.rb +572 -0
  48. data/lib/soap/rpc/router.rb +662 -0
  49. data/lib/soap/rpc/rpc.rb +25 -0
  50. data/lib/soap/rpc/soaplet.rb +200 -0
  51. data/lib/soap/rpc/standaloneServer.rb +43 -0
  52. data/lib/soap/soap.rb +151 -0
  53. data/lib/soap/streamHandler.rb +301 -0
  54. data/lib/soap/wsdlDriver.rb +164 -0
  55. data/lib/wsdl/binding.rb +65 -0
  56. data/lib/wsdl/data.rb +64 -0
  57. data/lib/wsdl/definitions.rb +236 -0
  58. data/lib/wsdl/documentation.rb +32 -0
  59. data/lib/wsdl/import.rb +80 -0
  60. data/lib/wsdl/importer.rb +38 -0
  61. data/lib/wsdl/info.rb +50 -0
  62. data/lib/wsdl/message.rb +54 -0
  63. data/lib/wsdl/operation.rb +151 -0
  64. data/lib/wsdl/operationBinding.rb +240 -0
  65. data/lib/wsdl/param.rb +93 -0
  66. data/lib/wsdl/parser.rb +164 -0
  67. data/lib/wsdl/part.rb +52 -0
  68. data/lib/wsdl/port.rb +66 -0
  69. data/lib/wsdl/portType.rb +75 -0
  70. data/lib/wsdl/service.rb +61 -0
  71. data/lib/wsdl/soap/address.rb +40 -0
  72. data/lib/wsdl/soap/binding.rb +49 -0
  73. data/lib/wsdl/soap/body.rb +58 -0
  74. data/lib/wsdl/soap/cgiStubCreator.rb +92 -0
  75. data/lib/wsdl/soap/classDefCreator.rb +433 -0
  76. data/lib/wsdl/soap/classDefCreatorSupport.rb +240 -0
  77. data/lib/wsdl/soap/classNameCreator.rb +54 -0
  78. data/lib/wsdl/soap/clientSkeltonCreator.rb +104 -0
  79. data/lib/wsdl/soap/complexType.rb +173 -0
  80. data/lib/wsdl/soap/data.rb +42 -0
  81. data/lib/wsdl/soap/definitions.rb +200 -0
  82. data/lib/wsdl/soap/driverCreator.rb +118 -0
  83. data/lib/wsdl/soap/element.rb +33 -0
  84. data/lib/wsdl/soap/encodedMappingRegistryCreator.rb +73 -0
  85. data/lib/wsdl/soap/fault.rb +56 -0
  86. data/lib/wsdl/soap/header.rb +86 -0
  87. data/lib/wsdl/soap/headerfault.rb +56 -0
  88. data/lib/wsdl/soap/literalMappingRegistryCreator.rb +115 -0
  89. data/lib/wsdl/soap/mappingRegistryCreator.rb +58 -0
  90. data/lib/wsdl/soap/mappingRegistryCreatorSupport.rb +376 -0
  91. data/lib/wsdl/soap/methodDefCreator.rb +199 -0
  92. data/lib/wsdl/soap/operation.rb +112 -0
  93. data/lib/wsdl/soap/servantSkeltonCreator.rb +89 -0
  94. data/lib/wsdl/soap/servletStubCreator.rb +104 -0
  95. data/lib/wsdl/soap/standaloneServerStubCreator.rb +100 -0
  96. data/lib/wsdl/soap/wsdl2ruby.rb +217 -0
  97. data/lib/wsdl/types.rb +44 -0
  98. data/lib/wsdl/wsdl.rb +24 -0
  99. data/lib/wsdl/xmlSchema/all.rb +24 -0
  100. data/lib/wsdl/xmlSchema/annotation.rb +34 -0
  101. data/lib/wsdl/xmlSchema/any.rb +61 -0
  102. data/lib/wsdl/xmlSchema/anyAttribute.rb +48 -0
  103. data/lib/wsdl/xmlSchema/attribute.rb +104 -0
  104. data/lib/wsdl/xmlSchema/attributeGroup.rb +68 -0
  105. data/lib/wsdl/xmlSchema/choice.rb +58 -0
  106. data/lib/wsdl/xmlSchema/complexContent.rb +97 -0
  107. data/lib/wsdl/xmlSchema/complexExtension.rb +119 -0
  108. data/lib/wsdl/xmlSchema/complexRestriction.rb +104 -0
  109. data/lib/wsdl/xmlSchema/complexType.rb +193 -0
  110. data/lib/wsdl/xmlSchema/content.rb +95 -0
  111. data/lib/wsdl/xmlSchema/data.rb +116 -0
  112. data/lib/wsdl/xmlSchema/element.rb +153 -0
  113. data/lib/wsdl/xmlSchema/enumeration.rb +36 -0
  114. data/lib/wsdl/xmlSchema/fractiondigits.rb +37 -0
  115. data/lib/wsdl/xmlSchema/group.rb +100 -0
  116. data/lib/wsdl/xmlSchema/import.rb +53 -0
  117. data/lib/wsdl/xmlSchema/importHandler.rb +45 -0
  118. data/lib/wsdl/xmlSchema/importer.rb +102 -0
  119. data/lib/wsdl/xmlSchema/include.rb +48 -0
  120. data/lib/wsdl/xmlSchema/length.rb +37 -0
  121. data/lib/wsdl/xmlSchema/list.rb +48 -0
  122. data/lib/wsdl/xmlSchema/maxexclusive.rb +37 -0
  123. data/lib/wsdl/xmlSchema/maxinclusive.rb +37 -0
  124. data/lib/wsdl/xmlSchema/maxlength.rb +37 -0
  125. data/lib/wsdl/xmlSchema/minexclusive.rb +37 -0
  126. data/lib/wsdl/xmlSchema/mininclusive.rb +37 -0
  127. data/lib/wsdl/xmlSchema/minlength.rb +37 -0
  128. data/lib/wsdl/xmlSchema/parser.rb +167 -0
  129. data/lib/wsdl/xmlSchema/pattern.rb +36 -0
  130. data/lib/wsdl/xmlSchema/ref.rb +33 -0
  131. data/lib/wsdl/xmlSchema/schema.rb +178 -0
  132. data/lib/wsdl/xmlSchema/sequence.rb +54 -0
  133. data/lib/wsdl/xmlSchema/simpleContent.rb +69 -0
  134. data/lib/wsdl/xmlSchema/simpleExtension.rb +62 -0
  135. data/lib/wsdl/xmlSchema/simpleRestriction.rb +132 -0
  136. data/lib/wsdl/xmlSchema/simpleType.rb +87 -0
  137. data/lib/wsdl/xmlSchema/totaldigits.rb +37 -0
  138. data/lib/wsdl/xmlSchema/union.rb +35 -0
  139. data/lib/wsdl/xmlSchema/unique.rb +34 -0
  140. data/lib/wsdl/xmlSchema/whitespace.rb +37 -0
  141. data/lib/wsdl/xmlSchema/xsd2ruby.rb +174 -0
  142. data/lib/xsd/charset.rb +188 -0
  143. data/lib/xsd/codegen.rb +12 -0
  144. data/lib/xsd/codegen/classdef.rb +208 -0
  145. data/lib/xsd/codegen/commentdef.rb +34 -0
  146. data/lib/xsd/codegen/gensupport.rb +273 -0
  147. data/lib/xsd/codegen/methoddef.rb +70 -0
  148. data/lib/xsd/codegen/moduledef.rb +208 -0
  149. data/lib/xsd/datatypes.rb +1466 -0
  150. data/lib/xsd/datatypes1999.rb +20 -0
  151. data/lib/xsd/iconvcharset.rb +33 -0
  152. data/lib/xsd/mapping.rb +68 -0
  153. data/lib/xsd/namedelements.rb +132 -0
  154. data/lib/xsd/ns.rb +182 -0
  155. data/lib/xsd/qname.rb +79 -0
  156. data/lib/xsd/xmlparser.rb +76 -0
  157. data/lib/xsd/xmlparser.rb.orig +76 -0
  158. data/lib/xsd/xmlparser/libxmlparser.rb +119 -0
  159. data/lib/xsd/xmlparser/parser.rb +100 -0
  160. data/lib/xsd/xmlparser/rexmlparser.rb +58 -0
  161. data/lib/xsd/xmlparser/xmlparser.rb +50 -0
  162. data/lib/xsd/xmlparser/xmlscanner.rb +149 -0
  163. data/test/16runner.rb +68 -0
  164. data/test/interopR2/README.txt +2 -0
  165. data/test/interopR2/SOAPBuildersInterop_R2.wsdl +461 -0
  166. data/test/interopR2/SOAPBuildersInterop_R2GrB.wsdl +19 -0
  167. data/test/interopR2/base.rb +288 -0
  168. data/test/interopR2/client.NetRemoting.rb +17 -0
  169. data/test/interopR2/client.rb +1234 -0
  170. data/test/interopR2/client4S4C.rb +15 -0
  171. data/test/interopR2/client4S4C2.rb +14 -0
  172. data/test/interopR2/clientASP.NET.rb +17 -0
  173. data/test/interopR2/clientApacheAxis.rb +16 -0
  174. data/test/interopR2/clientApacheSOAP.rb +17 -0
  175. data/test/interopR2/clientBEAWebLogic.rb +17 -0
  176. data/test/interopR2/clientBase.rb +1967 -0
  177. data/test/interopR2/clientCapeConnect.rb +18 -0
  178. data/test/interopR2/clientDelphi.rb +19 -0
  179. data/test/interopR2/clientEasySoap.rb +14 -0
  180. data/test/interopR2/clientFrontier.rb +25 -0
  181. data/test/interopR2/clientGLUE.rb +32 -0
  182. data/test/interopR2/clientHP.rb +13 -0
  183. data/test/interopR2/clientJAX-RPC.rb +19 -0
  184. data/test/interopR2/clientJSOAP.rb +14 -0
  185. data/test/interopR2/clientKafkaXSLT.rb +15 -0
  186. data/test/interopR2/clientMSSOAPToolkit2.0.rb +17 -0
  187. data/test/interopR2/clientMSSOAPToolkit3.0.rb +17 -0
  188. data/test/interopR2/clientNuSOAP.rb +19 -0
  189. data/test/interopR2/clientNuWave.rb +15 -0
  190. data/test/interopR2/clientOpenLink.rb +15 -0
  191. data/test/interopR2/clientOracle.rb +15 -0
  192. data/test/interopR2/clientPEAR.rb +18 -0
  193. data/test/interopR2/clientPhalanx.rb +18 -0
  194. data/test/interopR2/clientSIMACE.rb +18 -0
  195. data/test/interopR2/clientSOAP4R.rb +18 -0
  196. data/test/interopR2/clientSOAP__Lite.rb +14 -0
  197. data/test/interopR2/clientSQLData.rb +18 -0
  198. data/test/interopR2/clientSilverStream.rb +17 -0
  199. data/test/interopR2/clientSpray2001.rb +17 -0
  200. data/test/interopR2/clientSun.rb +19 -0
  201. data/test/interopR2/clientVWOpentalkSoap.rb +19 -0
  202. data/test/interopR2/clientWASP.rb +19 -0
  203. data/test/interopR2/clientWASPC.rb +18 -0
  204. data/test/interopR2/clientWebMethods.rb +15 -0
  205. data/test/interopR2/clientWhiteMesa.rb +28 -0
  206. data/test/interopR2/clientWingfoot.rb +15 -0
  207. data/test/interopR2/clientXMLBus.rb +19 -0
  208. data/test/interopR2/clientXMLRPC-EPI.rb +17 -0
  209. data/test/interopR2/clientXSOAP.rb +14 -0
  210. data/test/interopR2/clientZSI.rb +19 -0
  211. data/test/interopR2/clienteSOAP.rb +18 -0
  212. data/test/interopR2/clientgSOAP.rb +18 -0
  213. data/test/interopR2/clientkSOAP.rb +17 -0
  214. data/test/interopR2/iSimonReg.rb +112 -0
  215. data/test/interopR2/interopResultBase.rb +114 -0
  216. data/test/interopR2/interopService.rb +247 -0
  217. data/test/interopR2/rwikiInteropService.rb +105 -0
  218. data/test/interopR2/server.cgi +270 -0
  219. data/test/interopR2/server.rb +275 -0
  220. data/test/interopR2/simonReg.rb +123 -0
  221. data/test/interopR2/test.sh +49 -0
  222. data/test/interopR4/client.rb +112 -0
  223. data/test/results +4810 -0
  224. data/test/runner.rb +7 -0
  225. data/test/sm11/classDef.rb +156 -0
  226. data/test/sm11/client.rb +542 -0
  227. data/test/sm11/driver.rb +183 -0
  228. data/test/sm11/servant.rb +1067 -0
  229. data/test/sm11/server.rb +25 -0
  230. data/test/soap/asp.net/hello.wsdl +96 -0
  231. data/test/soap/asp.net/test_aspdotnet.rb +123 -0
  232. data/test/soap/auth/htdigest +2 -0
  233. data/test/soap/auth/htpasswd +2 -0
  234. data/test/soap/auth/test_basic.rb +117 -0
  235. data/test/soap/auth/test_digest.rb +118 -0
  236. data/test/soap/calc/calc.rb +17 -0
  237. data/test/soap/calc/calc2.rb +29 -0
  238. data/test/soap/calc/server.cgi +13 -0
  239. data/test/soap/calc/server.rb +17 -0
  240. data/test/soap/calc/server2.rb +20 -0
  241. data/test/soap/calc/test_calc.rb +51 -0
  242. data/test/soap/calc/test_calc2.rb +55 -0
  243. data/test/soap/calc/test_calc_cgi.rb +71 -0
  244. data/test/soap/case/test_mapping.rb +57 -0
  245. data/test/soap/fault/test_customfault.rb +60 -0
  246. data/test/soap/fault/test_fault.rb +46 -0
  247. data/test/soap/fault/test_soaparray.rb +35 -0
  248. data/test/soap/filter/test_filter.rb +146 -0
  249. data/test/soap/header/server.cgi +119 -0
  250. data/test/soap/header/session.pstoredb +0 -0
  251. data/test/soap/header/test_authheader.rb +240 -0
  252. data/test/soap/header/test_authheader_cgi.rb +121 -0
  253. data/test/soap/header/test_simplehandler.rb +116 -0
  254. data/test/soap/helloworld/hw_s.rb +16 -0
  255. data/test/soap/helloworld/test_helloworld.rb +43 -0
  256. data/test/soap/htpasswd +2 -0
  257. data/test/soap/literalArrayMapping/amazonEc.rb +4778 -0
  258. data/test/soap/literalArrayMapping/amazonEcDriver.rb +172 -0
  259. data/test/soap/literalArrayMapping/amazonresponse.xml +100 -0
  260. data/test/soap/literalArrayMapping/test_definedarray.rb +34 -0
  261. data/test/soap/marshal/marshaltestlib.rb +494 -0
  262. data/test/soap/marshal/test_digraph.rb +56 -0
  263. data/test/soap/marshal/test_marshal.rb +26 -0
  264. data/test/soap/marshal/test_struct.rb +47 -0
  265. data/test/soap/ssl/README +1 -0
  266. data/test/soap/ssl/ca.cert +23 -0
  267. data/test/soap/ssl/client.cert +19 -0
  268. data/test/soap/ssl/client.key +15 -0
  269. data/test/soap/ssl/server.cert +19 -0
  270. data/test/soap/ssl/server.key +15 -0
  271. data/test/soap/ssl/sslsvr.rb +57 -0
  272. data/test/soap/ssl/subca.cert +21 -0
  273. data/test/soap/ssl/test_ssl.rb +235 -0
  274. data/test/soap/struct/test_struct.rb +70 -0
  275. data/test/soap/styleuse/client.rb +20 -0
  276. data/test/soap/styleuse/server.rb +86 -0
  277. data/test/soap/swa/test_file.rb +75 -0
  278. data/test/soap/test_basetype.rb +1090 -0
  279. data/test/soap/test_cookie.rb +112 -0
  280. data/test/soap/test_custom_ns.rb +105 -0
  281. data/test/soap/test_custommap.rb +110 -0
  282. data/test/soap/test_empty.rb +105 -0
  283. data/test/soap/test_envelopenamespace.rb +85 -0
  284. data/test/soap/test_extraattr.rb +54 -0
  285. data/test/soap/test_generator.rb +27 -0
  286. data/test/soap/test_httpconfigloader.rb +71 -0
  287. data/test/soap/test_mapping.rb +131 -0
  288. data/test/soap/test_nestedexception.rb +56 -0
  289. data/test/soap/test_nil.rb +57 -0
  290. data/test/soap/test_no_indent.rb +88 -0
  291. data/test/soap/test_property.rb +428 -0
  292. data/test/soap/test_response_as_xml.rb +117 -0
  293. data/test/soap/test_soapelement.rb +138 -0
  294. data/test/soap/test_streamhandler.rb +270 -0
  295. data/test/soap/test_styleuse.rb +326 -0
  296. data/test/soap/wsdlDriver/README.txt +2 -0
  297. data/test/soap/wsdlDriver/calc.wsdl +126 -0
  298. data/test/soap/wsdlDriver/document.wsdl +54 -0
  299. data/test/soap/wsdlDriver/echo_version.rb +29 -0
  300. data/test/soap/wsdlDriver/simpletype.wsdl +63 -0
  301. data/test/soap/wsdlDriver/test_calc.rb +71 -0
  302. data/test/soap/wsdlDriver/test_document.rb +71 -0
  303. data/test/soap/wsdlDriver/test_simpletype.rb +80 -0
  304. data/test/testutil.rb +54 -0
  305. data/test/wsdl/abstract/abstract.wsdl +176 -0
  306. data/test/wsdl/abstract/test_abstract.rb +159 -0
  307. data/test/wsdl/anonymous/expectedClassDef.rb +128 -0
  308. data/test/wsdl/anonymous/expectedDriver.rb +59 -0
  309. data/test/wsdl/anonymous/expectedMappingRegistry.rb +176 -0
  310. data/test/wsdl/anonymous/lp.wsdl +147 -0
  311. data/test/wsdl/anonymous/test_anonymous.rb +130 -0
  312. data/test/wsdl/any/any.wsdl +114 -0
  313. data/test/wsdl/any/expectedDriver.rb +68 -0
  314. data/test/wsdl/any/expectedEcho.rb +57 -0
  315. data/test/wsdl/any/expectedMappingRegistry.rb +63 -0
  316. data/test/wsdl/any/expectedService.rb +69 -0
  317. data/test/wsdl/any/test_any.rb +193 -0
  318. data/test/wsdl/axisArray/axisArray.wsdl +87 -0
  319. data/test/wsdl/axisArray/test_axisarray.rb +124 -0
  320. data/test/wsdl/choice/choice.wsdl +167 -0
  321. data/test/wsdl/choice/test_choice.rb +310 -0
  322. data/test/wsdl/complexcontent/complexContent.wsdl +83 -0
  323. data/test/wsdl/complexcontent/test_echo.rb +90 -0
  324. data/test/wsdl/datetime/DatetimeService.rb +44 -0
  325. data/test/wsdl/datetime/datetime.rb +0 -0
  326. data/test/wsdl/datetime/datetime.wsdl +45 -0
  327. data/test/wsdl/datetime/datetimeServant.rb +22 -0
  328. data/test/wsdl/datetime/test_datetime.rb +86 -0
  329. data/test/wsdl/document/array/double.wsdl +161 -0
  330. data/test/wsdl/document/array/test_array.rb +201 -0
  331. data/test/wsdl/document/document.wsdl +76 -0
  332. data/test/wsdl/document/number.wsdl +54 -0
  333. data/test/wsdl/document/ping_nosoapaction.wsdl +66 -0
  334. data/test/wsdl/document/test_nosoapaction.rb +102 -0
  335. data/test/wsdl/document/test_number.rb +92 -0
  336. data/test/wsdl/document/test_rpc.rb +355 -0
  337. data/test/wsdl/emptycomplextype.wsdl +31 -0
  338. data/test/wsdl/fault/fault.wsdl +79 -0
  339. data/test/wsdl/fault/multifault.wsdl +96 -0
  340. data/test/wsdl/fault/test_fault.rb +119 -0
  341. data/test/wsdl/fault/test_multifault.rb +134 -0
  342. data/test/wsdl/group/expectedClassdef.rb +58 -0
  343. data/test/wsdl/group/expectedDriver.rb +51 -0
  344. data/test/wsdl/group/expectedMappingRegistry.rb +67 -0
  345. data/test/wsdl/group/group.wsdl +88 -0
  346. data/test/wsdl/group/test_rpc.rb +145 -0
  347. data/test/wsdl/list/list.wsdl +93 -0
  348. data/test/wsdl/list/test_list.rb +124 -0
  349. data/test/wsdl/map/map.wsdl +92 -0
  350. data/test/wsdl/map/map.xml +43 -0
  351. data/test/wsdl/map/test_map.rb +99 -0
  352. data/test/wsdl/marshal/Person.rb +1 -0
  353. data/test/wsdl/marshal/person.wsdl +21 -0
  354. data/test/wsdl/marshal/person_org.rb +23 -0
  355. data/test/wsdl/marshal/test_wsdlmarshal.rb +76 -0
  356. data/test/wsdl/multiplefault.wsdl +75 -0
  357. data/test/wsdl/oneway/oneway.wsdl +36 -0
  358. data/test/wsdl/oneway/test_oneway.rb +108 -0
  359. data/test/wsdl/overload/expectedClient.rb +37 -0
  360. data/test/wsdl/overload/expectedDriver.rb +61 -0
  361. data/test/wsdl/overload/expectedServant.rb +35 -0
  362. data/test/wsdl/overload/overload.wsdl +70 -0
  363. data/test/wsdl/overload/test_overload.rb +131 -0
  364. data/test/wsdl/qualified/lp.wsdl +47 -0
  365. data/test/wsdl/qualified/lp.xsd +26 -0
  366. data/test/wsdl/qualified/np.wsdl +51 -0
  367. data/test/wsdl/qualified/test_qualified.rb +137 -0
  368. data/test/wsdl/qualified/test_unqualified.rb +138 -0
  369. data/test/wsdl/raa/RAAService.rb +125 -0
  370. data/test/wsdl/raa/README.txt +8 -0
  371. data/test/wsdl/raa/expectedClassDef.rb +100 -0
  372. data/test/wsdl/raa/expectedDriver.rb +96 -0
  373. data/test/wsdl/raa/expectedMappingRegistry.rb +121 -0
  374. data/test/wsdl/raa/raa.wsdl +264 -0
  375. data/test/wsdl/raa/test_raa.rb +126 -0
  376. data/test/wsdl/ref/expectedDriver.rb +51 -0
  377. data/test/wsdl/ref/expectedProduct.rb +243 -0
  378. data/test/wsdl/ref/product.wsdl +147 -0
  379. data/test/wsdl/ref/test_ref.rb +268 -0
  380. data/test/wsdl/rpc/rpc.wsdl +109 -0
  381. data/test/wsdl/rpc/test-rpc-lit.wsdl +371 -0
  382. data/test/wsdl/rpc/test_rpc.rb +176 -0
  383. data/test/wsdl/rpc/test_rpc_lit.rb +470 -0
  384. data/test/wsdl/simplecontent/simplecontent.wsdl +84 -0
  385. data/test/wsdl/simplecontent/test_simplecontent.rb +102 -0
  386. data/test/wsdl/simpletype/rpc/echo_version.rb +1 -0
  387. data/test/wsdl/simpletype/rpc/echo_versionDriver.rb +10 -0
  388. data/test/wsdl/simpletype/rpc/echo_versionMappingRegistry.rb +4 -0
  389. data/test/wsdl/simpletype/rpc/echo_versionServant.rb +3 -0
  390. data/test/wsdl/simpletype/rpc/echo_version_service.rb +3 -0
  391. data/test/wsdl/simpletype/rpc/echo_version_serviceClient.rb +34 -0
  392. data/test/wsdl/simpletype/rpc/expectedClient.rb +34 -0
  393. data/test/wsdl/simpletype/rpc/expectedDriver.rb +58 -0
  394. data/test/wsdl/simpletype/rpc/expectedEchoVersion.rb +36 -0
  395. data/test/wsdl/simpletype/rpc/expectedMappingRegistry.rb +57 -0
  396. data/test/wsdl/simpletype/rpc/expectedServant.rb +32 -0
  397. data/test/wsdl/simpletype/rpc/expectedService.rb +55 -0
  398. data/test/wsdl/simpletype/rpc/rpc.wsdl +98 -0
  399. data/test/wsdl/simpletype/rpc/test_rpc.rb +52 -0
  400. data/test/wsdl/simpletype/simpletype.wsdl +114 -0
  401. data/test/wsdl/simpletype/test_simpletype.rb +92 -0
  402. data/test/wsdl/soap/soapbodyparts.wsdl +103 -0
  403. data/test/wsdl/soap/test_soapbodyparts.rb +79 -0
  404. data/test/wsdl/soap/wsdl2ruby/echo_version.rb +1 -0
  405. data/test/wsdl/soap/wsdl2ruby/echo_versionDriver.rb +10 -0
  406. data/test/wsdl/soap/wsdl2ruby/echo_versionMappingRegistry.rb +4 -0
  407. data/test/wsdl/soap/wsdl2ruby/echo_versionServant.rb +3 -0
  408. data/test/wsdl/soap/wsdl2ruby/echo_version_service.cgi +3 -0
  409. data/test/wsdl/soap/wsdl2ruby/echo_version_service.rb +7 -0
  410. data/test/wsdl/soap/wsdl2ruby/echo_version_serviceClient.rb +34 -0
  411. data/test/wsdl/soap/wsdl2ruby/expectedClassdef.rb +21 -0
  412. data/test/wsdl/soap/wsdl2ruby/expectedClient.rb +34 -0
  413. data/test/wsdl/soap/wsdl2ruby/expectedDriver.rb +58 -0
  414. data/test/wsdl/soap/wsdl2ruby/expectedMappingRegistry.rb +36 -0
  415. data/test/wsdl/soap/wsdl2ruby/expectedServant.rb +32 -0
  416. data/test/wsdl/soap/wsdl2ruby/expectedService.cgi +48 -0
  417. data/test/wsdl/soap/wsdl2ruby/expectedService.rb +55 -0
  418. data/test/wsdl/soap/wsdl2ruby/rpc.wsdl +80 -0
  419. data/test/wsdl/soap/wsdl2ruby/section/expectedClassdef.rb +37 -0
  420. data/test/wsdl/soap/wsdl2ruby/section/section.xsd +31 -0
  421. data/test/wsdl/soap/wsdl2ruby/section/test_section.rb +53 -0
  422. data/test/wsdl/soap/wsdl2ruby/soapenc/soapenc.wsdl +64 -0
  423. data/test/wsdl/soap/wsdl2ruby/soapenc/test_soapenc.rb +83 -0
  424. data/test/wsdl/soap/wsdl2ruby/test_wsdl2ruby.rb +102 -0
  425. data/test/wsdl/soaptype/soaptype.wsdl +61 -0
  426. data/test/wsdl/soaptype/test_soaptype.rb +178 -0
  427. data/test/wsdl/test_emptycomplextype.rb +21 -0
  428. data/test/wsdl/test_fault.rb +50 -0
  429. data/test/wsdl/test_multiplefault.rb +41 -0
  430. data/test/xsd/codegen/test_classdef.rb +244 -0
  431. data/test/xsd/noencoding.xml +4 -0
  432. data/test/xsd/test_noencoding.rb +32 -0
  433. data/test/xsd/test_ns.rb +41 -0
  434. data/test/xsd/test_xmlschemaparser.rb +22 -0
  435. data/test/xsd/test_xsd.rb +1638 -0
  436. data/test/xsd/xmllang.xml +43 -0
  437. data/test/xsd/xmlschema.xml +12 -0
  438. data/test/xsd/xsd2ruby/expected_mysample.rb +65 -0
  439. data/test/xsd/xsd2ruby/expected_mysample_mapper.rb +11 -0
  440. data/test/xsd/xsd2ruby/expected_mysample_mapping_registry.rb +51 -0
  441. data/test/xsd/xsd2ruby/section.xsd +49 -0
  442. data/test/xsd/xsd2ruby/test_xsd2ruby.rb +90 -0
  443. metadata +568 -0
@@ -0,0 +1,126 @@
1
+ require 'test/unit'
2
+ require 'soap/wsdlDriver'
3
+ require 'wsdl/soap/wsdl2ruby'
4
+ require File.join(File.dirname(File.expand_path(__FILE__)), '..', '..', 'testutil.rb')
5
+
6
+
7
+ module WSDL
8
+ module RAA
9
+
10
+
11
+ class TestRAA < Test::Unit::TestCase
12
+ DIR = File.dirname(File.expand_path(__FILE__))
13
+
14
+ Port = 17171
15
+
16
+ def setup
17
+ setup_stub
18
+ setup_server
19
+ setup_client
20
+ end
21
+
22
+ def setup_stub
23
+ gen = WSDL::SOAP::WSDL2Ruby.new
24
+ gen.location = pathname("raa.wsdl")
25
+ gen.basedir = DIR
26
+ gen.logger.level = Logger::FATAL
27
+ gen.opt['module_path'] = self.class.to_s.sub(/::[^:]+$/, '')
28
+ gen.opt['classdef'] = nil
29
+ gen.opt['mapping_registry'] = nil
30
+ gen.opt['driver'] = nil
31
+ gen.opt['force'] = true
32
+ gen.run
33
+ TestUtil.require(DIR, 'RAADriver.rb', 'RAAMappingRegistry.rb', 'RAA.rb')
34
+ end
35
+
36
+ def setup_server
37
+ require pathname('RAAService.rb')
38
+ @server = RAABaseServicePortTypeApp.new('RAA server', nil, '0.0.0.0', Port)
39
+ @server.level = Logger::Severity::ERROR
40
+ @t = Thread.new {
41
+ Thread.current.abort_on_exception = true
42
+ @server.start
43
+ }
44
+ end
45
+
46
+ def setup_client
47
+ wsdl = File.join(DIR, 'raa.wsdl')
48
+ @raa = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
49
+ @raa.endpoint_url = "http://localhost:#{Port}/"
50
+ @raa.wiredump_dev = STDOUT if $DEBUG
51
+ @raa.mapping_registry = RAAMappingRegistry::EncodedRegistry
52
+ @raa.literal_mapping_registry = RAAMappingRegistry::LiteralRegistry
53
+ end
54
+
55
+ def teardown
56
+ teardown_server if @server
57
+ teardown_client if @client
58
+ unless $DEBUG
59
+ File.unlink(pathname('RAA.rb'))
60
+ File.unlink(pathname('RAAMappingRegistry.rb'))
61
+ File.unlink(pathname('RAADriver.rb'))
62
+ end
63
+ end
64
+
65
+ def teardown_server
66
+ @server.shutdown
67
+ @t.kill
68
+ @t.join
69
+ end
70
+
71
+ def teardown_client
72
+ @raa.reset_stream
73
+ end
74
+
75
+ def test_stubgeneration
76
+ compare("expectedClassDef.rb", "RAA.rb")
77
+ compare("expectedMappingRegistry.rb", "RAAMappingRegistry.rb")
78
+ compare("expectedDriver.rb", "RAADriver.rb")
79
+ end
80
+
81
+ def test_raa
82
+ do_test_raa(@raa)
83
+ end
84
+
85
+ def test_stub
86
+ client = RAABaseServicePortType.new("http://localhost:#{Port}/")
87
+ do_test_raa(client)
88
+ end
89
+
90
+ def do_test_raa(client)
91
+ assert_equal(["ruby", "soap4r"], client.getAllListings)
92
+ info = client.getInfoFromName("SOAP4R")
93
+ assert_equal(Info, info.class)
94
+ assert_equal(Category, info.category.class)
95
+ assert_equal(Product, info.product.class)
96
+ assert_equal(Owner, info.owner.class)
97
+ assert_equal("major", info.category.major)
98
+ assert_equal("minor", info.category.minor)
99
+ assert_equal(123, info.product.id)
100
+ assert_equal("SOAP4R", info.product.name)
101
+ assert_equal("short description", info.product.short_description)
102
+ assert_equal("version", info.product.version)
103
+ assert_equal("status", info.product.status)
104
+ assert_equal("http://example.com/homepage", info.product.homepage.to_s)
105
+ assert_equal("http://example.com/download", info.product.download.to_s)
106
+ assert_equal("license", info.product.license)
107
+ assert_equal("description", info.product.description)
108
+ assert_equal(456, info.owner.id)
109
+ assert_equal("mailto:email@example.com", info.owner.email.to_s)
110
+ assert_equal("name", info.owner.name)
111
+ assert(!info.created.nil?)
112
+ assert(!info.updated.nil?)
113
+ end
114
+
115
+ def compare(expected, actual)
116
+ TestUtil.filecompare(pathname(expected), pathname(actual))
117
+ end
118
+
119
+ def pathname(filename)
120
+ File.join(DIR, filename)
121
+ end
122
+ end
123
+
124
+
125
+ end
126
+ end
@@ -0,0 +1,51 @@
1
+ require 'product.rb'
2
+ require 'productMappingRegistry.rb'
3
+ require 'soap/rpc/driver'
4
+
5
+ module WSDL::Ref
6
+
7
+ class Ref_porttype < ::SOAP::RPC::Driver
8
+ DefaultEndpointUrl = "http://localhost:17171/"
9
+
10
+ Methods = [
11
+ [ "urn:ref:echo",
12
+ "echo",
13
+ [ [:in, "parameters", ["::SOAP::SOAPElement", "urn:ref", "Product-Bag"]],
14
+ [:out, "parameters", ["::SOAP::SOAPElement", "urn:ref", "Creator"]] ],
15
+ { :request_style => :document, :request_use => :literal,
16
+ :response_style => :document, :response_use => :literal,
17
+ :faults => {} }
18
+ ]
19
+ ]
20
+
21
+ def initialize(endpoint_url = nil)
22
+ endpoint_url ||= DefaultEndpointUrl
23
+ super(endpoint_url, nil)
24
+ self.mapping_registry = ProductMappingRegistry::EncodedRegistry
25
+ self.literal_mapping_registry = ProductMappingRegistry::LiteralRegistry
26
+ init_methods
27
+ end
28
+
29
+ private
30
+
31
+ def init_methods
32
+ Methods.each do |definitions|
33
+ opt = definitions.last
34
+ if opt[:request_style] == :document
35
+ add_document_operation(*definitions)
36
+ else
37
+ add_rpc_operation(*definitions)
38
+ qname = definitions[0]
39
+ name = definitions[2]
40
+ if qname.name != name and qname.name.capitalize == name.capitalize
41
+ ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
42
+ __send__(name, *arg)
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+
50
+
51
+ end
@@ -0,0 +1,243 @@
1
+ require 'xsd/qname'
2
+
3
+ module WSDL; module Ref
4
+
5
+
6
+ # {urn:ref}Product
7
+ # name - SOAP::SOAPString
8
+ # rating - SOAP::SOAPString
9
+ class Product
10
+ attr_accessor :name
11
+ attr_accessor :rating
12
+
13
+ def initialize(name = nil, rating = nil)
14
+ @name = name
15
+ @rating = rating
16
+ end
17
+ end
18
+
19
+ # {urn:ref}Comment
20
+ # xmlattr_msgid - SOAP::SOAPString
21
+ class Comment < ::String
22
+ AttrMsgid = XSD::QName.new(nil, "msgid")
23
+
24
+ def __xmlattr
25
+ @__xmlattr ||= {}
26
+ end
27
+
28
+ def xmlattr_msgid
29
+ __xmlattr[AttrMsgid]
30
+ end
31
+
32
+ def xmlattr_msgid=(value)
33
+ __xmlattr[AttrMsgid] = value
34
+ end
35
+
36
+ def initialize(*arg)
37
+ super
38
+ @__xmlattr = {}
39
+ end
40
+ end
41
+
42
+ # {urn:ref}_point
43
+ # xmlattr_unit - SOAP::SOAPString
44
+ class C__point < ::String
45
+ AttrUnit = XSD::QName.new(nil, "unit")
46
+
47
+ def __xmlattr
48
+ @__xmlattr ||= {}
49
+ end
50
+
51
+ def xmlattr_unit
52
+ __xmlattr[AttrUnit]
53
+ end
54
+
55
+ def xmlattr_unit=(value)
56
+ __xmlattr[AttrUnit] = value
57
+ end
58
+
59
+ def initialize(*arg)
60
+ super
61
+ @__xmlattr = {}
62
+ end
63
+ end
64
+
65
+ # {urn:ref}Document
66
+ # xmlattr_ID - SOAP::SOAPString
67
+ class Document < ::String
68
+ AttrID = XSD::QName.new(nil, "ID")
69
+
70
+ def __xmlattr
71
+ @__xmlattr ||= {}
72
+ end
73
+
74
+ def xmlattr_ID
75
+ __xmlattr[AttrID]
76
+ end
77
+
78
+ def xmlattr_ID=(value)
79
+ __xmlattr[AttrID] = value
80
+ end
81
+
82
+ def initialize(*arg)
83
+ super
84
+ @__xmlattr = {}
85
+ end
86
+ end
87
+
88
+ # {urn:ref}DerivedChoice_BaseSimpleContent
89
+ # varStringExt - SOAP::SOAPString
90
+ # varFloatExt - SOAP::SOAPFloat
91
+ # xmlattr_ID - SOAP::SOAPString
92
+ # xmlattr_attrStringExt - SOAP::SOAPString
93
+ class DerivedChoice_BaseSimpleContent < Document
94
+ AttrAttrStringExt = XSD::QName.new(nil, "attrStringExt")
95
+ AttrID = XSD::QName.new(nil, "ID")
96
+
97
+ attr_accessor :varStringExt
98
+ attr_accessor :varFloatExt
99
+
100
+ def __xmlattr
101
+ @__xmlattr ||= {}
102
+ end
103
+
104
+ def xmlattr_ID
105
+ __xmlattr[AttrID]
106
+ end
107
+
108
+ def xmlattr_ID=(value)
109
+ __xmlattr[AttrID] = value
110
+ end
111
+
112
+ def xmlattr_attrStringExt
113
+ __xmlattr[AttrAttrStringExt]
114
+ end
115
+
116
+ def xmlattr_attrStringExt=(value)
117
+ __xmlattr[AttrAttrStringExt] = value
118
+ end
119
+
120
+ def initialize(varStringExt = nil, varFloatExt = nil)
121
+ @varStringExt = varStringExt
122
+ @varFloatExt = varFloatExt
123
+ @__xmlattr = {}
124
+ end
125
+ end
126
+
127
+ # {urn:ref}Rating
128
+ class Rating < ::String
129
+ C_0 = new("0")
130
+ C_1 = new("+1")
131
+ C_1_2 = new("-1")
132
+ end
133
+
134
+ # {urn:ref}Product-Bag
135
+ # bag - WSDL::Ref::Product
136
+ # rating - SOAP::SOAPString
137
+ # comment_1 - WSDL::Ref::ProductBag::Comment_1
138
+ # comment_2 - WSDL::Ref::Comment
139
+ # m___point - WSDL::Ref::C__point
140
+ # xmlattr_version - SOAP::SOAPString
141
+ # xmlattr_yesno - SOAP::SOAPString
142
+ class ProductBag
143
+ AttrVersion = XSD::QName.new("urn:ref", "version")
144
+ AttrYesno = XSD::QName.new("urn:ref", "yesno")
145
+
146
+ # inner class for member: Comment_1
147
+ # {}Comment_1
148
+ # xmlattr_msgid - SOAP::SOAPString
149
+ class Comment_1 < ::String
150
+ AttrMsgid = XSD::QName.new(nil, "msgid")
151
+
152
+ def __xmlattr
153
+ @__xmlattr ||= {}
154
+ end
155
+
156
+ def xmlattr_msgid
157
+ __xmlattr[AttrMsgid]
158
+ end
159
+
160
+ def xmlattr_msgid=(value)
161
+ __xmlattr[AttrMsgid] = value
162
+ end
163
+
164
+ def initialize(*arg)
165
+ super
166
+ @__xmlattr = {}
167
+ end
168
+ end
169
+
170
+ attr_accessor :bag
171
+ attr_accessor :rating
172
+ attr_accessor :comment_1
173
+ attr_accessor :comment_2
174
+
175
+ def m___point
176
+ @v___point
177
+ end
178
+
179
+ def m___point=(value)
180
+ @v___point = value
181
+ end
182
+
183
+ def __xmlattr
184
+ @__xmlattr ||= {}
185
+ end
186
+
187
+ def xmlattr_version
188
+ __xmlattr[AttrVersion]
189
+ end
190
+
191
+ def xmlattr_version=(value)
192
+ __xmlattr[AttrVersion] = value
193
+ end
194
+
195
+ def xmlattr_yesno
196
+ __xmlattr[AttrYesno]
197
+ end
198
+
199
+ def xmlattr_yesno=(value)
200
+ __xmlattr[AttrYesno] = value
201
+ end
202
+
203
+ def initialize(bag = [], rating = [], comment_1 = [], comment_2 = [], v___point = nil)
204
+ @bag = bag
205
+ @rating = rating
206
+ @comment_1 = comment_1
207
+ @comment_2 = comment_2
208
+ @v___point = v___point
209
+ @__xmlattr = {}
210
+ end
211
+ end
212
+
213
+ # {urn:ref}Creator
214
+ # xmlattr_Role - SOAP::SOAPString
215
+ class Creator < ::String
216
+ AttrRole = XSD::QName.new(nil, "Role")
217
+
218
+ def __xmlattr
219
+ @__xmlattr ||= {}
220
+ end
221
+
222
+ def xmlattr_Role
223
+ __xmlattr[AttrRole]
224
+ end
225
+
226
+ def xmlattr_Role=(value)
227
+ __xmlattr[AttrRole] = value
228
+ end
229
+
230
+ def initialize(*arg)
231
+ super
232
+ @__xmlattr = {}
233
+ end
234
+ end
235
+
236
+ # {urn:ref}yesno
237
+ class Yesno < ::String
238
+ N = new("N")
239
+ Y = new("Y")
240
+ end
241
+
242
+
243
+ end; end
@@ -0,0 +1,147 @@
1
+ <?xml version="1.0"?>
2
+ <definitions name="product"
3
+ targetNamespace="urn:ref"
4
+ xmlns:tns="urn:ref"
5
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
6
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
7
+ xmlns="http://schemas.xmlsoap.org/wsdl/">
8
+ <types>
9
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
10
+ targetNamespace="urn:ref">
11
+ <simpleType name="non-empty-string">
12
+ <restriction base="xsd:string">
13
+ <minLength value="1"/>
14
+ </restriction>
15
+ </simpleType>
16
+
17
+ <complexType name="Product">
18
+ <all>
19
+ <element name="name" type="xsd:string"/>
20
+ <element ref="tns:Rating"/>
21
+ </all>
22
+ </complexType>
23
+
24
+ <complexType name="Comment">
25
+ <simpleContent>
26
+ <extension base="xsd:string">
27
+ <attribute name="msgid" type="xsd:string" use="required"/>
28
+ </extension>
29
+ </simpleContent>
30
+ </complexType>
31
+
32
+ <complexType name="_point">
33
+ <simpleContent>
34
+ <extension base="xsd:integer">
35
+ <attribute name="unit" type="xsd:string" use="required"/>
36
+ </extension>
37
+ </simpleContent>
38
+ </complexType>
39
+
40
+ <attribute name="version" type="tns:non-empty-string"/>
41
+
42
+ <attribute default="Y" name="yesno">
43
+ <simpleType>
44
+ <restriction base="xsd:string">
45
+ <enumeration value="Y"/>
46
+ <enumeration value="N"/>
47
+ </restriction>
48
+ </simpleType>
49
+ </attribute>
50
+
51
+ <element name="Rating">
52
+ <simpleType>
53
+ <restriction base="xsd:string">
54
+ <enumeration value="+1"/>
55
+ <enumeration value="0"/>
56
+ <enumeration value="-1"/>
57
+ </restriction>
58
+ </simpleType>
59
+ </element>
60
+
61
+ <element name="Product-Bag">
62
+ <complexType>
63
+ <sequence>
64
+ <element name="bag" type="tns:Product" minOccurs="0" maxOccurs="unbounded"/>
65
+ <element ref="tns:Rating" minOccurs="0" maxOccurs="unbounded"/>
66
+ <element name="Comment_1" minOccurs="0" maxOccurs="unbounded">
67
+ <complexType>
68
+ <simpleContent>
69
+ <extension base="xsd:string">
70
+ <attribute name="msgid" type="xsd:string" use="required"/>
71
+ </extension>
72
+ </simpleContent>
73
+ </complexType>
74
+ </element>
75
+ <element name="comment-2" type="tns:Comment" minOccurs="0" maxOccurs="unbounded"/>
76
+ <element name="__point" type="tns:_point" minOccurs="0" maxOccurs="1"/>
77
+ </sequence>
78
+ <attribute ref="tns:version"/>
79
+ <attribute ref="tns:yesno"/>
80
+ </complexType>
81
+ </element>
82
+
83
+ <element name="Creator">
84
+ <complexType>
85
+ <simpleContent>
86
+ <extension base="xsd:string">
87
+ <attribute name="Role" type="xsd:string" use="required"/>
88
+ </extension>
89
+ </simpleContent>
90
+ </complexType>
91
+ </element>
92
+
93
+ <complexType name="Document">
94
+ <simpleContent>
95
+ <extension base="string">
96
+ <attribute name="ID" type="xsd:string"/>
97
+ </extension>
98
+ </simpleContent>
99
+ </complexType>
100
+
101
+ <complexType name="DerivedChoice_BaseSimpleContent">
102
+ <complexContent mixed="false">
103
+ <extension base="tns:Document">
104
+ <choice>
105
+ <element name="varStringExt" type="xsd:string"/>
106
+ <element name="varFloatExt" type="xsd:float"/>
107
+ </choice>
108
+ <attribute name="attrStringExt" type="xsd:string"/>
109
+ </extension>
110
+ </complexContent>
111
+ </complexType>
112
+ </xsd:schema>
113
+ </types>
114
+
115
+ <message name="echo_in">
116
+ <part name="parameters" element="tns:Product-Bag" />
117
+ </message>
118
+ <message name="echo_out">
119
+ <part name="parameters" element="tns:Creator" />
120
+ </message>
121
+
122
+ <portType name="ref_porttype">
123
+ <operation name="echo">
124
+ <input message="tns:echo_in" />
125
+ <output message="tns:echo_out" />
126
+ </operation>
127
+ </portType>
128
+
129
+ <binding name="ref_binding" type="tns:ref_porttype">
130
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
131
+ <operation name="echo">
132
+ <soap:operation soapAction="urn:ref:echo" style="document" />
133
+ <input>
134
+ <soap:body use="literal" />
135
+ </input>
136
+ <output>
137
+ <soap:body use="literal" />
138
+ </output>
139
+ </operation>
140
+ </binding>
141
+
142
+ <service name="ref_service">
143
+ <port name="ref_service_port" binding="tns:ref_binding">
144
+ <soap:address location="http://localhost:17171/" />
145
+ </port>
146
+ </service>
147
+ </definitions>