{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.MlZARAYk/b1/gsoap_2.8.104-3_armhf.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.MlZARAYk/b2/gsoap_2.8.104-3_armhf.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,7 +1,7 @@\n \n 4492e6b450670087b204e12dc6d6d4c4 5968324 debug optional gsoap-dbgsym_2.8.104-3_armhf.deb\n- a859f734f92a07e10d0d9e9b7482a5e6 12593708 doc optional gsoap-doc_2.8.104-3_all.deb\n+ a53fb92968a92d9372b4cf0b645d99b7 12593960 doc optional gsoap-doc_2.8.104-3_all.deb\n d33eff335e49aaa3e348718abd49c574 1434168 devel optional gsoap_2.8.104-3_armhf.deb\n 2dbad45e4cb22e5c53b3a1a9d9056a7f 1610328 debug optional libgsoap-2.8.104-dbgsym_2.8.104-3_armhf.deb\n d7ef1c6b98acfaa4cf89f4946ec9bec0 244636 libs optional libgsoap-2.8.104_2.8.104-3_armhf.deb\n ae5eaabf7b1f9848389b8fd7d26eb3d5 268120 libdevel optional libgsoap-dev_2.8.104-3_armhf.deb\n"}, {"source1": "gsoap-doc_2.8.104-3_all.deb", "source2": "gsoap-doc_2.8.104-3_all.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2021-03-08 13:06:23.000000 debian-binary\n -rw-r--r-- 0 0 0 46996 2021-03-08 13:06:23.000000 control.tar.xz\n--rw-r--r-- 0 0 0 12546520 2021-03-08 13:06:23.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 12546772 2021-03-08 13:06:23.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -355,15 +355,15 @@\n -rw-r--r-- 0 root (0) root (0) 5162 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/group__group__soap.js\n -rw-r--r-- 0 root (0) root (0) 133290 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/group__group__ssl.html\n -rw-r--r-- 0 root (0) root (0) 2377 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/group__group__ssl.js\n -rw-r--r-- 0 root (0) root (0) 74502 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/group__group__threads.html\n -rw-r--r-- 0 root (0) root (0) 1922 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/group__group__threads.js\n -rw-r--r-- 0 root (0) root (0) 126767 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/group__group__with.html\n -rw-r--r-- 0 root (0) root (0) 3411 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/group__group__with.js\n--rw-r--r-- 0 root (0) root (0) 1834639 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/index.html\n+-rw-r--r-- 0 root (0) root (0) 1834618 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/index.html\n -rw-r--r-- 0 root (0) root (0) 2872 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/index_8md.html\n -rw-r--r-- 0 root (0) root (0) 175457 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/jquery.js\n -rw-r--r-- 0 root (0) root (0) 3222 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/menu.js\n -rw-r--r-- 0 root (0) root (0) 5236 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/menudata.js\n -rw-r--r-- 0 root (0) root (0) 10253 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/modules.html\n -rw-r--r-- 0 root (0) root (0) 1709 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/modules.js\n -rw-r--r-- 0 root (0) root (0) 153 2021-03-08 13:06:23.000000 ./usr/share/doc/gsoap-doc/guide/html/nav_f.png\n"}, {"source1": "./usr/share/doc/gsoap-doc/guide/html/index.html", "source2": "./usr/share/doc/gsoap-doc/guide/html/index.html", "has_internal_linenos": true, "unified_diff": "@@ -56951,57715 +56951,57714 @@\n 000de760: 6c69 7374 3c2f 7370 616e 3e20 3c73 7061 list In case multi\n-000de9f0: 2d72 6566 6572 656e 6365 6420 6461 7461 -referenced data\n-000dea00: 2069 7320 7265 6365 6976 6564 2074 6861 is received tha\n-000dea10: 7420 2264 6f65 7320 6e6f 7420 6669 7420 t \"does not fit \n-000dea20: 696e 2061 2070 6f69 6e74 6572 2d62 6173 in a pointer-bas\n-000dea30: 6564 2073 7472 7563 7475 7265 222c 2074 ed structure\", t\n-000dea40: 6865 2064 6174 6120 6973 2063 6f70 6965 he data is copie\n-000dea50: 642e 2046 6f72 2065 7861 6d70 6c65 2c20 d. For example, \n-000dea60: 7468 6520 666f 6c6c 6f77 696e 6720 7477 the following tw\n-000dea70: 6f20 7374 7275 6374 7320 6172 6520 7369 o structs are si\n-000dea80: 6d69 6c61 722c 2065 7863 6570 7420 7468 milar, except th\n-000dea90: 6174 2074 6865 2066 6972 7374 2075 7365 at the first use\n-000deaa0: 7320 706f 696e 7465 722d 6261 7365 6420 s pointer-based \n-000deab0: 6d65 6d62 6572 7320 7768 696c 6520 7468 members while th\n-000deac0: 6520 6f74 6865 7220 7573 6573 206e 6f6e e other uses non\n-000dead0: 2d70 6f69 6e74 6572 2d62 6173 6564 206d -pointer-based m\n-000deae0: 656d 6265 7273 3a3c 2f70 3e0a 3c64 6976 embers: \n-000df220: 5468 6520 6465 7365 7269 616c 697a 6174 The deserializat\n-000df230: 696f 6e20 6f66 2074 6865 2063 6f6e 7465 ion of the conte\n-000df240: 6e74 2069 6e20 7468 6520 3c63 6f64 653e nt in the .... Back to table \n-000df370: 6f66 2063 6f6e 7465 6e74 733c 2f61 3e3c of contents<\n-000df380: 2f70 3e0a 3c68 333e 3c61 2063 6c61 7373 /p>. \n-000df3d0: 4120 4e55 4c4c 2070 6f69 6e74 6572 2069 A NULL pointer i\n-000df3e0: 7320 6e6f 7420 7365 7269 616c 697a 6564 s not serialized\n-000df3f0: 2c20 756e 6c65 7373 2074 6865 2070 6f69 , unless the poi\n-000df400: 6e74 6572 206d 656d 6265 7220 6f66 2061 nter member of a\n-000df410: 2073 7472 7563 7420 6f72 2063 6c61 7373 struct or class\n-000df420: 2069 7320 6465 636c 6172 6564 2069 6e20 is declared in \n-000df430: 7468 6520 696e 7465 7266 6163 6520 6865 the interface he\n-000df440: 6164 6572 2066 696c 6520 6173 206e 696c ader file as nil\n-000df450: 6c61 626c 6520 7769 7468 203c 636f 6465 lable with The t\n-000df6e0: 7970 6573 2073 6563 7469 6f6e 206f 6620 ypes section of \n-000df6f0: 6120 5753 444c 2064 6573 6372 6970 7469 a WSDL descripti\n-000df700: 6f6e 2063 6f6e 7461 696e 7320 696e 666f on contains info\n-000df710: 726d 6174 696f 6e20 6f6e 2074 6865 2022 rmation on the \"\n-000df720: 6e69 6c6c 6162 696c 6974 7922 206f 6620 nillability\" of \n-000df730: 6461 7461 2c20 7768 6963 6820 6973 2064 data, which is d\n-000df740: 6563 6c61 7265 6420 6173 203c 636f 6465 eclared as Su\n-000df830: 7070 6f73 6520 706f 696e 7465 7220 3c63 ppose pointer T\n-000dfc10: 6865 2064 6573 6572 6961 6c69 7a65 7220 he deserializer \n-000dfc20: 7265 636f 6e73 7472 7563 7473 2074 6865 reconstructs the\n-000dfc30: 2073 7472 7563 7420 3c63 6f64 653e 583c struct When the\n-000dfcb0: 2064 6573 6572 6961 6c69 7a65 7220 656e deserializer en\n-000dfcc0: 636f 756e 7465 7273 2061 6e20 584d 4c20 counters an XML \n-000dfcd0: 656c 656d 656e 7420 7468 6174 2068 6173 element that has\n-000dfce0: 2061 203c 656d 3e3c 636f 6465 3e78 7369 a &l\n-000de900: 743b 6e65 7874 2068 7265 663d 2671 756f t;next href=&quo\n-000de910: 743b 3c2f 7370 616e 3e23 3126 7175 6f74 t;#1"\n-000de920: 3b2f 2667 743b 203c 2f64 6976 3e0a 3c64 ;/> \n-000df250: 523c 2f63 6f64 653e 2064 6174 6120 7374 R
data st\n-000df260: 7275 6374 7572 6520 7468 6174 2064 6f65 ructure that doe\n-000df270: 7320 6e6f 7420 7573 6520 706f 696e 7465 s not use pointe\n-000df280: 7273 2074 6f20 696e 7465 6765 7273 2072 rs to integers r\n-000df290: 6573 756c 7473 2069 6e20 6120 636f 7079 esults in a copy\n-000df2a0: 206f 6620 6561 6368 206d 756c 7469 2d72 of each multi-r\n-000df2b0: 6566 6572 656e 6365 2069 6e74 6567 6572 eference integer\n-000df2c0: 2e20 4e6f 7465 2074 6861 7420 7468 6520 . Note that the \n-000df2d0: 7477 6f20 7374 7275 6374 7320 7265 7365 two structs rese\n-000df2e0: 6d62 6c65 2074 6865 2073 616d 6520 584d mble the same XM\n-000df2f0: 4c20 6461 7461 2074 7970 6520 6265 6361 L data type beca\n-000df300: 7573 6520 7468 6520 7472 6169 6c69 6e67 use the trailing\n-000df310: 2075 6e64 6572 7363 6f72 6520 7769 6c6c underscore will\n-000df320: 2062 6520 6967 6e6f 7265 6420 696e 2058 be ignored in X\n-000df330: 4d4c 2065 6e63 6f64 696e 6720 616e 6420 ML encoding and \n-000df340: 6465 636f 6469 6e67 2e3c 2f70 3e0a 3c70 decoding..NULL po\n-000df3b0: 696e 7465 7273 2061 6e64 206e 696c 2065 inters and nil e\n-000df3c0: 6c65 6d65 6e74 733c 2f68 333e 0a3c 703e lements
.nullptr
\n-000df470: 6f72 2069 6e20 7468 6520 756e 6c69 6b65 or in the unlike\n-000df480: 6c79 2063 6173 6520 7468 6520 706f 696e ly case the poin\n-000df490: 7465 7220 6974 7365 6c66 2069 7320 706f ter itself is po\n-000df4a0: 696e 7465 6420 746f 2062 7920 616e 6f74 inted to by anot\n-000df4b0: 6865 7220 706f 696e 7465 7220 2862 7574 her pointer (but\n-000df4c0: 2073 6565 2053 6563 7469 6f6e 203c 6120 see Section Run-time flag\n-000df500: 733c 2f61 3e20 746f 2063 6f6e 7472 6f6c s to control\n-000df510: 2074 6865 2073 6572 6961 6c69 7a61 7469 the serializati\n-000df520: 6f6e 206f 6620 4e55 4c4c 7329 2c20 666f on of NULLs), fo\n-000df530: 7220 6578 616d 706c 653a 3c2f 703e 0a3c r example:nullptr
\n-000df760: 6d65 6d62 6572 7320 7768 6572 6520 7468 members where th\n-000df770: 6520 3c63 6f64 653e 313c 2f63 6f64 653e e 1
\n-000df780: 2069 6e64 6963 6174 6573 2074 6861 7420 indicates that \n-000df790: 7468 6520 6d65 6d62 6572 2069 7320 7265 the member is re\n-000df7a0: 7175 6972 6564 2028 3c65 6d3e 3c63 6f64 quired (maxOccurs<\n-000df7e0: 2f63 6f64 653e 3c2f 656d 3e20 6172 6520 /code>
are \n-000df7f0: 3120 7365 7420 7769 7468 203c 636f 6465 1 set with 1:1
or s\n-000df810: 696d 706c 7920 3c63 6f64 653e 313c 2f63 imply 1).
\n-000df880: 703c 2f63 6f64 653e 2061 6e64 203c 636f p
and X\n-000df8c0: 636f 6465 3e20 7374 7275 6374 2069 7320 code> struct is \n-000df8d0: 7365 7269 616c 697a 6564 2077 6974 6820 serialized with \n-000df8e0: 3c63 6f64 653e 2353 4f41 505f 584d 4c5f
#SOAP_XML_\n-000df8f0: 4752 4150 483c 2f63 6f64 653e 2061 733a GRAPH
as:\n-000df900: 3c2f 703e 0a3c 6469 7620 636c 6173 733d X<\n-000dfc40: 2f63 6f64 653e 2066 726f 6d20 7468 6973 /code> from this\n-000dfc50: 2066 6f72 6d20 6f66 2058 4d4c 2c20 7468 form of XML, th\n-000dfc60: 6572 6562 7920 7072 6573 6572 7669 6e67 ereby preserving\n-000dfc70: 2074 6865 2069 6e74 6567 7269 7479 206f the integrity o\n-000dfc80: 6620 7468 6520 6461 7461 2073 7472 7563 f the data struc\n-000dfc90: 7475 7265 2073 6572 6961 6c69 7a65 642e ture serialized.\n-000dfca0: 3c2f 703e 0a3c 703e 5768 656e 2074 6865
xsi\n-000dfcf0: 3a6e 696c 3d22 7472 7565 223c 2f63 6f64 :nil=\"true\"
attribut\n-000dfd10: 6520 6275 7420 7468 6520 636f 7272 6573 e but the corres\n-000dfd20: 706f 6e64 696e 6720 432f 432b 2b20 6461 ponding C/C++ da\n-000dfd30: 7461 2069 7320 6e6f 7420 6120 706f 696e ta is not a poin\n-000dfd40: 7465 7220 6f72 2072 6566 6572 656e 6365 ter or reference\n-000dfd50: 2c20 7468 6520 6465 7365 7269 616c 697a , the deserializ\n-000dfd60: 6572 2077 696c 6c20 7465 726d 696e 6174 er will terminat\n-000dfd70: 6520 7769 7468 2061 203c 636f 6465 3e23 e with a #\n-000dfd80: 534f 4150 5f4e 554c 4c3c 2f63 6f64 653e SOAP_NULL
\n-000dfd90: 2066 6175 6c74 2077 6865 6e20 7468 6520 fault when the \n-000dfda0: 3c63 6f64 653e 2353 4f41 505f 584d 4c5f #SOAP_XML_\n-000dfdb0: 5354 5249 4354 3c2f 636f 6465 3e20 666c STRICT
fl\n-000dfdc0: 6167 2069 7320 7365 742e 3c2f 703e 0a3c ag is set.
Voi\n-000dfe50: 6420 706f 696e 7465 7273 2028 3c63 6f64 d pointers (int __\n-000dff30: 7479 7065 3c2f 636f 6465 3e20 6d65 6d62 type
memb\n-000dff40: 6572 2072 6967 6874 2062 6566 6f72 6520 er right before \n-000dff50: 7468 6520 766f 6964 2070 6f69 6e74 6572 the void pointer\n-000dff60: 206d 656d 6265 722e 2054 6865 203c 636f member. The void*
\n-000e0030: 696e 7420 5f5f 7479 7065 3c2f 636f 6465 int __type
member is set \n-000e0050: 746f 2061 203c 636f 6465 3e53 4f41 505f to a SOAP_\n-000e0060: 5459 5045 5f54 3c2f 636f 6465 3e20 7661 TYPE_T
va\n-000e0070: 6c75 652c 2077 6865 7265 203c 636f 6465 lue, where T
is the\n-000e0090: 206e 616d 6520 6f66 2061 2074 7970 652e name of a type.\n-000e00a0: 2054 6865 2073 6f61 7063 7070 3220 746f The soapcpp2 to\n-000e00b0: 6f6c 2067 656e 6572 6174 6573 2074 6865 ol generates the\n-000e00c0: 203c 636f 6465 3e53 4f41 505f 5459 5045 SOAP_TYPE\n-000e00d0: 5f54 3c2f 636f 6465 3e20 6465 6669 6e69 _T
defini\n-000e00e0: 7469 6f6e 7320 696e 203c 656d 3e3c 636f tions in T
\n-000e0200: 2e20 5661 6c75 6573 2073 6572 6961 6c69 . Values seriali\n-000e0210: 7a65 6420 696e 2058 4d4c 2077 6974 6820 zed in XML with \n-000e0220: 7468 6973 2061 7070 726f 6163 6820 616c this approach al\n-000e0230: 7761 7973 2063 6172 7279 2074 6865 203c ways carry the <\n-000e0240: 656d 3e3c 636f 6465 3e78 7369 3a74 7970 em>xsi:typ\n-000e0250: 653c 2f63 6f64 653e 3c2f 656d 3e20 6174 e
at\n-000e0260: 7472 6962 7574 6520 696e 2058 4d4c 2074 tribute in XML t\n-000e0270: 6f20 696e 6469 6361 7465 2074 6865 2074 o indicate the t\n-000e0280: 7970 6520 6f66 2063 6f6e 7465 6e74 2073 ype of content s\n-000e0290: 6572 6961 6c69 7a65 642e 3c2f 703e 0a3c erialized.
\n-000e02e0: 766f 6964 2a3c 2f63 6f64 653e 206d 656d void*
mem\n-000e02f0: 6265 7220 696e 2061 2073 7472 7563 742f ber in a struct/\n-000e0300: 636c 6173 733a 3c2f 703e 0a3c 6469 7620 class:.The \n-000e04e0: 5f5f 7479 7065 3c2f 636f 6465 3e20 696e __type
in\n-000e04f0: 7465 6765 7220 6361 6e20 6265 2073 6574 teger can be set\n-000e0500: 2074 6f20 3020 6174 2072 756e 2074 696d to 0 at run tim\n-000e0510: 6520 746f 206f 6d69 7420 7468 6520 7365 e to omit the se\n-000e0520: 7269 616c 697a 6174 696f 6e20 6f66 2074 rialization of t\n-000e0530: 6865 2076 6f69 6420 706f 696e 7465 7220 he void pointer \n-000e0540: 6d65 6d62 6572 2e3c 2f70 3e0a 3c70 3e54 member.
T\n-000e0550: 6865 2066 6f6c 6c6f 7769 6e67 2065 7861 he following exa\n-000e0560: 6d70 6c65 2069 6c6c 7573 7472 6174 6573 mple illustrates\n-000e0570: 2074 6865 2069 6e69 7469 616c 697a 6174 the initializat\n-000e0580: 696f 6e20 6f66 203c 636f 6465 3e6d 7953 ion of myS\n-000e0590: 7472 7563 743c 2f63 6f64 653e 2077 6974 truct
wit\n-000e05a0: 6820 6120 766f 6964 2070 6f69 6e74 6572 h a void pointer\n-000e05b0: 2074 6f20 616e 2069 6e74 3a3c 2f70 3e0a to an int:
The serial\n-000e0710: 697a 6564 206f 7574 7075 7420 6f66 203c ized output of <\n-000e0720: 636f 6465 3e53 3c2f 636f 6465 3e20 636f code>S co\n-000e0730: 6e74 6169 6e73 2074 6865 2069 6e74 6567 ntains the integ\n-000e0740: 6572 2069 6e20 6974 7320 3c65 6d3e 3c63 er in its
The deseria\n-000e0930: 6c69 7a65 7220 666f 7220 3c63 6f64 653e lizer for \n-000e0940: 6e73 5f5f 7265 636f 7264 3c2f 636f 6465 ns__record
will automatic\n-000e0960: 616c 6c79 2073 6574 2074 6865 203c 636f ally set the val\n-000e09e0: 3c2f 636f 6465 3e3c 2f65 6d3e 2063 6172
car\n-000e09f0: 7269 6573 2074 6865 203c 656d 3e3c 636f ries the
void*\n-000e0aa0: 3c2f 636f 6465 3e20 6d65 6d62 6572 2c20
member, \n-000e0ab0: 7468 6520 3c63 6f64 653e 766f 6964 2a3c the void*<\n-000e0ac0: 2f63 6f64 653e 2070 6f69 6e74 6572 206d /code> pointer m\n-000e0ad0: 7573 7420 6469 7265 6374 6c79 2070 6f69 ust directly poi\n-000e0ae0: 6e74 2074 6f20 7468 6520 7374 7269 6e67 nt to the string\n-000e0af0: 2076 616c 7565 2072 6174 6865 7220 7468 value rather th\n-000e0b00: 616e 2069 6e64 6972 6563 746c 7920 6173 an indirectly as\n-000e0b10: 2077 6974 6820 616c 6c20 6f74 6865 7220 with all other \n-000e0b20: 7479 7065 732e 2046 6f72 2065 7861 6d70 types. For examp\n-000e0b30: 6c65 3a3c 2f64 643e 3c2f 646c 3e0a 3c64 le:
Th\n-000e0c70: 6973 2069 7320 7468 6520 6361 7365 2066 is is the case f\n-000e0c80: 6f72 2061 6c6c 2073 7472 696e 672d 6261 or all string-ba\n-000e0c90: 7365 6420 7479 7065 732c 2069 6e63 6c75 sed types, inclu\n-000e0ca0: 6469 6e67 2074 7970 6573 2064 6566 696e ding types defin\n-000e0cb0: 6564 2077 6974 6820 3c63 6f64 653e 7479 ed with ty\n-000e0cc0: 7065 6465 6620 6368 6172 2a3c 2f63 6f64 pedef char*.
You m\n-000e0ce0: 6179 2075 7365 2061 6e20 6172 6269 7472 ay use an arbitr\n-000e0cf0: 6172 7920 7375 6666 6978 2077 6974 6820 ary suffix with \n-000e0d00: 7468 6520 3c63 6f64 653e 5f5f 7479 7065 the __type\n-000e0d10: 3c2f 636f 6465 3e20 6d65 6d62 6572 7320
members \n-000e0d20: 746f 2068 616e 646c 6520 6d75 6c74 6970 to handle multip\n-000e0d30: 6c65 2076 6f69 6420 706f 696e 7465 7273 le void pointers\n-000e0d40: 2069 6e20 7374 7275 6374 732f 636c 6173 in structs/clas\n-000e0d50: 7365 732e 2046 6f72 2065 7861 6d70 6c65 ses. For example\n-000e0d60: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 :
Because\n-000e1030: 2073 6572 7669 6365 206d 6574 686f 6420 service method \n-000e1040: 7061 7261 6d65 7465 7273 2061 7265 2073 parameters are s\n-000e1050: 746f 7265 6420 7769 7468 696e 2073 7472 tored within str\n-000e1060: 7563 7473 2c20 796f 7520 6361 6e20 7573 ucts, you can us\n-000e1070: 6520 3c63 6f64 653e 5f5f 7479 7065 3c2f e __type\n-000e1080: 636f 6465 3e20 616e 6420 3c63 6f64 653e code> and
\n-000e1090: 766f 6964 2a3c 2f63 6f64 653e 2070 6172 void*
par\n-000e10a0: 616d 6574 6572 7320 746f 2070 6173 7320 ameters to pass \n-000e10b0: 706f 6c79 6d6f 7270 6869 6320 6172 6775 polymorphic argu\n-000e10c0: 6d65 6e74 7320 7769 7468 6f75 7420 6861 ments without ha\n-000e10d0: 7669 6e67 2074 6f20 6465 6669 6e65 2061 ving to define a\n-000e10e0: 2043 2b2b 2063 6c61 7373 2068 6965 7261 C++ class hiera\n-000e10f0: 7263 6879 2028 5365 6374 696f 6e20 3c61 rchy (Section Polymorp\n-000e1130: 6869 736d 2c20 6465 7269 7665 6420 7479 hism, derived ty\n-000e1140: 7065 732c 2061 6e64 2064 796e 616d 6963 pes, and dynamic\n-000e1150: 2062 696e 6469 6e67 2069 6e20 432b 2b3c binding in C++<\n-000e1160: 2f61 3e20 292c 2070 726f 7669 6465 6420 /a> ), provided \n-000e1170: 7468 6174 203c 656d 3e3c 636f 6465 3e78 that x\n-000e1180: 7369 3a74 7970 653c 2f63 6f64 653e 3c2f si:type
\n-000e1190: 656d 3e20 6174 7472 6962 7574 6573 2061 em> attributes a\n-000e11a0: 7265 2070 7265 7365 6e74 2069 6e20 7468 re present in th\n-000e11b0: 6520 584d 4c20 656c 656d 656e 7473 2e20 e XML elements. \n-000e11c0: 466f 7220 6578 616d 706c 653a 3c2f 703e For example:
This meth\n-000e1600: 6f64 2068 6173 2061 2070 6f6c 796d 6f72 od has a polymor\n-000e1610: 7068 6963 2069 6e70 7574 2070 6172 616d phic input param\n-000e1620: 6574 6572 203c 636f 6465 3e64 6174 613c eter data<\n-000e1630: 2f63 6f64 653e 2061 6e64 2061 2070 6f6c /code> and a pol\n-000e1640: 796d 6f72 7068 6963 206f 7574 7075 7420 ymorphic output \n-000e1650: 7061 7261 6d65 7465 7220 3c63 6f64 653e parameter
\n-000e1660: 7265 7475 726e 5f3c 2f63 6f64 653e 2e20 return_
. \n-000e1670: 5468 6520 3c63 6f64 653e 5f5f 7479 7065 The __type\n-000e1680: 3c2f 636f 6465 3e20 7061 7261 6d65 7465
paramete\n-000e1690: 7273 2063 616e 2062 6520 6f6e 6520 6f66 rs can be one of\n-000e16a0: 203c 636f 6465 3e53 4f41 505f 5459 5045 SOAP_TYPE\n-000e16b0: 5f78 7364 5f5f 7374 7269 6e67 3c2f 636f _xsd__string,
SOAP_\n-000e16d0: 5459 5045 5f78 7364 5f5f 696e 743c 2f63 TYPE_xsd__int,
\n-000e1750: 2e20 5468 6520 5753 444c 2061 6e64 2058 . The WSDL and X\n-000e1760: 5344 2066 696c 6573 2070 726f 6475 6365 SD files produce\n-000e1770: 6420 6279 2074 6865 2073 6f61 7063 7070 d by the soapcpp\n-000e1780: 3220 746f 6f6c 2064 6563 6c61 7265 2074 2 tool declare t\n-000e1790: 6865 203c 636f 6465 3e76 6f69 642a 3c2f he SOAP\n-000e16f0: 5f54 5950 455f 7873 645f 5f66 6c6f 6174 _TYPE_xsd__float\n-000e1700: 3c2f 636f 6465 3e2c 203c 636f 6465 3e53
, S\n-000e1710: 4f41 505f 5459 5045 5f6e 735f 5f73 7461 OAP_TYPE_ns__sta\n-000e1720: 7475 733c 2f63 6f64 653e 2c20 6f72 203c tus
, or <\n-000e1730: 636f 6465 3e53 4f41 505f 5459 5045 5f6e code>SOAP_TYPE_n\n-000e1740: 735f 5f77 6964 6765 743c 2f63 6f64 653e s__widgetvoid*\n-000e17a0: 636f 6465 3e20 706f 6c79 6d6f 7270 6869 code> polymorphi\n-000e17b0: 6320 6d65 6d62 6572 7320 6173 203c 656d c members as
xsd:anyTy\n-000e17d0: 7065 3c2f 636f 6465 3e3c 2f65 6d3e 2065 pe
e\n-000e17e0: 6c65 6d65 6e74 732e 3c2f 703e 0a3c 703e lements.
\n-000e17f0: 546f 2064 6563 6c61 7265 2061 2077 7261 To declare a wra\n-000e1800: 7070 6572 2073 7472 7563 742f 636c 6173 pper struct/clas\n-000e1810: 7320 666f 7220 3c63 6f64 653e 766f 6964 s for void\n-000e1820: 2a3c 2f63 6f64 653e 2070 6f69 6e74 6572 *
pointer\n-000e1830: 7320 616c 6c6f 7773 2075 7320 746f 2072 s allows us to r\n-000e1840: 6575 7365 2074 6869 7320 6d65 6368 616e euse this mechan\n-000e1850: 6973 6d20 7768 656e 2077 6520 7573 6520 ism when we use \n-000e1860: 3c63 6f64 653e 5f5f 7365 6c66 3c2f 636f __self as a member \n-000e1880: 6e61 6d65 2074 6861 7420 7265 6665 7273 name that refers\n-000e1890: 2074 6f20 7468 6520 6375 7272 656e 7420 to the current \n-000e18a0: 584d 4c20 656c 656d 656e 7420 7461 6720 XML element tag \n-000e18b0: 6e61 6d65 3a3c 2f70 3e0a 3c64 6976 2063 name:
The s\n-000e1d00: 6572 6961 6c69 7a65 6420 6f75 7470 7574 erialized output\n-000e1d10: 206f 6620 3c63 6f64 653e 533c 2f63 6f64 of S contains the \n-000e1d30: 696e 7465 6765 723a 3c2f 703e 0a3c 6469 integer:
.... Back to table \n-000e1f10: 6f66 2063 6f6e 7465 6e74 733c 2f61 3e3c of contents<\n-000e1f20: 2f70 3e0a 3c68 323e 3c61 2063 6c61 7373 /p>.
Fixed siz\n-000e1f80: 6520 6172 7261 7973 2061 7265 2073 6572 e arrays are ser\n-000e1f90: 6961 6c69 7a65 6420 6173 2072 6570 6574 ialized as repet\n-000e1fa0: 6974 696f 6e73 206f 6620 3c65 6d3e 3c63 itions of
The se\n-000e2080: 7269 616c 697a 6174 696f 6e20 6f66 2066 rialization of f\n-000e2090: 6978 6564 2d73 697a 6520 6172 7261 7973 ixed-size arrays\n-000e20a0: 2073 7570 706f 7274 7320 7468 6520 534f supports the SO\n-000e20b0: 4150 2052 5043 2065 6e63 6f64 696e 6720 AP RPC encoding \n-000e20c0: 6d75 6c74 692d 6469 6d65 6e73 696f 6e61 multi-dimensiona\n-000e20d0: 6c20 6172 7261 7920 666f 726d 6174 2061 l array format a\n-000e20e0: 7320 7765 6c6c 2061 7320 7061 7274 6961 s well as partia\n-000e20f0: 6c6c 7920 7472 616e 736d 6974 7465 6420 lly transmitted \n-000e2100: 616e 6420 7370 6172 7365 2061 7272 6179 and sparse array\n-000e2110: 2066 6f72 6d61 7473 2073 7461 6e64 6172 formats standar\n-000e2120: 6469 7a65 6420 696e 2053 4f41 5020 312e dized in SOAP 1.\n-000e2130: 3120 616e 6420 312e 322e 3c2f 703e 0a3c 1 and 1.2.
.<\n-000e2140: 703e 466f 7220 6578 616d 706c 653a 3c2f p>For example:\n-000e2150: 703e 0a3c 6469 7620 636c 6173 733d 2266 p>.This speci\n-000e22b0: 6669 6573 2061 2066 6978 6564 2d73 697a fies a fixed-siz\n-000e22c0: 6520 6172 7261 7920 7061 7274 206f 6620 e array part of \n-000e22d0: 7468 6520 3c63 6f64 653e 7374 7275 6374 the struct\n-000e22e0: 2045 7861 6d70 6c65 3c2f 636f 6465 3e2e Example
.\n-000e22f0: 2054 6865 2073 6572 6961 6c69 7a65 6420 The serialized \n-000e2300: 6f75 7470 7574 206f 6620 6172 7261 7920 output of array \n-000e2310: 3c63 6f64 653e 613c 2f63 6f64 653e 2069 a
i\n-000e2320: 733a 3c2f 703e 0a3c 6469 7620 636c 6173 s:
#SOAP_IOB\n-000e2630: 3c2f 636f 6465 3e20 6572 726f 7273 2077
errors w\n-000e2640: 696c 6c20 6265 2067 656e 6572 6174 6564 ill be generated\n-000e2650: 2062 7920 7468 6520 6465 7365 7269 616c by the deserial\n-000e2660: 697a 6572 2e3c 2f70 3e0a 3c70 3ef0 9f94 izer.....\n-000e2670: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n-000e2680: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n-000e2690: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents
.\n-000e26a0: 3c68 323e 3c61 2063 6c61 7373 3d22 616eDyn\n-000e26f0: 616d 6963 2061 7272 6179 7320 6172 6520 amic arrays are \n-000e2700: 6d75 6368 206d 6f72 6520 666c 6578 6962 much more flexib\n-000e2710: 6c65 2074 6861 6e20 6669 7865 642d 7369 le than fixed-si\n-000e2720: 7a65 2061 7272 6179 732e 2044 796e 616d ze arrays. Dynam\n-000e2730: 6963 2061 7272 6179 7320 6465 636c 6172 ic arrays declar\n-000e2740: 6564 2069 6e20 7468 6520 696e 7465 7266 ed in the interf\n-000e2750: 6163 6520 6865 6164 6572 2066 696c 6520 ace header file \n-000e2760: 666f 7220 736f 6170 6370 7032 2061 7265 for soapcpp2 are\n-000e2770: 2061 2073 7065 6369 616c 2073 7472 7563 a special struc\n-000e2780: 7420 6f72 2063 6c61 7373 206f 7220 6172 t or class or ar\n-000e2790: 6520 7061 7274 206f 6620 6120 7374 7275 e part of a stru\n-000e27a0: 6374 206f 7220 636c 6173 7320 7769 7468 ct or class with\n-000e27b0: 2061 206d 656d 6265 7220 706f 696e 7469 a member pointi\n-000e27c0: 6e67 2074 6f20 616e 2061 7272 6179 206f ng to an array o\n-000e27d0: 6620 656c 656d 656e 7473 2061 6e64 2061 f elements and a\n-000e27e0: 206d 656d 6265 7220 7468 6174 2073 746f member that sto\n-000e27f0: 7265 7320 7468 6520 7369 7a65 206f 6620 res the size of \n-000e2800: 7468 6520 6172 7261 792e 2044 796e 616d the array. Dynam\n-000e2810: 6963 2061 7272 6179 2061 6c6c 6f63 6174 ic array allocat\n-000e2820: 696f 6e73 2061 7265 2065 6173 7920 7573 ions are easy us\n-000e2830: 696e 6720 7468 6520 736f 6170 6370 702d ing the soapcpp-\n-000e2840: 6765 6e65 7261 7465 6420 3c63 6f64 653e generated \n-000e2850: 736f 6170 5f6e 6577 5f54 3c2f 636f 6465 soap_new_T
functions for \n-000e2870: 7479 7065 203c 636f 6465 3e54 3c2f 636f type T. This functi\n-000e2890: 6f6e 2069 7320 7573 6564 2074 6f20 616c on is used to al\n-000e28a0: 6c6f 6361 7465 2061 6e20 6172 7261 7920 locate an array \n-000e28b0: 6f66 2076 616c 7565 7320 7768 6963 6820 of values which \n-000e28c0: 6361 6e20 7468 656e 2062 6520 6173 7369 can then be assi\n-000e28d0: 676e 6564 2074 6f20 7468 6520 706f 696e gned to the poin\n-000e28e0: 7465 7220 6d65 6d62 6572 206f 6620 7468 ter member of th\n-000e28f0: 6520 7374 7275 6374 2f63 6c61 7373 2074 e struct/class t\n-000e2900: 6861 7420 7374 6f72 6573 2074 6865 2061 hat stores the a\n-000e2910: 7272 6179 2070 6f69 6e74 6572 2077 6974 rray pointer wit\n-000e2920: 6820 6974 7320 7369 7a65 2e3c 2f70 3e0a h its size.
To facilitate\n-000e2940: 2053 4f41 5020 5250 4320 656e 636f 6469 SOAP RPC encodi\n-000e2950: 6e67 2c20 534f 4150 2d65 6e63 6f64 6564 ng, SOAP-encoded\n-000e2960: 2061 7272 6179 7320 7265 7175 6972 6520 arrays require \n-000e2970: 7370 6563 6961 6c20 7472 6561 746d 656e special treatmen\n-000e2980: 742e 2053 4f41 502d 656e 636f 6465 6420 t. SOAP-encoded \n-000e2990: 6172 7261 7973 2061 7265 2073 696e 676c arrays are singl\n-000e29a0: 652d 206f 7220 6d75 6c74 692d 6469 6d65 e- or multi-dime\n-000e29b0: 6e73 696f 6e61 6c20 6172 7261 7973 2077 nsional arrays w\n-000e29c0: 6974 6820 626f 756e 6473 2074 6861 7420 ith bounds that \n-000e29d0: 6170 7065 6172 2069 6e20 584d 4c2e 2054 appear in XML. T\n-000e29e0: 6865 7365 2061 7272 6179 7320 6d61 7920 hese arrays may \n-000e29f0: 616c 736f 2068 6176 6520 6f66 6673 6574 also have offset\n-000e2a00: 7320 7468 6174 2064 6966 6665 7220 6672 s that differ fr\n-000e2a10: 6f6d 207a 6572 6f2e 2054 6865 2069 6e74 om zero. The int\n-000e2a20: 656e 7420 6f66 2053 4f41 502d 656e 636f ent of SOAP-enco\n-000e2a30: 6465 6420 6172 7261 7973 2069 7320 746f ded arrays is to\n-000e2a40: 2072 6570 6c69 6361 7465 206d 756c 7469 replicate multi\n-000e2a50: 2d64 696d 656e 7369 6f6e 616c 2061 7272 -dimensional arr\n-000e2a60: 6179 7320 636f 6d6d 6f6e 6c79 2066 6f75 ays commonly fou\n-000e2a70: 6e64 2069 6e20 7072 6f67 7261 6d6d 696e nd in programmin\n-000e2a80: 6720 6c61 6e67 7561 6765 732e 3c2f 703e g languages.
\n-000e2a90: 0a3c 703e 486f 7765 7665 722c 2058 4d4c .However, XML\n-000e2aa0: 2061 6c73 6f20 7072 6f76 6964 6573 2061 also provides a\n-000e2ab0: 2073 696d 706c 6520 7761 7920 746f 2072 simple way to r\n-000e2ac0: 6570 7265 7365 6e74 2061 2073 6571 7565 epresent a seque\n-000e2ad0: 6e63 6520 6f66 2076 616c 7565 7320 7769 nce of values wi\n-000e2ae0: 7468 2061 2073 6571 7565 6e63 6520 6f66 th a sequence of\n-000e2af0: 2058 4d4c 2065 6c65 6d65 6e74 732e 2054 XML elements. T\n-000e2b00: 6869 7320 6469 6666 6572 7320 6672 6f6d his differs from\n-000e2b10: 2053 4f41 502d 656e 636f 6465 6420 6172 SOAP-encoded ar\n-000e2b20: 7261 7973 2069 6e20 7468 6174 2053 4f41 rays in that SOA\n-000e2b30: 502d 656e 636f 6465 6420 6172 7261 7973 P-encoded arrays\n-000e2b40: 2061 7265 2065 6c65 6d65 6e74 7320 7769 are elements wi\n-000e2b50: 7468 206e 6573 7465 6420 3c65 6d3e 3c63 th nested
Both SO\n-000e2c10: 4150 2d65 6e63 6f64 6564 2061 7272 6179 AP-encoded array\n-000e2c20: 7320 616e 6420 7365 7175 656e 6365 7320 s and sequences \n-000e2c30: 6f66 2058 4d4c 2065 6c65 6d65 6e74 7320 of XML elements \n-000e2c40: 6172 6520 7375 7070 6f72 7465 6420 696e are supported in\n-000e2c50: 2067 534f 4150 2c20 7573 696e 6720 6479 gSOAP, using dy\n-000e2c60: 6e61 6d69 6320 6172 7261 7973 2061 6e64 namic arrays and\n-000e2c70: 2063 6f6e 7461 696e 6572 732e 2054 6865 containers. The\n-000e2c80: 2062 6173 6963 7320 7769 6c6c 2062 6520 basics will be \n-000e2c90: 6465 7363 7269 6265 6420 6e65 7874 2e20 described next. \n-000e2ca0: 466f 7220 6164 6469 7469 6f6e 616c 2064 For additional d\n-000e2cb0: 6574 6169 6c73 2c20 7365 6520 7468 6520 etails, see the \n-000e2cc0: 3c61 2068 7265 663d 222e 2e2f 2e2e 2f64 C an\n-000e2cf0: 6420 432b 2b20 584d 4c20 4461 7461 2042 d C++ XML Data B\n-000e2d00: 696e 6469 6e67 733c 2f61 3e20 646f 6375 indings docu\n-000e2d10: 6d65 6e74 6174 696f 6e2e 3c2f 703e 0a3c mentation.
.<\n-000e2d20: 703e f09f 949d 203c 6120 6872 6566 3d22 p>.... Back to table\n-000e2d40: 206f 6620 636f 6e74 656e 7473 3c2f 613e of contents\n-000e2d50: 3c2f 703e 0a3c 6833 3e3c 6120 636c 6173 .SOAP-encoded \n-000e2db0: 6172 7261 7973 2075 7365 2074 6865 203c arrays use the <\n-000e2dc0: 656d 3e3c 636f 6465 3e53 4f41 502d 454e em>SOAP-EN\n-000e2dd0: 433a 4172 7261 793c 2f63 6f64 653e 3c2f C:Array
\n-000e2de0: 656d 3e20 6174 7472 6962 7574 6520 696e em> attribute in\n-000e2df0: 2058 4d4c 2074 6f20 6964 656e 7469 6679 XML to identify\n-000e2e00: 2074 6865 2061 7272 6179 2061 6e64 2074 the array and t\n-000e2e10: 6865 203c 656d 3e3c 636f 6465 3e53 4f41 he SOA\n-000e2e20: 502d 454e 433a 6172 7261 7954 7970 653c P-ENC:arrayType<\n-000e2e30: 2f63 6f64 653e 3c2f 656d 3e20 6174 7472 /code>
attr\n-000e2e40: 6962 7574 6520 746f 2069 6465 6e74 6966 ibute to identif\n-000e2e50: 7920 7468 6520 6172 7261 7920 6469 6d65 y the array dime\n-000e2e60: 6e73 696f 6e61 6c69 7479 2061 6e64 2069 nsionality and i\n-000e2e70: 7473 2073 697a 652e 3c2f 703e 0a3c 703e ts size.
\n-000e2e80: 4173 2061 2073 6563 7572 6974 7920 6d65 As a security me\n-000e2e90: 6173 7572 6520 746f 2061 766f 6964 2064 asure to avoid d\n-000e2ea0: 656e 6961 6c20 6f66 2073 6572 7669 6365 enial of service\n-000e2eb0: 2061 7474 6163 6b73 2062 6173 6564 206f attacks based o\n-000e2ec0: 6e20 7365 6e64 696e 6720 6120 6875 6765 n sending a huge\n-000e2ed0: 2061 7272 6179 2073 697a 6520 7661 6c75 array size valu\n-000e2ee0: 6520 7573 696e 6720 7468 6520 3c65 6d3e e using the \n-000e2ef0: 3c63 6f64 653e 534f 4150 2d45 4e43 3a61 SOAP-ENC:a\n-000e2f00: 7272 6179 5479 7065 3c2f 636f 6465 3e3c rrayType
<\n-000e2f10: 2f65 6d3e 2061 7474 7269 6275 7465 2c20 /em> attribute, \n-000e2f20: 7265 7175 6972 696e 6720 7468 6520 616c requiring the al\n-000e2f30: 6c6f 6361 7469 6f6e 206f 6620 6c61 7267 location of larg\n-000e2f40: 6520 6368 756e 6b73 206f 6620 6d65 6d6f e chunks of memo\n-000e2f50: 7279 2c20 7468 6520 746f 7461 6c20 6e75 ry, the total nu\n-000e2f60: 6d62 6572 206f 6620 6172 7261 7920 656c mber of array el\n-000e2f70: 656d 656e 7473 2073 6574 2062 7920 7468 ements set by th\n-000e2f80: 6520 3c65 6d3e 3c63 6f64 653e 534f 4150 e SOAP\n-000e2f90: 2d45 4e43 3a61 7272 6179 5479 7065 3c2f -ENC:arrayType\n-000e2fa0: 636f 6465 3e3c 2f65 6d3e 2061 7474 7269 code>
attri\n-000e2fb0: 6275 7465 2063 616e 6e6f 7420 6578 6365 bute cannot exce\n-000e2fc0: 6564 203c 636f 6465 3e23 534f 4150 5f4d ed #SOAP_M\n-000e2fd0: 4158 4152 5241 5953 495a 453c 2f63 6f64 AXARRAYSIZE, which is set\n-000e2ff0: 2074 6f20 3130 3030 3030 2062 7920 6465 to 100000 by de\n-000e3000: 6661 756c 742e 2054 6869 7320 6c69 6d69 fault. This limi\n-000e3010: 7420 6973 206e 6f74 2061 2068 6172 6420 t is not a hard \n-000e3020: 6c69 6d69 7420 6f6e 2074 6865 206e 756d limit on the num\n-000e3030: 6265 7220 6f66 2061 7272 6179 2065 6c65 ber of array ele\n-000e3040: 6d65 6e74 732c 2062 7574 2072 6174 6865 ments, but rathe\n-000e3050: 7220 746f 2061 766f 6964 2070 7265 2d61 r to avoid pre-a\n-000e3060: 6c6c 6f63 6174 696e 6720 6c61 7267 6520 llocating large \n-000e3070: 6172 7261 7973 2061 7320 7374 6174 6564 arrays as stated\n-000e3080: 2e20 5468 6520 6861 7264 206c 696d 6974 . The hard limit\n-000e3090: 206f 6e20 7468 6520 6e75 6d62 6572 206f on the number o\n-000e30a0: 6620 6172 7261 7920 656c 656d 656e 7473 f array elements\n-000e30b0: 2072 6563 6569 7665 6420 6973 203c 636f received is
#SOA\n-000e31b0: 505f 4d41 584f 4343 5552 533c 2f63 6f64 P_MAXOCCURS by default. B\n-000e31d0: 7920 636f 6e74 7261 7374 2c20 7468 6520 y contrast, the \n-000e31e0: 3c63 6f64 653e 2353 4f41 505f 4d41 5841
#SOAP_MAXA\n-000e31f0: 5252 4159 5349 5a45 3c2f 636f 6465 3e20 RRAYSIZE
\n-000e3200: 6c69 6d69 7420 6f6e 6c79 206e 6567 6174 limit only negat\n-000e3210: 6976 656c 7920 6166 6665 6374 7320 6d75 ively affects mu\n-000e3220: 6c74 692d 6469 6d65 6e73 696f 6e61 6c20 lti-dimensional \n-000e3230: 6172 7261 7973 2062 6563 6175 7365 2074 arrays because t\n-000e3240: 6865 2064 696d 656e 7369 6f6e 616c 6974 he dimensionalit\n-000e3250: 7920 6f66 2074 6865 2072 6563 6569 7669 y of the receivi\n-000e3260: 6e67 2061 7272 6179 206d 6179 2062 6520 ng array may be \n-000e3270: 6c6f 7374 2077 6865 6e20 7468 6520 6e75 lost when the nu\n-000e3280: 6d62 6572 206f 6620 656c 656d 656e 7473 mber of elements\n-000e3290: 2065 7863 6565 6473 2031 3030 3030 302e exceeds 100000.\n-000e32a0: 204f 6e65 2d64 696d 656e 7369 6f6e 616c One-dimensional\n-000e32b0: 2061 7272 6179 7320 6172 6520 6e6f 7420 arrays are not \n-000e32c0: 6166 6665 6374 6564 2061 6e64 2070 6f70 affected and pop\n-000e32d0: 756c 6174 6564 2061 6674 6572 2074 6869 ulated after thi\n-000e32e0: 7320 6c69 6d69 7420 6279 2073 696d 706c s limit by simpl\n-000e32f0: 7920 6465 7365 7269 616c 697a 696e 6720 y deserializing \n-000e3300: 7468 6520 6172 7261 7920 656c 656d 656e the array elemen\n-000e3310: 7473 2072 6563 6569 7665 642e 3c2f 703e ts received.
\n-000e33b0: 4120 7370 6563 6961 6c20 666f 726d 206f A special form o\n-000e33c0: 6620 7374 7275 6374 206f 7220 636c 6173 f struct or clas\n-000e33d0: 7320 6973 2075 7365 6420 746f 2064 6566 s is used to def\n-000e33e0: 696e 6520 6f6e 652d 6469 6d65 6e73 696f ine one-dimensio\n-000e33f0: 6e61 6c20 6479 6e61 6d69 6320 534f 4150 nal dynamic SOAP\n-000e3400: 2d65 6e63 6f64 6564 2061 7272 6179 7320 -encoded arrays \n-000e3410: 696e 2061 6e20 696e 7465 7266 6163 6520 in an interface \n-000e3420: 6865 6164 6572 2066 696c 6520 666f 7220 header file for \n-000e3430: 736f 6170 6370 7032 2e20 4561 6368 2061 soapcpp2. Each a\n-000e3440: 7272 6179 2068 6173 2061 2070 6f69 6e74 rray has a point\n-000e3450: 6572 2076 6172 6961 626c 6520 616e 6420 er variable and \n-000e3460: 6120 6d65 6d62 6572 2074 6861 7420 7265 a member that re\n-000e3470: 636f 7264 7320 7468 6520 6e75 6d62 6572 cords the number\n-000e3480: 206f 6620 656c 656d 656e 7473 2074 6865 of elements the\n-000e3490: 2070 6f69 6e74 6572 2070 6f69 6e74 7320 pointer points \n-000e34a0: 746f 2069 6e20 6d65 6d6f 7279 2e3c 2f70 to in memory.
.The general\n-000e34c0: 2066 6f72 6d20 6f66 2074 6865 2073 7472 form of the str\n-000e34d0: 7563 7420 6f72 2063 6c61 7373 2064 6563 uct or class dec\n-000e34e0: 6c61 7261 7469 6f6e 2074 6861 7420 636f laration that co\n-000e34f0: 6e74 6169 6e73 2061 206f 6e65 2d64 696d ntains a one-dim\n-000e3500: 656e 7369 6f6e 616c 2064 796e 616d 6963 ensional dynamic\n-000e3510: 2053 4f41 502d 656e 636f 6465 6420 6172 SOAP-encoded ar\n-000e3520: 7261 7920 6973 3a3c 2f70 3e0a 3c64 6976 ray is:
.The im\n-000e43c0: 706c 656d 656e 7461 7469 6f6e 7320 6f66 plementations of\n-000e43d0: 2074 6865 203c 636f 6465 3e56 6563 746f the Vecto\n-000e43e0: 723c 2f63 6f64 653e 206d 6574 686f 6473 r
methods\n-000e43f0: 2061 7265 3a3c 2f70 3e0a 3c64 6976 2063 are:
An exam\n-000e4810: 706c 6520 7072 6f67 7261 6d20 6672 6167 ple program frag\n-000e4820: 6d65 6e74 2074 6861 7420 7365 7269 616c ment that serial\n-000e4830: 697a 6573 2061 2076 6563 746f 7220 6f66 izes a vector of\n-000e4840: 2033 2065 6c65 6d65 6e74 733a 3c2f 703e 3 elements:
\n-000e4850: 0a3c 6469 7620 636c 6173 733d 2266 7261 .The outp\n-000e4cc0: 7574 2069 7320 6120 7061 7274 6961 6c6c ut is a partiall\n-000e4cd0: 7920 7472 616e 736d 6974 7465 6420 6172 y transmitted ar\n-000e4ce0: 7261 793a 3c2f 703e 0a3c 6469 7620 636c ray:
.Note tha\n-000e5010: 7420 3c65 6d3e 3c63 6f64 653e 7873 643a t xsd:\n-000e5020: 666c 6f61 745b 345d 3c2f 636f 6465 3e3c float[4]
<\n-000e5030: 2f65 6d3e 2069 7320 7468 6520 7479 7065 /em> is the type\n-000e5040: 2061 6e64 2073 6861 7065 206f 6620 7468 and shape of th\n-000e5050: 6520 656e 636f 6465 6420 6172 7261 792c e encoded array,\n-000e5060: 2077 6869 6368 2073 7461 7274 7320 6174 which starts at\n-000e5070: 206f 6666 7365 7420 3120 616e 6420 7468 offset 1 and th\n-000e5080: 6572 6566 6f72 6520 7468 6520 656c 656d erefore the elem\n-000e5090: 656e 7420 6174 2030 2069 7320 6f6d 6974 ent at 0 is omit\n-000e50a0: 7465 642e 3c2f 703e 0a3c 703e f09f 949d ted.
....\n-000e50b0: 203c 6120 6872 6566 3d22 2322 3e42 6163 Bac\n-000e50c0: 6b20 746f 2074 6162 6c65 206f 6620 636f k to table of co\n-000e50d0: 6e74 656e 7473 3c2f 613e 3c2f 703e 0a3c ntents
.<\n-000e50e0: 6833 3e3c 6120 636c 6173 733d 2261 6e63 h3>.Nested one\n-000e5110: 2d64 696d 656e 7369 6f6e 616c 2064 796e -dimensional dyn\n-000e5120: 616d 6963 2053 4f41 502d 656e 636f 6465 amic SOAP-encode\n-000e5130: 6420 6172 7261 7973 3c2f 6833 3e0a 3c70 d arrays.One-dimensional\n-000e5150: 2053 4f41 502d 656e 636f 6465 6420 6479 SOAP-encoded dy\n-000e5160: 6e61 6d69 6320 6172 7261 7973 206d 6179 namic arrays may\n-000e5170: 2062 6520 6e65 7374 6564 2e20 466f 7220 be nested. For \n-000e5180: 6578 616d 706c 652c 2075 7369 6e67 203c example, using <\n-000e5190: 636f 6465 3e63 6c61 7373 2056 6563 746f code>class Vecto\n-000e51a0: 723c 2f63 6f64 653e 2064 6563 6c61 7265 r declare\n-000e51b0: 6420 696e 2074 6865 2070 7265 7669 6f75 d in the previou\n-000e51c0: 7320 7365 6374 696f 6e2c 203c 636f 6465 s section, class Matrix is declared\n-000e51f0: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 :
The Ma\n-000e5630: 7472 6978 2074 7970 6520 6973 2065 7373 trix type is ess\n-000e5640: 656e 7469 616c 6c79 2061 6e20 6172 7261 entially an arra\n-000e5650: 7920 6f66 2070 6f69 6e74 6572 7320 746f y of pointers to\n-000e5660: 2061 7272 6179 7320 7768 6963 6820 6d61 arrays which ma\n-000e5670: 6b65 2075 7020 7468 6520 726f 7773 206f ke up the rows o\n-000e5680: 6620 6120 6d61 7472 6978 2e20 5468 6520 f a matrix. The \n-000e5690: 7365 7269 616c 697a 6174 696f 6e20 6f66 serialization of\n-000e56a0: 2074 6865 2074 776f 2d64 696d 656e 7369 the two-dimensi\n-000e56b0: 6f6e 616c 2064 796e 616d 6963 2061 7272 onal dynamic arr\n-000e56c0: 6179 2069 6e20 6973 206e 6573 7465 6420 ay in is nested \n-000e56d0: 666f 726d 2069 6e20 584d 4c2e 3c2f 703e form in XML.
\n-000e56e0: 0a3c 703e f09f 949d 203c 6120 6872 6566 ..A special fo\n-000e5780: 726d 206f 6620 3c63 6f64 653e 7374 7275 rm of stru\n-000e5790: 6374 3c2f 636f 6465 3e20 6f72 203c 636f ct
or K
\n-000e5b40: 7768 6572 6520 7468 6520 3c63 6f64 653e where the \n-000e5b50: 6172 7261 795f 6e61 6d65 3c2f 636f 6465 array_name
must be a non-\n-000e5b70: 7175 616c 6966 6965 6420 6e61 6d65 2061 qualified name a\n-000e5b80: 6e64 203c 636f 6465 3e54 7970 653c 2f63 nd Type is the type\n-000e5ba0: 2066 6f72 2074 6865 2065 6c65 6d65 6e74 for the element\n-000e5bb0: 7320 6f66 2074 6865 2061 7272 6179 2e20 s of the array. \n-000e5bc0: 5468 6520 3c63 6f64 653e 5f5f 7074 723c The
__ptr<\n-000e5bd0: 2f63 6f64 653e 206d 656d 6265 7220 706f /code> member po\n-000e5be0: 696e 7473 2074 6f20 7468 6520 6172 7261 ints to the arra\n-000e5bf0: 7920 7661 6c75 6573 2e20 5468 6520 3c63 y values. The
array specifie\n-000e5c20: 7320 7468 6520 6e75 6d62 6572 206f 6620 s the number of \n-000e5c30: 6172 7261 7920 656c 656d 656e 7473 2070 array elements p\n-000e5c40: 6572 2064 696d 656e 7369 6f6e 2e20 5468 er dimension. Th\n-000e5c50: 6520 3c63 6f64 653e 5f5f 6f66 6673 6574 e __offset\n-000e5c60: 3c2f 636f 6465 3e20 6172 7261 7920 7370
array sp\n-000e5c70: 6563 6966 6965 7320 616e 206f 7074 696f ecifies an optio\n-000e5c80: 6e61 6c20 6f66 6673 6574 2070 6572 2064 nal offset per d\n-000e5c90: 696d 656e 7369 6f6e 2e3c 2f70 3e0a 3c70 imension.
For example, th\n-000e5cb0: 6520 666f 6c6c 6f77 696e 6720 6465 636c e following decl\n-000e5cc0: 6172 6174 696f 6e20 7370 6563 6966 6965 aration specifie\n-000e5cd0: 7320 6120 6d61 7472 6978 2063 6c61 7373 s a matrix class\n-000e5ce0: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 :
.By \n-000e5ea0: 636f 6e74 7261 7374 2074 6f20 7468 6520 contrast to the \n-000e5eb0: 6d61 7472 6978 2063 6c61 7373 206f 6620 matrix class of \n-000e5ec0: 5365 6374 696f 6e20 3c61 2063 6c61 7373 Section N\n-000e5ef0: 6573 7465 6420 6f6e 652d 6469 6d65 6e73 ested one-dimens\n-000e5f00: 696f 6e61 6c20 6479 6e61 6d69 6320 534f ional dynamic SO\n-000e5f10: 4150 2d65 6e63 6f64 6564 2061 7272 6179 AP-encoded array\n-000e5f20: 733c 2f61 3e20 7468 6174 2064 6566 696e s that defin\n-000e5f30: 6573 2061 206d 6174 7269 7820 6173 2061 es a matrix as a\n-000e5f40: 6e20 6172 7261 7920 6f66 2070 6f69 6e74 n array of point\n-000e5f50: 6572 7320 746f 206d 6174 7269 7820 726f ers to matrix ro\n-000e5f60: 7773 2c20 7468 6973 2063 6c61 7373 2068 ws, this class h\n-000e5f70: 6173 206f 6e65 2070 6f69 6e74 6572 2074 as one pointer t\n-000e5f80: 6f20 6120 6d61 7472 6978 2073 746f 7265 o a matrix store\n-000e5f90: 6420 696e 2072 6f77 2d6d 616a 6f72 206f d in row-major o\n-000e5fa0: 7264 6572 2e20 5468 6520 7369 7a65 206f rder. The size o\n-000e5fb0: 6620 7468 6520 6d61 7472 6978 2069 7320 f the matrix is \n-000e5fc0: 6465 7465 726d 696e 6564 2062 7920 7468 determined by th\n-000e5fd0: 6520 3c63 6f64 653e 5f5f 7369 7a65 3c2f e __size\n-000e5fe0: 636f 6465 3e20 6d65 6d62 6572 3a20 3c63 code> member:
__size[1\n-000e6030: 5d3c 2f63 6f64 653e 2068 6f6c 6473 2074 ]
holds t\n-000e6040: 6865 206e 756d 6265 7220 6f66 2063 6f6c he number of col\n-000e6050: 756d 6e73 206f 6620 7468 6520 6d61 7472 umns of the matr\n-000e6060: 6978 2e20 4c69 6b65 7769 7365 2c20 3c63 ix. Likewise,
__offset\n-000e6150: 636f 6465 3e20 6d65 6d62 6572 206f 6620 code> member of \n-000e6160: 6120 6479 6e61 6d69 6320 6172 7261 7920 a dynamic array \n-000e6170: 6973 2069 676e 6f72 6564 2e3c 2f64 643e is ignored.
An array is ser\n-000e6210: 6961 6c69 7a65 6420 6173 2061 2073 6571 ialized as a seq\n-000e6220: 7565 6e63 6520 6f66 2058 4d4c 2065 6c65 uence of XML ele\n-000e6230: 6d65 6e74 732e 2042 7920 636f 6e74 7261 ments. By contra\n-000e6240: 7374 2c20 6120 534f 4150 2d65 6e63 6f64 st, a SOAP-encod\n-000e6250: 6564 2061 7272 6179 2069 7320 7365 7269 ed array is seri\n-000e6260: 616c 697a 6564 2061 7320 616e 2065 6c65 alized as an ele\n-000e6270: 6d65 6e74 2077 6974 6820 6120 7365 7175 ment with a sequ\n-000e6280: 656e 6365 206f 6620 7375 622d 656c 656d ence of sub-elem\n-000e6290: 656e 7473 2c20 7768 6f73 6520 7461 6720 ents, whose tag \n-000e62a0: 6e61 6d65 7320 6172 6520 6972 7265 6c65 names are irrele\n-000e62b0: 7661 6e74 2074 6f20 7468 6520 534f 4150 vant to the SOAP\n-000e62c0: 2070 726f 6365 7373 6f72 2c20 7365 6520 processor, see \n-000e62d0: 3c61 2063 6c61 7373 3d22 656c 2220 6872 One-dimensi\n-000e6300: 6f6e 616c 2064 796e 616d 6963 2053 4f41 onal dynamic SOA\n-000e6310: 502d 656e 636f 6465 6420 6172 7261 7973 P-encoded arrays\n-000e6320: 3c2f 613e 2e3c 2f70 3e0a 3c70 3e41 6e20 .
.An \n-000e6330: 6172 7261 7920 6973 2064 6563 6c61 7265 array is declare\n-000e6340: 6420 696e 2061 6e20 696e 7465 7266 6163 d in an interfac\n-000e6350: 6520 6865 6164 6572 2066 696c 6520 666f e header file fo\n-000e6360: 7220 736f 6170 6370 7032 2061 7320 6120 r soapcpp2 as a \n-000e6370: 7374 7275 6374 206f 7220 636c 6173 7320 struct or class \n-000e6380: 7769 7468 2061 206e 616d 6520 7468 6174 with a name that\n-000e6390: 2069 7320 7175 616c 6966 6965 6420 7769 is qualified wi\n-000e63a0: 7468 2061 206e 616d 6573 7061 6365 2070 th a namespace p\n-000e63b0: 7265 6669 782e 2054 6865 7265 2061 7265 refix. There are\n-000e63c0: 2074 776f 2066 6f72 6d73 2e20 5468 6520 two forms. The \n-000e63d0: 6669 7273 7420 666f 726d 2069 7320 7369 first form is si\n-000e63e0: 6d69 6c61 7220 746f 2074 6865 2053 4f41 milar to the SOA\n-000e63f0: 502d 656e 636f 6465 6420 6172 7261 7920 P-encoded array \n-000e6400: 6465 636c 6172 6174 696f 6e20 7468 6174 declaration that\n-000e6410: 2077 7261 7073 2074 6865 203c 636f 6465 wraps the The sec\n-000e6680: 6f6e 6420 666f 726d 2069 7320 6d6f 7265 ond form is more\n-000e6690: 2067 656e 6572 6963 2c20 6265 6361 7573 generic, becaus\n-000e66a0: 6520 7468 6520 6172 7261 7920 6361 6e20 e the array can \n-000e66b0: 6265 2064 6563 6c61 7265 6420 616e 7977 be declared anyw\n-000e66c0: 6865 7265 2069 6e20 7468 6520 7374 7275 here in the stru\n-000e66d0: 6374 206f 7220 636c 6173 7320 616e 6420 ct or class and \n-000e66e0: 6d75 6c74 6970 6c65 2061 7272 6179 7320 multiple arrays \n-000e66f0: 6361 6e20 6265 2075 7365 6420 6173 206d can be used as m\n-000e6700: 656d 6265 7273 2c20 6561 6368 2077 6974 embers, each wit\n-000e6710: 6820 6120 3c63 6f64 653e 5f5f 7369 7a65 h a Sin\n-000e6f00: 6365 2032 2e37 2e31 3620 6974 2069 7320 ce 2.7.16 it is \n-000e6f10: 616c 736f 2070 6f73 7369 626c 6520 746f also possible to\n-000e6f20: 2075 7365 2061 2027 3c63 6f64 653e 243c use a ' The arr\n-000e7230: 6179 2077 696c 6c20 6265 2073 6572 6961 ay will be seria\n-000e7240: 6c69 7a65 6420 696e 2058 4d4c 2061 7320 lized in XML as \n-000e7250: 6120 7365 7175 656e 6365 206f 6620 7061 a sequence of pa\n-000e7260: 6972 733a 3c2f 703e 0a3c 6469 7620 636c irs: For C+\n-000e8350: 2b2c 2061 2062 6574 7465 7220 616c 7465 +, a better alte\n-000e8360: 726e 6174 6976 6520 746f 2061 7272 6179 rnative to array\n-000e8370: 7320 6172 6520 636f 6e74 6169 6e65 7273 s are containers\n-000e8380: 2c20 7768 6963 6820 6172 6520 6465 7363 , which are desc\n-000e8390: 7269 6265 6420 6e65 7874 2e3c 2f70 3e0a ribed next. .... Back to tabl\n-000e83c0: 6520 6f66 2063 6f6e 7465 6e74 733c 2f61 e of contents The STL c\n-000e8420: 6f6e 7461 696e 6572 7320 3c63 6f64 653e ontainers In order to\n-000e84e0: 2075 7365 2063 6f6e 7461 696e 6572 7320 use containers \n-000e84f0: 696e 2061 6e20 696e 7465 7266 6163 6520 in an interface \n-000e8500: 6865 6164 6572 2066 696c 6520 666f 7220 header file for \n-000e8510: 736f 6170 6370 7032 2c20 696d 706f 7274 soapcpp2, import\n-000e8520: 203c 656d 3e3c 636f 6465 3e73 746c 6465 The us\n-000e8860: 6520 6f66 2070 6f69 6e74 6572 206d 656d e of pointer mem\n-000e8870: 6265 7273 2073 7563 6820 6173 2066 6f72 bers such as for\n-000e8880: 203c 636f 6465 3e6e 616d 653c 2f63 6f64 You can also\n-000e8ee0: 2069 6d70 6c65 6d65 6e74 2079 6f75 7220 implement your \n-000e8ef0: 6f77 6e20 636f 6e74 6169 6e65 7273 2e20 own containers. \n-000e8f00: 5468 6520 636f 6e74 6169 6e65 7273 206d The containers m\n-000e8f10: 7573 7420 6265 2063 6c61 7373 2074 656d ust be class tem\n-000e8f20: 706c 6174 6573 2061 6e64 2073 686f 756c plates and shoul\n-000e8f30: 6420 6465 6669 6e65 2061 2066 6f72 7761 d define a forwa\n-000e8f40: 7264 2069 7465 7261 746f 7220 7479 7065 rd iterator type\n-000e8f50: 2c20 616e 6420 7072 6f76 6964 6520 7468 , and provide th\n-000e8f60: 6520 666f 6c6c 6f77 696e 6720 6d65 7468 e following meth\n-000e8f70: 6f64 733a 3c2f 703e 0a3c 756c 3e0a 3c6c ods: The H\n-000e9340: 6572 6520 6973 2069 6e20 6578 616d 706c ere is in exampl\n-000e9350: 6520 636f 6e74 6169 6e65 7220 7465 6d70 e container temp\n-000e9360: 6c61 7465 2063 6c61 7373 3a3c 2f70 3e0a late class: In case mul\n+000de9e0: 7469 2d72 6566 6572 656e 6365 6420 6461 ti-referenced da\n+000de9f0: 7461 2069 7320 7265 6365 6976 6564 2074 ta is received t\n+000dea00: 6861 7420 2264 6f65 7320 6e6f 7420 6669 hat \"does not fi\n+000dea10: 7420 696e 2061 2070 6f69 6e74 6572 2d62 t in a pointer-b\n+000dea20: 6173 6564 2073 7472 7563 7475 7265 222c ased structure\",\n+000dea30: 2074 6865 2064 6174 6120 6973 2063 6f70 the data is cop\n+000dea40: 6965 642e 2046 6f72 2065 7861 6d70 6c65 ied. For example\n+000dea50: 2c20 7468 6520 666f 6c6c 6f77 696e 6720 , the following \n+000dea60: 7477 6f20 7374 7275 6374 7320 6172 6520 two structs are \n+000dea70: 7369 6d69 6c61 722c 2065 7863 6570 7420 similar, except \n+000dea80: 7468 6174 2074 6865 2066 6972 7374 2075 that the first u\n+000dea90: 7365 7320 706f 696e 7465 722d 6261 7365 ses pointer-base\n+000deaa0: 6420 6d65 6d62 6572 7320 7768 696c 6520 d members while \n+000deab0: 7468 6520 6f74 6865 7220 7573 6573 206e the other uses n\n+000deac0: 6f6e 2d70 6f69 6e74 6572 2d62 6173 6564 on-pointer-based\n+000dead0: 206d 656d 6265 7273 3a3c 2f70 3e0a 3c64 members: Since bot\n+000dee80: 6820 3c63 6f64 653e 613c 2f63 6f64 653e h .... Back to tabl\n+000df360: 6520 6f66 2063 6f6e 7465 6e74 733c 2f61 e of contents The\n+000df6d0: 2074 7970 6573 2073 6563 7469 6f6e 206f types section o\n+000df6e0: 6620 6120 5753 444c 2064 6573 6372 6970 f a WSDL descrip\n+000df6f0: 7469 6f6e 2063 6f6e 7461 696e 7320 696e tion contains in\n+000df700: 666f 726d 6174 696f 6e20 6f6e 2074 6865 formation on the\n+000df710: 2022 6e69 6c6c 6162 696c 6974 7922 206f \"nillability\" o\n+000df720: 6620 6461 7461 2c20 7768 6963 6820 6973 f data, which is\n+000df730: 2064 6563 6c61 7265 6420 6173 203c 636f declared as \n+000df820: 5375 7070 6f73 6520 706f 696e 7465 7220 Suppose pointer \n+000df830: 3c63 6f64 653e 713c 2f63 6f64 653e 2070 The de\n+000dfc00: 7365 7269 616c 697a 6572 2072 6563 6f6e serializer recon\n+000dfc10: 7374 7275 6374 7320 7468 6520 7374 7275 structs the stru\n+000dfc20: 6374 203c 636f 6465 3e58 3c2f 636f 6465 ct When the dese\n+000dfca0: 7269 616c 697a 6572 2065 6e63 6f75 6e74 rializer encount\n+000dfcb0: 6572 7320 616e 2058 4d4c 2065 6c65 6d65 ers an XML eleme\n+000dfcc0: 6e74 2074 6861 7420 6861 7320 6120 3c65 nt that has a ...\n+000dfdc0: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n+000dfdd0: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n+000dfde0: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents Void poi\n+000dfe40: 6e74 6572 7320 283c 636f 6465 3e76 6f69 nters ( Her\n+000e0290: 6520 6973 2061 6e20 6578 616d 706c 6520 e is an example \n+000e02a0: 746f 2069 6c6c 7573 7472 6174 6520 7468 to illustrate th\n+000e02b0: 6520 7365 7269 616c 697a 6174 696f 6e20 e serialization \n+000e02c0: 6f66 2061 203c 636f 6465 3e76 6f69 642a of a The The fo\n+000e0540: 6c6c 6f77 696e 6720 6578 616d 706c 6520 llowing example \n+000e0550: 696c 6c75 7374 7261 7465 7320 7468 6520 illustrates the \n+000e0560: 696e 6974 6961 6c69 7a61 7469 6f6e 206f initialization o\n+000e0570: 6620 3c63 6f64 653e 6d79 5374 7275 6374 f The serialized \n+000e0700: 6f75 7470 7574 206f 6620 3c63 6f64 653e output of \n+000e0910: 5468 6520 6465 7365 7269 616c 697a 6572 The deserializer\n+000e0920: 2066 6f72 203c 636f 6465 3e6e 735f 5f72 for This is\n+000e0c60: 2074 6865 2063 6173 6520 666f 7220 616c the case for al\n+000e0c70: 6c20 7374 7269 6e67 2d62 6173 6564 2074 l string-based t\n+000e0c80: 7970 6573 2c20 696e 636c 7564 696e 6720 ypes, including \n+000e0c90: 7479 7065 7320 6465 6669 6e65 6420 7769 types defined wi\n+000e0ca0: 7468 203c 636f 6465 3e74 7970 6564 6566 th You may us\n+000e0cd0: 6520 616e 2061 7262 6974 7261 7279 2073 e an arbitrary s\n+000e0ce0: 7566 6669 7820 7769 7468 2074 6865 203c uffix with the <\n+000e0cf0: 636f 6465 3e5f 5f74 7970 653c 2f63 6f64 code>__type members to ha\n+000e0d10: 6e64 6c65 206d 756c 7469 706c 6520 766f ndle multiple vo\n+000e0d20: 6964 2070 6f69 6e74 6572 7320 696e 2073 id pointers in s\n+000e0d30: 7472 7563 7473 2f63 6c61 7373 6573 2e20 tructs/classes. \n+000e0d40: 466f 7220 6578 616d 706c 653a 3c2f 703e For example: To de\n+000e17e0: 636c 6172 6520 6120 7772 6170 7065 7220 clare a wrapper \n+000e17f0: 7374 7275 6374 2f63 6c61 7373 2066 6f72 struct/class for\n+000e1800: 203c 636f 6465 3e76 6f69 642a 3c2f 636f \n+000e1b20: 5468 6520 666f 6c6c 6f77 696e 6720 6578 The following ex\n+000e1b30: 616d 706c 6520 696c 6c75 7374 7261 7465 ample illustrate\n+000e1b40: 7320 7468 6520 696e 6974 6961 6c69 7a61 s the initializa\n+000e1b50: 7469 6f6e 206f 6620 3c63 6f64 653e 5f5f tion of The serial\n+000e1cf0: 697a 6564 206f 7574 7075 7420 6f66 203c ized output of <\n+000e1d00: 636f 6465 3e53 3c2f 636f 6465 3e20 636f code>S co\n+000e1d10: 6e74 6169 6e73 2074 6865 2069 6e74 6567 ntains the integ\n+000e1d20: 6572 3a3c 2f70 3e0a 3c64 6976 2063 6c61 er: This specifies \n+000e22a0: 6120 6669 7865 642d 7369 7a65 2061 7272 a fixed-size arr\n+000e22b0: 6179 2070 6172 7420 6f66 2074 6865 203c ay part of the <\n+000e22c0: 636f 6465 3e73 7472 7563 7420 4578 616d code>struct Exam\n+000e22d0: 706c 653c 2f63 6f64 653e 2e20 5468 6520 ple. The \n+000e22e0: 7365 7269 616c 697a 6564 206f 7574 7075 serialized outpu\n+000e22f0: 7420 6f66 2061 7272 6179 203c 636f 6465 t of array Any\n+000e2550: 2064 6573 6572 6961 6c69 7a65 6420 6974 deserialized it\n+000e2560: 656d 7320 6f66 2061 6e20 6172 7261 7920 ems of an array \n+000e2570: 7468 6174 2064 6f20 6e6f 7420 6669 7420 that do not fit \n+000e2580: 696e 2074 6865 2066 6978 6564 2073 697a in the fixed siz\n+000e2590: 6520 6172 7261 792c 2069 2e65 2e20 6172 e array, i.e. ar\n+000e25a0: 6520 6f75 7420 6f66 2062 6f75 6e64 732c e out of bounds,\n+000e25b0: 2061 7265 2069 676e 6f72 6564 2062 7920 are ignored by \n+000e25c0: 7468 6520 6465 7365 7269 616c 697a 6572 the deserializer\n+000e25d0: 2077 6865 6e20 7468 6520 3c63 6f64 653e when the Dynamic \n+000e26e0: 6172 7261 7973 2061 7265 206d 7563 6820 arrays are much \n+000e26f0: 6d6f 7265 2066 6c65 7869 626c 6520 7468 more flexible th\n+000e2700: 616e 2066 6978 6564 2d73 697a 6520 6172 an fixed-size ar\n+000e2710: 7261 7973 2e20 4479 6e61 6d69 6320 6172 rays. Dynamic ar\n+000e2720: 7261 7973 2064 6563 6c61 7265 6420 696e rays declared in\n+000e2730: 2074 6865 2069 6e74 6572 6661 6365 2068 the interface h\n+000e2740: 6561 6465 7220 6669 6c65 2066 6f72 2073 eader file for s\n+000e2750: 6f61 7063 7070 3220 6172 6520 6120 7370 oapcpp2 are a sp\n+000e2760: 6563 6961 6c20 7374 7275 6374 206f 7220 ecial struct or \n+000e2770: 636c 6173 7320 6f72 2061 7265 2070 6172 class or are par\n+000e2780: 7420 6f66 2061 2073 7472 7563 7420 6f72 t of a struct or\n+000e2790: 2063 6c61 7373 2077 6974 6820 6120 6d65 class with a me\n+000e27a0: 6d62 6572 2070 6f69 6e74 696e 6720 746f mber pointing to\n+000e27b0: 2061 6e20 6172 7261 7920 6f66 2065 6c65 an array of ele\n+000e27c0: 6d65 6e74 7320 616e 6420 6120 6d65 6d62 ments and a memb\n+000e27d0: 6572 2074 6861 7420 7374 6f72 6573 2074 er that stores t\n+000e27e0: 6865 2073 697a 6520 6f66 2074 6865 2061 he size of the a\n+000e27f0: 7272 6179 2e20 4479 6e61 6d69 6320 6172 rray. Dynamic ar\n+000e2800: 7261 7920 616c 6c6f 6361 7469 6f6e 7320 ray allocations \n+000e2810: 6172 6520 6561 7379 2075 7369 6e67 2074 are easy using t\n+000e2820: 6865 2073 6f61 7063 7070 2d67 656e 6572 he soapcpp-gener\n+000e2830: 6174 6564 203c 636f 6465 3e73 6f61 705f ated To\n+000e2920: 2066 6163 696c 6974 6174 6520 534f 4150 facilitate SOAP\n+000e2930: 2052 5043 2065 6e63 6f64 696e 672c 2053 RPC encoding, S\n+000e2940: 4f41 502d 656e 636f 6465 6420 6172 7261 OAP-encoded arra\n+000e2950: 7973 2072 6571 7569 7265 2073 7065 6369 ys require speci\n+000e2960: 616c 2074 7265 6174 6d65 6e74 2e20 534f al treatment. SO\n+000e2970: 4150 2d65 6e63 6f64 6564 2061 7272 6179 AP-encoded array\n+000e2980: 7320 6172 6520 7369 6e67 6c65 2d20 6f72 s are single- or\n+000e2990: 206d 756c 7469 2d64 696d 656e 7369 6f6e multi-dimension\n+000e29a0: 616c 2061 7272 6179 7320 7769 7468 2062 al arrays with b\n+000e29b0: 6f75 6e64 7320 7468 6174 2061 7070 6561 ounds that appea\n+000e29c0: 7220 696e 2058 4d4c 2e20 5468 6573 6520 r in XML. These \n+000e29d0: 6172 7261 7973 206d 6179 2061 6c73 6f20 arrays may also \n+000e29e0: 6861 7665 206f 6666 7365 7473 2074 6861 have offsets tha\n+000e29f0: 7420 6469 6666 6572 2066 726f 6d20 7a65 t differ from ze\n+000e2a00: 726f 2e20 5468 6520 696e 7465 6e74 206f ro. The intent o\n+000e2a10: 6620 534f 4150 2d65 6e63 6f64 6564 2061 f SOAP-encoded a\n+000e2a20: 7272 6179 7320 6973 2074 6f20 7265 706c rrays is to repl\n+000e2a30: 6963 6174 6520 6d75 6c74 692d 6469 6d65 icate multi-dime\n+000e2a40: 6e73 696f 6e61 6c20 6172 7261 7973 2063 nsional arrays c\n+000e2a50: 6f6d 6d6f 6e6c 7920 666f 756e 6420 696e ommonly found in\n+000e2a60: 2070 726f 6772 616d 6d69 6e67 206c 616e programming lan\n+000e2a70: 6775 6167 6573 2e3c 2f70 3e0a 3c70 3e48 guages. H\n+000e2a80: 6f77 6576 6572 2c20 584d 4c20 616c 736f owever, XML also\n+000e2a90: 2070 726f 7669 6465 7320 6120 7369 6d70 provides a simp\n+000e2aa0: 6c65 2077 6179 2074 6f20 7265 7072 6573 le way to repres\n+000e2ab0: 656e 7420 6120 7365 7175 656e 6365 206f ent a sequence o\n+000e2ac0: 6620 7661 6c75 6573 2077 6974 6820 6120 f values with a \n+000e2ad0: 7365 7175 656e 6365 206f 6620 584d 4c20 sequence of XML \n+000e2ae0: 656c 656d 656e 7473 2e20 5468 6973 2064 elements. This d\n+000e2af0: 6966 6665 7273 2066 726f 6d20 534f 4150 iffers from SOAP\n+000e2b00: 2d65 6e63 6f64 6564 2061 7272 6179 7320 -encoded arrays \n+000e2b10: 696e 2074 6861 7420 534f 4150 2d65 6e63 in that SOAP-enc\n+000e2b20: 6f64 6564 2061 7272 6179 7320 6172 6520 oded arrays are \n+000e2b30: 656c 656d 656e 7473 2077 6974 6820 6e65 elements with ne\n+000e2b40: 7374 6564 203c 656d 3e3c 636f 6465 3e69 sted Both SOAP-en\n+000e2c00: 636f 6465 6420 6172 7261 7973 2061 6e64 coded arrays and\n+000e2c10: 2073 6571 7565 6e63 6573 206f 6620 584d sequences of XM\n+000e2c20: 4c20 656c 656d 656e 7473 2061 7265 2073 L elements are s\n+000e2c30: 7570 706f 7274 6564 2069 6e20 6753 4f41 upported in gSOA\n+000e2c40: 502c 2075 7369 6e67 2064 796e 616d 6963 P, using dynamic\n+000e2c50: 2061 7272 6179 7320 616e 6420 636f 6e74 arrays and cont\n+000e2c60: 6169 6e65 7273 2e20 5468 6520 6261 7369 ainers. The basi\n+000e2c70: 6373 2077 696c 6c20 6265 2064 6573 6372 cs will be descr\n+000e2c80: 6962 6564 206e 6578 742e 2046 6f72 2061 ibed next. For a\n+000e2c90: 6464 6974 696f 6e61 6c20 6465 7461 696c dditional detail\n+000e2ca0: 732c 2073 6565 2074 6865 203c 6120 6872 s, see the C and C++\n+000e2ce0: 2058 4d4c 2044 6174 6120 4269 6e64 696e XML Data Bindin\n+000e2cf0: 6773 3c2f 613e 2064 6f63 756d 656e 7461 gs documenta\n+000e2d00: 7469 6f6e 2e3c 2f70 3e0a 3c70 3ef0 9f94 tion. ...\n+000e2d10: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n+000e2d20: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n+000e2d30: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents SO\n+000e2d90: 4150 2d65 6e63 6f64 6564 2061 7272 6179 AP-encoded array\n+000e2da0: 7320 7573 6520 7468 6520 3c65 6d3e 3c63 s use the As a \n+000e2e70: 7365 6375 7269 7479 206d 6561 7375 7265 security measure\n+000e2e80: 2074 6f20 6176 6f69 6420 6465 6e69 616c to avoid denial\n+000e2e90: 206f 6620 7365 7276 6963 6520 6174 7461 of service atta\n+000e2ea0: 636b 7320 6261 7365 6420 6f6e 2073 656e cks based on sen\n+000e2eb0: 6469 6e67 2061 2068 7567 6520 6172 7261 ding a huge arra\n+000e2ec0: 7920 7369 7a65 2076 616c 7565 2075 7369 y size value usi\n+000e2ed0: 6e67 2074 6865 203c 656d 3e3c 636f 6465 ng the .\n+000e3310: 9f94 9d20 3c61 2068 7265 663d 2223 223e ... \n+000e3320: 4261 636b 2074 6f20 7461 626c 6520 6f66 Back to table of\n+000e3330: 2063 6f6e 7465 6e74 733c 2f61 3e3c 2f70 contents A spe\n+000e33a0: 6369 616c 2066 6f72 6d20 6f66 2073 7472 cial form of str\n+000e33b0: 7563 7420 6f72 2063 6c61 7373 2069 7320 uct or class is \n+000e33c0: 7573 6564 2074 6f20 6465 6669 6e65 206f used to define o\n+000e33d0: 6e65 2d64 696d 656e 7369 6f6e 616c 2064 ne-dimensional d\n+000e33e0: 796e 616d 6963 2053 4f41 502d 656e 636f ynamic SOAP-enco\n+000e33f0: 6465 6420 6172 7261 7973 2069 6e20 616e ded arrays in an\n+000e3400: 2069 6e74 6572 6661 6365 2068 6561 6465 interface heade\n+000e3410: 7220 6669 6c65 2066 6f72 2073 6f61 7063 r file for soapc\n+000e3420: 7070 322e 2045 6163 6820 6172 7261 7920 pp2. Each array \n+000e3430: 6861 7320 6120 706f 696e 7465 7220 7661 has a pointer va\n+000e3440: 7269 6162 6c65 2061 6e64 2061 206d 656d riable and a mem\n+000e3450: 6265 7220 7468 6174 2072 6563 6f72 6473 ber that records\n+000e3460: 2074 6865 206e 756d 6265 7220 6f66 2065 the number of e\n+000e3470: 6c65 6d65 6e74 7320 7468 6520 706f 696e lements the poin\n+000e3480: 7465 7220 706f 696e 7473 2074 6f20 696e ter points to in\n+000e3490: 206d 656d 6f72 792e 3c2f 703e 0a3c 703e memory. \n+000e34a0: 5468 6520 6765 6e65 7261 6c20 666f 726d The general form\n+000e34b0: 206f 6620 7468 6520 7374 7275 6374 206f of the struct o\n+000e34c0: 7220 636c 6173 7320 6465 636c 6172 6174 r class declarat\n+000e34d0: 696f 6e20 7468 6174 2063 6f6e 7461 696e ion that contain\n+000e34e0: 7320 6120 6f6e 652d 6469 6d65 6e73 696f s a one-dimensio\n+000e34f0: 6e61 6c20 6479 6e61 6d69 6320 534f 4150 nal dynamic SOAP\n+000e3500: 2d65 6e63 6f64 6564 2061 7272 6179 2069 -encoded array i\n+000e3510: 733a 3c2f 703e 0a3c 6469 7620 636c 6173 s: w\n+000e37c0: 6865 7265 2074 6865 203c 636f 6465 3e61 here the If th\n+000e3980: 6520 3c63 6f64 653e 6172 7261 795f 6e61 e The soapcpp2-ge\n+000e3a80: 6e65 7261 7465 6420 6465 7365 7269 616c nerated deserial\n+000e3a90: 697a 6572 206f 6620 6120 6f6e 652d 6469 izer of a one-di\n+000e3aa0: 6d65 6e73 696f 6e61 6c20 6479 6e61 6d69 mensional dynami\n+000e3ab0: 6320 6172 7261 7920 6361 6e20 6465 7365 c array can dese\n+000e3ac0: 7269 616c 697a 6520 7061 7274 6961 6c6c rialize partiall\n+000e3ad0: 7920 7472 616e 736d 6974 7465 6420 616e y transmitted an\n+000e3ae0: 642f 6f72 2053 4f41 502d 656e 636f 6465 d/or SOAP-encode\n+000e3af0: 6420 7370 6172 7365 2061 7272 6179 732c d sparse arrays,\n+000e3b00: 2061 6e64 2065 7665 6e20 6d75 6c74 692d and even multi-\n+000e3b10: 6469 6d65 6e73 696f 6e61 6c20 6172 7261 dimensional arra\n+000e3b20: 7973 2077 6869 6368 2077 696c 6c20 6265 ys which will be\n+000e3b30: 2063 6f6c 6c61 7073 6564 2069 6e74 6f20 collapsed into \n+000e3b40: 6120 6f6e 652d 6469 6d65 6e73 696f 6e61 a one-dimensiona\n+000e3b50: 6c20 6172 7261 7920 7769 7468 2072 6f77 l array with row\n+000e3b60: 2d6d 616a 6f72 206f 7264 6572 696e 672e -major ordering.\n+000e3b70: 3c2f 703e 0a3c 646c 2063 6c61 7373 3d22 ...\n+000e3c30: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n+000e3c40: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n+000e3c50: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents The declara\n+000e3ce0: 7469 6f6e 206f 6620 6120 6479 6e61 6d69 tion of a dynami\n+000e3cf0: 6320 6172 7261 7920 6173 2064 6573 6372 c array as descr\n+000e3d00: 6962 6564 2069 6e20 5365 6374 696f 6e20 ibed in Section \n+000e3d10: 3c61 2063 6c61 7373 3d22 656c 2220 6872 One-dimensi\n+000e3d40: 6f6e 616c 2064 796e 616d 6963 2053 4f41 onal dynamic SOA\n+000e3d50: 502d 656e 636f 6465 6420 6172 7261 7973 P-encoded arrays\n+000e3d60: 3c2f 613e 206d 6179 2069 6e63 6c75 6465 may include\n+000e3d70: 2061 6e20 3c63 6f64 653e 696e 7420 5f5f an For example, th\n+000e3ef0: 6520 666f 6c6c 6f77 696e 6720 6865 6164 e following head\n+000e3f00: 6572 2066 696c 6520 6465 636c 6172 6573 er file declares\n+000e3f10: 2061 206e 756d 6572 6963 203c 636f 6465 a numeric The output is\n+000e4cb0: 2061 2070 6172 7469 616c 6c79 2074 7261 a partially tra\n+000e4cc0: 6e73 6d69 7474 6564 2061 7272 6179 3a3c nsmitted array:<\n+000e4cd0: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>. Note that One-\n+000e5130: 6469 6d65 6e73 696f 6e61 6c20 534f 4150 dimensional SOAP\n+000e5140: 2d65 6e63 6f64 6564 2064 796e 616d 6963 -encoded dynamic\n+000e5150: 2061 7272 6179 7320 6d61 7920 6265 206e arrays may be n\n+000e5160: 6573 7465 642e 2046 6f72 2065 7861 6d70 ested. For examp\n+000e5170: 6c65 2c20 7573 696e 6720 3c63 6f64 653e le, using where\n+000e5b30: 2074 6865 203c 636f 6465 3e61 7272 6179 the For \n+000e5c90: 6578 616d 706c 652c 2074 6865 2066 6f6c example, the fol\n+000e5ca0: 6c6f 7769 6e67 2064 6563 6c61 7261 7469 lowing declarati\n+000e5cb0: 6f6e 2073 7065 6369 6669 6573 2061 206d on specifies a m\n+000e5cc0: 6174 7269 7820 636c 6173 733a 3c2f 703e atrix class: By contr\n+000e5e90: 6173 7420 746f 2074 6865 206d 6174 7269 ast to the matri\n+000e5ea0: 7820 636c 6173 7320 6f66 2053 6563 7469 x class of Secti\n+000e5eb0: 6f6e 203c 6120 636c 6173 733d 2265 6c22 on Nested\n+000e5ee0: 206f 6e65 2d64 696d 656e 7369 6f6e 616c one-dimensional\n+000e5ef0: 2064 796e 616d 6963 2053 4f41 502d 656e dynamic SOAP-en\n+000e5f00: 636f 6465 6420 6172 7261 7973 3c2f 613e coded arrays\n+000e5f10: 2074 6861 7420 6465 6669 6e65 7320 6120 that defines a \n+000e5f20: 6d61 7472 6978 2061 7320 616e 2061 7272 matrix as an arr\n+000e5f30: 6179 206f 6620 706f 696e 7465 7273 2074 ay of pointers t\n+000e5f40: 6f20 6d61 7472 6978 2072 6f77 732c 2074 o matrix rows, t\n+000e5f50: 6869 7320 636c 6173 7320 6861 7320 6f6e his class has on\n+000e5f60: 6520 706f 696e 7465 7220 746f 2061 206d e pointer to a m\n+000e5f70: 6174 7269 7820 7374 6f72 6564 2069 6e20 atrix stored in \n+000e5f80: 726f 772d 6d61 6a6f 7220 6f72 6465 722e row-major order.\n+000e5f90: 2054 6865 2073 697a 6520 6f66 2074 6865 The size of the\n+000e5fa0: 206d 6174 7269 7820 6973 2064 6574 6572 matrix is deter\n+000e5fb0: 6d69 6e65 6420 6279 2074 6865 203c 636f mined by the An a\n+000e61f0: 7272 6179 2069 7320 7365 7269 616c 697a rray is serializ\n+000e6200: 6564 2061 7320 6120 7365 7175 656e 6365 ed as a sequence\n+000e6210: 206f 6620 584d 4c20 656c 656d 656e 7473 of XML elements\n+000e6220: 2e20 4279 2063 6f6e 7472 6173 742c 2061 . By contrast, a\n+000e6230: 2053 4f41 502d 656e 636f 6465 6420 6172 SOAP-encoded ar\n+000e6240: 7261 7920 6973 2073 6572 6961 6c69 7a65 ray is serialize\n+000e6250: 6420 6173 2061 6e20 656c 656d 656e 7420 d as an element \n+000e6260: 7769 7468 2061 2073 6571 7565 6e63 6520 with a sequence \n+000e6270: 6f66 2073 7562 2d65 6c65 6d65 6e74 732c of sub-elements,\n+000e6280: 2077 686f 7365 2074 6167 206e 616d 6573 whose tag names\n+000e6290: 2061 7265 2069 7272 656c 6576 616e 7420 are irrelevant \n+000e62a0: 746f 2074 6865 2053 4f41 5020 7072 6f63 to the SOAP proc\n+000e62b0: 6573 736f 722c 2073 6565 203c 6120 636c essor, see \n+000e62e0: 4f6e 652d 6469 6d65 6e73 696f 6e61 6c20 One-dimensional \n+000e62f0: 6479 6e61 6d69 6320 534f 4150 2d65 6e63 dynamic SOAP-enc\n+000e6300: 6f64 6564 2061 7272 6179 733c 2f61 3e2e oded arrays.\n+000e6310: 3c2f 703e 0a3c 703e 416e 2061 7272 6179 An array\n+000e6320: 2069 7320 6465 636c 6172 6564 2069 6e20 is declared in \n+000e6330: 616e 2069 6e74 6572 6661 6365 2068 6561 an interface hea\n+000e6340: 6465 7220 6669 6c65 2066 6f72 2073 6f61 der file for soa\n+000e6350: 7063 7070 3220 6173 2061 2073 7472 7563 pcpp2 as a struc\n+000e6360: 7420 6f72 2063 6c61 7373 2077 6974 6820 t or class with \n+000e6370: 6120 6e61 6d65 2074 6861 7420 6973 2071 a name that is q\n+000e6380: 7561 6c69 6669 6564 2077 6974 6820 6120 ualified with a \n+000e6390: 6e61 6d65 7370 6163 6520 7072 6566 6978 namespace prefix\n+000e63a0: 2e20 5468 6572 6520 6172 6520 7477 6f20 . There are two \n+000e63b0: 666f 726d 732e 2054 6865 2066 6972 7374 forms. The first\n+000e63c0: 2066 6f72 6d20 6973 2073 696d 696c 6172 form is similar\n+000e63d0: 2074 6f20 7468 6520 534f 4150 2d65 6e63 to the SOAP-enc\n+000e63e0: 6f64 6564 2061 7272 6179 2064 6563 6c61 oded array decla\n+000e63f0: 7261 7469 6f6e 2074 6861 7420 7772 6170 ration that wrap\n+000e6400: 7320 7468 6520 3c63 6f64 653e 5f5f 7074 s the T\n+000e6b90: 6865 203c 636f 6465 3e5f 5f73 697a 653c he For exam\n+000e6c20: 706c 652c 2077 6520 6465 6669 6e65 2061 ple, we define a\n+000e6c30: 204d 6170 2073 7472 7563 7475 7265 2074 Map structure t\n+000e6c40: 6861 7420 636f 6e74 6169 6e73 2061 2073 hat contains a s\n+000e6c50: 6571 7565 6e63 6520 6f66 206b 6579 2d76 equence of key-v\n+000e6c60: 616c 2070 6169 7273 3a3c 2f70 3e0a 3c64 al pairs: Since 2.\n+000e6ef0: 372e 3136 2069 7420 6973 2061 6c73 6f20 7.16 it is also \n+000e6f00: 706f 7373 6962 6c65 2074 6f20 7573 6520 possible to use \n+000e6f10: 6120 273c 636f 6465 3e24 3c2f 636f 6465 a ' Deserializ\n+000e7840: 6174 696f 6e20 6973 206c 6573 7320 6566 ation is less ef\n+000e7850: 6669 6369 656e 7420 636f 6d70 6172 6564 ficient compared\n+000e7860: 2074 6f20 6120 534f 4150 2d65 6e63 6f64 to a SOAP-encod\n+000e7870: 6564 2061 7272 6179 2c20 6265 6361 7573 ed array, becaus\n+000e7880: 6520 7468 6520 7369 7a65 206f 6620 7468 e the size of th\n+000e7890: 6520 7365 7175 656e 6365 2069 7320 6e6f e sequence is no\n+000e78a0: 7420 7061 7274 206f 6620 7468 6520 534f t part of the SO\n+000e78b0: 4150 2065 6e63 6f64 696e 672e 2042 7566 AP encoding. Buf\n+000e78c0: 6665 7269 6e67 2069 7320 7573 6564 2062 fering is used b\n+000e78d0: 7920 7468 6520 6465 7365 7269 616c 697a y the deserializ\n+000e78e0: 6572 2074 6f20 636f 6c6c 6563 7420 7468 er to collect th\n+000e78f0: 6520 656c 656d 656e 7473 2069 6e20 6d65 e elements in me\n+000e7900: 6d6f 7279 2e20 5768 656e 2074 6865 2065 mory. When the e\n+000e7910: 6e64 206f 6620 7468 6520 6c69 7374 2069 nd of the list i\n+000e7920: 7320 7265 6163 6865 642c 2074 6865 2062 s reached, the b\n+000e7930: 7566 6665 7265 6420 656c 656d 656e 7473 uffered elements\n+000e7940: 2061 7265 2063 6f70 6965 6420 746f 2061 are copied to a\n+000e7950: 206e 6577 6c79 2061 6c6c 6f63 6174 6564 newly allocated\n+000e7960: 206d 616e 6167 6564 2073 7061 6365 206f managed space o\n+000e7970: 6e20 7468 6520 6865 6170 2066 6f72 2074 n the heap for t\n+000e7980: 6865 2064 796e 616d 6963 2061 7272 6179 he dynamic array\n+000e7990: 2e3c 2f70 3e0a 3c70 3e4d 756c 7469 706c . Multipl\n+000e79a0: 6520 6172 7261 7973 2063 616e 2062 6520 e arrays can be \n+000e79b0: 7061 7274 206f 6620 6120 7374 7275 6374 part of a struct\n+000e79c0: 206f 7220 636c 6173 732e 2046 6f72 2065 or class. For e\n+000e79d0: 7861 6d70 6c65 3a3c 2f70 3e0a 3c64 6976 xample: The\n+000e7d80: 2058 4d4c 2073 6572 6961 6c69 7a61 7469 XML serializati\n+000e7d90: 6f6e 206f 6620 616e 2065 7861 6d70 6c65 on of an example\n+000e7da0: 203c 636f 6465 3e6e 735f 5f43 6f6e 7461 For C++, a \n+000e8340: 6265 7474 6572 2061 6c74 6572 6e61 7469 better alternati\n+000e8350: 7665 2074 6f20 6172 7261 7973 2061 7265 ve to arrays are\n+000e8360: 2063 6f6e 7461 696e 6572 732c 2077 6869 containers, whi\n+000e8370: 6368 2061 7265 2064 6573 6372 6962 6564 ch are described\n+000e8380: 206e 6578 742e 3c2f 703e 0a3c 703e f09f next. ..\n+000e8390: 949d 203c 6120 6872 6566 3d22 2322 3e42 .. B\n+000e83a0: 6163 6b20 746f 2074 6162 6c65 206f 6620 ack to table of \n+000e83b0: 636f 6e74 656e 7473 3c2f 613e 3c2f 703e contents \n+000e84c0: 496e 206f 7264 6572 2074 6f20 7573 6520 In order to use \n+000e84d0: 636f 6e74 6169 6e65 7273 2069 6e20 616e containers in an\n+000e84e0: 2069 6e74 6572 6661 6365 2068 6561 6465 interface heade\n+000e84f0: 7220 6669 6c65 2066 6f72 2073 6f61 7063 r file for soapc\n+000e8500: 7070 322c 2069 6d70 6f72 7420 3c65 6d3e pp2, import \n+000e8510: 3c63 6f64 653e 7374 6c64 6571 7565 2e68 Y\n+000e8ec0: 6f75 2063 616e 2061 6c73 6f20 696d 706c ou can also impl\n+000e8ed0: 656d 656e 7420 796f 7572 206f 776e 2063 ement your own c\n+000e8ee0: 6f6e 7461 696e 6572 732e 2054 6865 2063 ontainers. The c\n+000e8ef0: 6f6e 7461 696e 6572 7320 6d75 7374 2062 ontainers must b\n+000e8f00: 6520 636c 6173 7320 7465 6d70 6c61 7465 e class template\n+000e8f10: 7320 616e 6420 7368 6f75 6c64 2064 6566 s and should def\n+000e8f20: 696e 6520 6120 666f 7277 6172 6420 6974 ine a forward it\n+000e8f30: 6572 6174 6f72 2074 7970 652c 2061 6e64 erator type, and\n+000e8f40: 2070 726f 7669 6465 2074 6865 2066 6f6c provide the fol\n+000e8f50: 6c6f 7769 6e67 206d 6574 686f 6473 3a3c lowing methods:<\n+000e8f60: 2f70 3e0a 3c75 6c3e 0a3c 6c69 3e3c 636f /p>. The \n+000e9160: 3c63 6f64 653e 6974 6572 6174 6f72 3c2f Here i\n+000e9330: 7320 696e 2065 7861 6d70 6c65 2063 6f6e s in example con\n+000e9340: 7461 696e 6572 2074 656d 706c 6174 6520 tainer template \n+000e9350: 636c 6173 733a 3c2f 703e 0a3c 6469 7620 class: To\n-000eaa70: 2065 6e61 626c 6520 7468 6520 636f 6e74 enable the cont\n-000eaa80: 6169 6e65 722c 2077 6520 6164 6420 7468 ainer, we add th\n-000eaa90: 6520 666f 6c6c 6f77 696e 6720 7477 6f20 e following two \n-000eaaa0: 6c69 6e65 7320 746f 2074 6865 2069 6e74 lines to the int\n-000eaab0: 6572 6661 6365 2068 6561 6465 7220 6669 erface header fi\n-000eaac0: 6c65 2066 6f72 2073 6f61 7063 7070 323a le for soapcpp2:\n-000eaad0: 3c2f 703e 0a3c 6469 7620 636c 6173 733d \n-000eac00: 5468 6520 636f 6e74 6169 6e65 7220 636c The container cl\n-000eac10: 6173 7320 6974 7365 6c66 2073 686f 756c ass itself shoul\n-000eac20: 6420 6e6f 7420 6265 2064 6566 696e 6564 d not be defined\n-000eac30: 2069 6e20 7468 6520 696e 7465 7266 6163 in the interfac\n-000eac40: 6520 6865 6164 6572 2066 696c 652c 206f e header file, o\n-000eac50: 6e6c 7920 7468 6520 7465 6d70 6c61 7465 nly the template\n-000eac60: 2064 6563 6c61 7261 7469 6f6e 2073 7566 declaration suf\n-000eac70: 6669 6365 7320 666f 7220 736f 6170 6370 fices for soapcp\n-000eac80: 7032 2074 6f20 6765 6e65 7261 7465 2073 p2 to generate s\n-000eac90: 6572 6961 6c69 7a65 7273 2e20 5265 6361 erializers. Reca\n-000eaca0: 6c6c 2074 6861 7420 7468 6520 3c63 6f64 ll that the .... Back to table \n-000eada0: 6f66 2063 6f6e 7465 6e74 733c 2f61 3e3c of contents<\n-000eadb0: 2f70 3e0a 3c68 333e 3c61 2063 6c61 7373 /p>. Polymorphic a\n-000eae20: 7272 6179 732c 2074 6861 7420 6973 2c20 rrays, that is, \n-000eae30: 6172 7261 7973 206f 6620 7661 6c75 6573 arrays of values\n-000eae40: 206f 6620 616e 7920 7479 7065 2c20 6361 of any type, ca\n-000eae50: 6e20 6265 2073 6572 6961 6c69 7a65 6420 n be serialized \n-000eae60: 696e 2058 4d4c 2077 6865 6e20 6465 636c in XML when decl\n-000eae70: 6172 6564 2061 7320 616e 2061 7272 6179 ared as an array\n-000eae80: 206f 6620 706f 696e 7465 7273 2074 6f20 of pointers to \n-000eae90: 6120 6261 7365 2063 6c61 7373 2e20 466f a base class. Fo\n-000eaea0: 7220 6578 616d 706c 653a 3c2f 703e 0a3c r example: The poi\n-000eb3e0: 6e74 6572 7320 696e 2074 6865 2061 7272 nters in the arr\n-000eb3f0: 6179 2063 616e 2070 6f69 6e74 2074 6f20 ay can point to \n-000eb400: 7468 6520 3c63 6f64 653e 6e73 5f5f 4f62 the Since we can\n-000eb630: 6e6f 7420 7573 6520 6479 6e61 6d69 6320 not use dynamic \n-000eb640: 6269 6e64 696e 6720 746f 2073 7570 706f binding to suppo\n-000eb650: 7274 2070 6f6c 796d 6f72 7068 6973 6d20 rt polymorphism \n-000eb660: 696e 2043 2c20 616e 6f74 6865 7220 6d65 in C, another me\n-000eb670: 6368 616e 6973 6d20 7765 2063 616e 2075 chanism we can u\n-000eb680: 7365 2069 7320 766f 6964 2070 6f69 6e74 se is void point\n-000eb690: 6572 7320 2e20 4865 7265 2069 7320 616e ers . Here is an\n-000eb6a0: 2065 7861 6d70 6c65 206f 6620 6120 706f example of a po\n-000eb6b0: 6c79 6d6f 7270 6869 6320 534f 4150 2d65 lymorphic SOAP-e\n-000eb6c0: 6e63 6f64 6564 2061 7272 6179 203c 636f ncoded array This\n-000ebc30: 2065 7861 6d70 6c65 2075 7365 7320 616e example uses an\n-000ebc40: 2022 696e 7669 7369 626c 6522 2074 7970 \"invisible\" typ\n-000ebc50: 6520 3c63 6f64 653e 5f5f 7772 6170 7065 e The d\n-000ebe80: 6566 6175 6c74 2058 4d4c 2065 6c65 6d65 efault XML eleme\n-000ebe90: 6e74 2074 6167 206e 616d 6520 666f 7220 nt tag name for \n-000ebea0: 6172 7261 7920 656c 656d 656e 7473 2069 array elements i\n-000ebeb0: 7320 3c65 6d3e 3c63 6f64 653e 6974 656d s Consider \n-000ec030: 666f 7220 6578 616d 706c 653a 3c2f 703e for example: The a\n-000ec190: 7272 6179 2069 7320 7365 7269 616c 697a rray is serializ\n-000ec1a0: 6564 2061 733a 3c2f 703e 0a3c 6469 7620 ed as: SOA\n-000ec440: 5020 312e 312f 312e 3220 646f 6573 206e P 1.1/1.2 does n\n-000ec450: 6f74 206d 616e 6461 7465 2061 2073 7065 ot mandate a spe\n-000ec460: 6369 6669 6320 7461 6720 6e61 6d65 2066 cific tag name f\n-000ec470: 6f72 2053 4f41 502d 656e 636f 6465 6420 or SOAP-encoded \n-000ec480: 6172 7261 7920 656c 656d 656e 7473 2061 array elements a\n-000ec490: 6e64 2074 6865 2073 6f61 7063 7070 322d nd the soapcpp2-\n-000ec4a0: 6765 6e65 7261 7465 6420 7365 7269 616c generated serial\n-000ec4b0: 697a 6572 7320 7769 6c6c 2069 676e 6f72 izers will ignor\n-000ec4c0: 6520 7468 6520 6e61 6d65 2075 7365 6420 e the name used \n-000ec4d0: 746f 2069 7465 6d69 7a65 2053 4f41 502d to itemize SOAP-\n-000ec4e0: 656e 636f 6465 6420 6172 7261 7920 7661 encoded array va\n-000ec4f0: 6c75 6573 2e3c 2f70 3e0a 3c70 3ef0 9f94 lues. ...\n-000ec500: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n-000ec510: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n-000ec520: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents \n-000ec580: 5468 6520 3c65 6d3e 3c63 6f64 653e 6261 The The adva\n-000ec8b0: 6e74 6167 6520 6f66 2074 6869 7320 7374 ntage of this st\n-000ec8c0: 7275 6374 206f 7220 636c 6173 7320 6973 ruct or class is\n-000ec8d0: 2074 6865 2061 6269 6c69 7479 2074 6f20 the ability to \n-000ec8e0: 7365 7269 616c 697a 6572 2072 6177 2062 serializer raw b\n-000ec8f0: 696e 6172 7920 6461 7461 2066 726f 6d20 inary data from \n-000ec900: 6d65 6d6f 7279 2c20 7369 6e63 6520 7468 memory, since th\n-000ec910: 6520 736f 6170 6370 7032 2d67 656e 6572 e soapcpp2-gener\n-000ec920: 6174 6564 2073 6572 6961 6c69 7a65 7220 ated serializer \n-000ec930: 636f 6e76 6572 7473 2074 6865 2062 696e converts the bin\n-000ec940: 6172 7920 6461 7461 2074 6f2f 6672 6f6d ary data to/from\n-000ec950: 2062 6173 6536 3420 696e 2058 4d4c 2e3c base64 in XML.<\n-000ec960: 2f70 3e0a 3c70 3e54 6f20 696e 7472 6f64 /p>. To introd\n-000ec970: 7563 6520 6120 6e65 7720 584d 4c20 7363 uce a new XML sc\n-000ec980: 6865 6d61 2074 7970 6520 6465 7269 7665 hema type derive\n-000ec990: 6420 6672 6f6d 203c 656d 3e3c 636f 6465 d from The T\n-000ed170: 6865 2061 6476 616e 7461 6765 206f 6620 he advantage of \n-000ed180: 7468 6973 2073 7472 7563 7420 6f72 2063 this struct or c\n-000ed190: 6c61 7373 2069 7320 7468 6520 6162 696c lass is the abil\n-000ed1a0: 6974 7920 746f 2073 6572 6961 6c69 7a65 ity to serialize\n-000ed1b0: 7220 7261 7720 6269 6e61 7279 2064 6174 r raw binary dat\n-000ed1c0: 6120 6672 6f6d 206d 656d 6f72 792c 2073 a from memory, s\n-000ed1d0: 696e 6365 2074 6865 2073 6f61 7063 7070 ince the soapcpp\n-000ed1e0: 322d 6765 6e65 7261 7465 6420 7365 7269 2-generated seri\n-000ed1f0: 616c 697a 6572 2063 6f6e 7665 7274 7320 alizer converts \n-000ed200: 7468 6520 6269 6e61 7279 2064 6174 6120 the binary data \n-000ed210: 746f 2f66 726f 6d20 6865 7861 6465 6369 to/from hexadeci\n-000ed220: 6d61 6c20 696e 2058 4d4c 2e3c 2f70 3e0a mal in XML. If a binary t\n-000ed240: 7970 6520 7375 6368 2061 7320 3c63 6f64 ype such as This\n-000ed6e0: 206c 6574 7320 736f 6170 6370 7032 2067 lets soapcpp2 g\n-000ed6f0: 656e 6572 6174 6520 3c65 6d3e 3c63 6f64 enerate .... \n-000ed760: 3c61 2068 7265 663d 2223 223e 4261 636b Back\n-000ed770: 2074 6f20 7461 626c 6520 6f66 2063 6f6e to table of con\n-000ed780: 7465 6e74 733c 2f61 3e3c 2f70 3e0a 3c68 tents SOA\n-000ed7f0: 5020 6861 7320 7365 7665 7261 6c20 7374 P has several st\n-000ed800: 796c 6573 3a3c 2f70 3e0a 3c75 6c3e 0a3c yles: \n-000ee730: 546f 2065 6e61 626c 6520 534f 4150 2052 To enable SOAP R\n-000ee740: 5043 2065 6e63 6f64 696e 6720 666f 7220 PC encoding for \n-000ee750: 6120 7061 7274 6963 756c 6172 2073 6572 a particular ser\n-000ee760: 7669 6365 206f 7065 7261 7469 6f6e 2072 vice operation r\n-000ee770: 6573 706f 6e73 652c 2075 7365 3a3c 2f70 esponse, use: Likewise\n-000ee8f0: 2c20 796f 7520 6361 6e20 7370 6563 6966 , you can specif\n-000ee900: 7920 646f 6375 6d65 6e74 2f6c 6974 6572 y document/liter\n-000ee910: 616c 2061 6e64 2052 5043 206c 6974 6572 al and RPC liter\n-000ee920: 616c 206d 6573 7361 6765 732e 2054 6865 al messages. The\n-000ee930: 2064 6566 6175 6c74 2073 7479 6c65 2069 default style i\n-000ee940: 7320 646f 6375 6d65 6e74 2f6c 6974 6572 s document/liter\n-000ee950: 616c 2c20 756e 6c65 7373 203c 623e 3c63 al, unless For\n-000ee9d0: 2074 6865 203c 636f 6465 3e73 7479 6c65 the See als\n-000eebb0: 6f20 3c61 2068 7265 663d 222e 2e2f 2e2e o C \n-000eebe0: 616e 6420 432b 2b20 584d 4c20 6461 7461 and C++ XML data\n-000eebf0: 2062 696e 6469 6e67 733c 2f61 3e20 646f bindings do\n-000eec00: 6375 6d65 6e74 6174 696f 6e20 666f 7220 cumentation for \n-000eec10: 6469 6666 6572 656e 6365 7320 696e 2058 differences in X\n-000eec20: 4d4c 2073 6572 6961 6c69 7a61 7469 6f6e ML serialization\n-000eec30: 2077 6865 6e20 7573 696e 6720 7468 6520 when using the \n-000eec40: 534f 4150 2052 5043 2065 6e63 6f64 6564 SOAP RPC encoded\n-000eec50: 2061 6e64 2064 6f63 756d 656e 742f 6c69 and document/li\n-000eec60: 7465 7261 6c20 6d65 7373 6167 696e 6720 teral messaging \n-000eec70: 7374 796c 6573 2e3c 2f70 3e0a 3c70 3ef0 styles. .\n-000eec80: 9f94 9d20 3c61 2068 7265 663d 2223 223e ... \n-000eec90: 4261 636b 2074 6f20 7461 626c 6520 6f66 Back to table of\n-000eeca0: 2063 6f6e 7465 6e74 733c 2f61 3e3c 2f70 contents XML is sto\n-000eed20: 7265 6420 696e 2022 6c69 7465 7261 6c22 red in \"literal\"\n-000eed30: 2058 4d4c 2073 7472 696e 6773 2077 6869 XML strings whi\n-000eed40: 6368 2061 7265 2074 6865 2062 7569 6c74 ch are the built\n-000eed50: 2d69 6e20 3c63 6f64 653e 5f58 4d4c 3c2f -in To declar\n-000eeea0: 6520 6120 432b 2b20 3c63 6f64 653e 7374 e a C++ To use b\n-000ef000: 6f74 6820 6174 2074 6865 2073 616d 6520 oth at the same \n-000ef010: 7469 6d65 3a3c 2f70 3e0a 3c64 6976 2063 time: The dif\n-000ef0f0: 6665 7265 6e63 6573 2062 6574 7765 656e ferences between\n-000ef100: 2074 6865 2075 7365 206f 6620 7265 6775 the use of regu\n-000ef110: 6c61 7220 382d 6269 7420 7374 7269 6e67 lar 8-bit string\n-000ef120: 7320 7665 7273 7573 2077 6964 6520 6368 s versus wide ch\n-000ef130: 6172 6163 7465 7220 7374 7269 6e67 7320 aracter strings \n-000ef140: 666f 7220 584d 4c20 646f 6375 6d65 6e74 for XML document\n-000ef150: 7320 6172 653a 3c2f 703e 0a3c 756c 3e0a s are: \n-000ef1f0: f09f 949d 203c 6120 6872 6566 3d22 2322 .... Back to table o\n-000ef210: 6620 636f 6e74 656e 7473 3c2f 613e 3c2f f contents\n-000ef220: 703e 0a3c 6831 3e3c 6120 636c 6173 733d p>. Some XML va\n-000ef270: 6c69 6461 7469 6f6e 2063 6f6e 7374 7261 lidation constra\n-000ef280: 696e 7473 2061 7265 206e 6f74 2061 7574 ints are not aut\n-000ef290: 6f6d 6174 6963 616c 6c79 2076 6572 6966 omatically verif\n-000ef2a0: 6965 6420 756e 6c65 7373 2065 7870 6c69 ied unless expli\n-000ef2b0: 6369 746c 7920 7365 7420 7573 696e 6720 citly set using \n-000ef2c0: 7468 6520 3c63 6f64 653e 2353 4f41 505f the Strict\n-000ef440: 2076 616c 6964 6174 696f 6e20 636f 6e73 validation cons\n-000ef450: 7472 6169 6e74 7320 6172 6520 656e 6162 traints are enab\n-000ef460: 6c65 6420 7769 7468 2074 6865 203c 636f led with the Th\n-000ef570: 6520 6e65 7874 2073 6563 7469 6f6e 7320 e next sections \n-000ef580: 6465 7363 7269 6265 2074 6865 2074 7970 describe the typ\n-000ef590: 6520 6f66 2063 6f6e 7374 7261 696e 7473 e of constraints\n-000ef5a0: 2076 616c 6964 6174 6564 2077 6865 6e20 validated when \n-000ef5b0: 3c63 6f64 653e 2353 4f41 505f 584d 4c5f Use compi\n-000ef630: 6c65 7220 666c 6167 203c 636f 6465 3e23 ler flag See al\n-000ef6c0: 736f 203c 6120 6872 6566 3d22 2e2e 2f2e so C\n-000ef6f0: 2061 6e64 2043 2b2b 2058 4d4c 2064 6174 and C++ XML dat\n-000ef700: 6120 6269 6e64 696e 6773 3c2f 613e 2064 a bindings d\n-000ef710: 6f63 756d 656e 7461 7469 6f6e 2066 6f72 ocumentation for\n-000ef720: 206d 6f72 6520 6465 7461 696c 732e 3c2f more details.\n-000ef730: 703e 0a3c 703e f09f 949d 203c 6120 6872 p>. De\n-000ef7b0: 6661 756c 7420 7661 6c75 6573 2063 616e fault values can\n-000ef7c0: 2062 6520 6465 6669 6e65 6420 666f 7220 be defined for \n-000ef7d0: 6f70 7469 6f6e 616c 2065 6c65 6d65 6e74 optional element\n-000ef7e0: 7320 616e 6420 6174 7472 6962 7574 6573 s and attributes\n-000ef7f0: 2c20 7768 6963 6820 6d65 616e 7320 7468 , which means th\n-000ef800: 6174 2074 6865 2064 6566 6175 6c74 2076 at the default v\n-000ef810: 616c 7565 2077 696c 6c20 6265 2075 7365 alue will be use\n-000ef820: 6420 7768 656e 2074 6865 2065 6c65 6d65 d when the eleme\n-000ef830: 6e74 206f 7220 6174 7472 6962 7574 6520 nt or attribute \n-000ef840: 7661 6c75 6520 6973 206e 6f74 2070 7265 value is not pre\n-000ef850: 7365 6e74 2069 6e20 7468 6520 7061 7273 sent in the pars\n-000ef860: 6564 2058 4d4c 2e20 5365 6520 616c 736f ed XML. See also\n-000ef870: 2053 6563 7469 6f6e 203c 6120 636c 6173 Section Default values \n-000ef8b0: 666f 7220 6f6d 6974 7465 6420 584d 4c20 for omitted XML \n-000ef8c0: 656c 656d 656e 7473 2061 6e64 2061 7474 elements and att\n-000ef8d0: 7269 6275 7465 733c 2f61 3e20 616e 6420 ributes and \n-000ef8e0: 6578 616d 706c 6573 2069 6e20 7375 6273 examples in subs\n-000ef8f0: 6571 7565 6e74 2073 7562 7365 6374 696f equent subsectio\n-000ef900: 6e73 2062 656c 6f77 2e3c 2f70 3e0a 3c70 ns below. Default values \n-000ef920: 6d75 7374 2062 6520 7072 696d 6974 6976 must be primitiv\n-000ef930: 6520 7479 7065 732c 2069 6e74 6567 6572 e types, integer\n-000ef940: 2c20 666c 6f61 742c 2073 7472 696e 672c , float, string,\n-000ef950: 2065 7463 2e20 6f72 2070 6f69 6e74 6572 etc. or pointer\n-000ef960: 7320 746f 2070 7269 6d69 7469 7665 2074 s to primitive t\n-000ef970: 7970 6573 2e20 4465 6661 756c 7420 7661 ypes. Default va\n-000ef980: 6c75 6573 2063 616e 2062 6520 7370 6563 lues can be spec\n-000ef990: 6966 6965 6420 666f 7220 7374 7275 6374 ified for struct\n-000ef9a0: 2061 6e64 2063 6c61 7373 206d 656d 6265 and class membe\n-000ef9b0: 7273 2c20 6173 2073 686f 776e 2069 6e20 rs, as shown in \n-000ef9c0: 7468 6520 6578 616d 706c 6520 6265 6c6f the example belo\n-000ef9d0: 773a 3c2f 703e 0a3c 6469 7620 636c 6173 w: Upon de\n-000efcb0: 7365 7269 616c 697a 6174 696f 6e20 6f66 serialization of\n-000efcc0: 2061 6273 656e 7420 6461 7461 2c20 7468 absent data, th\n-000efcd0: 6573 6520 6d65 6d62 6572 7320 7769 6c6c ese members will\n-000efce0: 2062 6520 7365 7420 6163 636f 7264 696e be set accordin\n-000efcf0: 676c 792e 2057 6865 6e20 636c 6173 7365 gly. When classe\n-000efd00: 7320 6172 6520 696e 7374 616e 7469 6174 s are instantiat\n-000efd10: 6564 2077 6974 6820 3c63 6f64 653e 736f ed with See also C and \n-000efdb0: 432b 2b20 584d 4c20 6461 7461 2062 696e C++ XML data bin\n-000efdc0: 6469 6e67 733c 2f61 3e20 646f 6375 6d65 dings docume\n-000efdd0: 6e74 6174 696f 6e20 666f 7220 6d6f 7265 ntation for more\n-000efde0: 2064 6574 6169 6c73 2e3c 2f70 3e0a 3c70 details. .... Back to table \n-000efe10: 6f66 2063 6f6e 7465 6e74 733c 2f61 3e3c of contents<\n-000efe20: 2f70 3e0a 3c68 323e 3c61 2063 6c61 7373 /p>. Oc\n-000efe70: 6375 7272 656e 6365 2063 6f6e 7374 7261 currence constra\n-000efe80: 696e 7473 2073 7065 6369 6679 2074 6865 ints specify the\n-000efe90: 206d 696e 696d 756d 2061 6e64 2f6f 7220 minimum and/or \n-000efea0: 6d61 7869 6d75 6d20 6672 6571 7565 6e63 maximum frequenc\n-000efeb0: 7920 6f72 206f 7074 696f 6e61 6c69 7479 y or optionality\n-000efec0: 206f 6620 6f66 2061 7474 7269 6275 7465 of of attribute\n-000efed0: 7320 616e 6420 656c 656d 656e 7473 2e3c s and elements.<\n-000efee0: 2f70 3e0a 3c70 3ef0 9f94 9d20 3c61 2068 /p>. To f\n-000eff80: 6f72 6365 2074 6865 2076 616c 6964 6174 orce the validat\n-000eff90: 696f 6e20 6f66 206d 696e 4f63 6375 7273 ion of minOccurs\n-000effa0: 2061 6e64 206d 6178 4f63 6375 7273 2063 and maxOccurs c\n-000effb0: 6f6e 7374 7261 696e 7473 2074 6865 203c onstraints the <\n-000effc0: 636f 6465 3e23 534f 4150 5f58 4d4c 5f53 code>#SOAP_XML_S\n-000effd0: 5452 4943 543c 2f63 6f64 653e 2069 6e70 TRICT inp\n-000effe0: 7574 206d 6f64 6520 666c 6167 206d 7573 ut mode flag mus\n-000efff0: 7420 6265 2073 6574 2e20 5468 6520 6d69 t be set. The mi\n-000f0000: 6e4f 6363 7572 7320 616e 6420 6d61 784f nOccurs and maxO\n-000f0010: 6363 7572 7320 636f 6e73 7472 6169 6e74 ccurs constraint\n-000f0020: 7320 6172 6520 7370 6563 6966 6965 6420 s are specified \n-000f0030: 666f 7220 6d65 6d62 6572 7320 6f66 2061 for members of a\n-000f0040: 2073 7472 7563 7420 616e 6420 6d65 6d62 struct and memb\n-000f0050: 6572 7320 6f66 2061 2063 6c61 7373 2069 ers of a class i\n-000f0060: 6e20 6120 6865 6164 6572 2066 696c 6520 n a header file \n-000f0070: 7573 696e 6720 7468 6520 666f 6c6c 6f77 using the follow\n-000f0080: 696e 6720 7379 6e74 6178 3a3c 2f70 3e0a ing syntax: The \n-000f0130: 3c63 6f64 653e 6e75 6c6c 7074 723c 2f63 The <\n-000f0220: 636f 6465 3e6d 696e 4f63 6375 7273 3c2f code>minOccurs\n-000f0230: 636f 6465 3e20 616e 6420 3c63 6f64 653e code> and A\n-000f03b0: 2064 6566 6175 6c74 2069 6e69 7469 616c default initial\n-000f03c0: 697a 6174 696f 6e20 3c63 6f64 653e 7661 ization A fixed initi\n-000f0410: 616c 697a 6174 696f 6e20 7661 6c75 6520 alization value \n-000f0420: 6361 6e20 6265 2073 7065 6369 6669 6564 can be specified\n-000f0430: 2077 6974 6820 3c63 6f64 653e 3d3d 3c2f with \n-000f0470: 466f 7220 6578 616d 706c 653c 2f70 3e0a For example This defin\n-000f1360: 6573 2074 6865 2066 6f6c 6c6f 7769 6e67 es the following\n-000f1370: 2073 6368 656d 6120 7479 7065 2069 6e20 schema type in \n-000f1380: 3c65 6d3e 3c63 6f64 653e 7469 6d65 2e78 A comp\n-000f1590: 6c65 7854 7970 6520 7769 7468 2073 696d lexType with sim\n-000f15a0: 706c 6543 6f6e 7465 6e74 2069 7320 6465 pleContent is de\n-000f15b0: 6669 6e65 6420 7769 7468 2061 2077 7261 fined with a wra\n-000f15c0: 7070 6572 2073 7472 7563 742f 636c 6173 pper struct/clas\n-000f15d0: 733a 3c2f 703e 0a3c 6469 7620 636c 6173 s: This defines th\n-000f1790: 6520 666f 6c6c 6f77 696e 6720 7363 6865 e following sche\n-000f17a0: 6d61 2074 7970 6520 696e 203c 656d 3e3c ma type in <\n-000f17b0: 636f 6465 3e74 696d 652e 7873 643c 2f63 code>time.xsd: Data value \n-000f1f20: 6c65 6e67 7468 2063 6f6e 7374 7261 696e length constrain\n-000f1f30: 7473 206f 6620 7369 6d70 6c65 5479 7065 ts of simpleType\n-000f1f40: 7320 616e 6420 636f 6d70 6c65 7854 7970 s and complexTyp\n-000f1f50: 6573 2077 6974 6820 7369 6d70 6c65 436f es with simpleCo\n-000f1f60: 6e74 656e 7420 6172 6520 6465 6669 6e65 ntent are define\n-000f1f70: 6420 6173 2066 6f6c 6c6f 7773 3a3c 2f70 d as follows: Set th\n-000f2560: 6520 3c63 6f64 653e 2353 4f41 505f 584d e See also \n-000f25d0: 3c61 2068 7265 663d 222e 2e2f 2e2e 2f64 C an\n-000f2600: 6420 432b 2b20 584d 4c20 6461 7461 2062 d C++ XML data b\n-000f2610: 696e 6469 6e67 733c 2f61 3e20 646f 6375 indings docu\n-000f2620: 6d65 6e74 6174 696f 6e20 666f 7220 6d6f mentation for mo\n-000f2630: 7265 2064 6574 6169 6c73 2e3c 2f70 3e0a re details. .... Back to tabl\n-000f2660: 6520 6f66 2063 6f6e 7465 6e74 733c 2f61 e of contents Sim\n-000f26d0: 696c 6172 2074 6f20 6461 7461 206c 656e ilar to data len\n-000f26e0: 6774 6820 636f 6e73 7472 6169 6e74 7320 gth constraints \n-000f26f0: 666f 7220 7374 7269 6e67 2d62 6173 6564 for string-based\n-000f2700: 2064 6174 612c 2069 6e74 6567 6572 2061 data, integer a\n-000f2710: 6e64 2066 6c6f 6174 696e 6720 706f 696e nd floating poin\n-000f2720: 7420 7661 6c75 6520 7261 6e67 6520 636f t value range co\n-000f2730: 6e73 7472 6169 6e74 7320 6f6e 206e 756d nstraints on num\n-000f2740: 6572 6963 2073 696d 706c 6554 7970 6573 eric simpleTypes\n-000f2750: 2061 6e64 2063 6f6d 706c 6578 5479 7065 and complexType\n-000f2760: 7320 7769 7468 2073 696d 706c 6543 6f6e s with simpleCon\n-000f2770: 7465 6e74 2061 7265 2064 6563 6c61 7265 tent are declare\n-000f2780: 6420 7769 7468 203c 636f 6465 3e6c 6f77 d with This defi\n-000f3a10: 6e65 7320 7468 6520 666f 6c6c 6f77 696e nes the followin\n-000f3a20: 6720 7363 6865 6d61 2074 7970 6520 696e g schema type in\n-000f3a30: 203c 656d 3e3c 636f 6465 3e74 696d 652e \n-000f3d50: 2054 6865 2070 6174 7465 726e 2073 7472 The pattern str\n-000f3d60: 696e 6720 6d75 7374 2063 6f6e 7461 696e ing must contain\n-000f3d70: 2061 2076 616c 6964 2072 6567 756c 6172 a valid regular\n-000f3d80: 2065 7870 7265 7373 696f 6e2e 3c2f 703e expression. A special ca\n-000f3da0: 7365 2066 6f72 2043 2066 6f72 6d61 7420 se for C format \n-000f3db0: 7374 7269 6e67 2070 6174 7465 726e 7320 string patterns \n-000f3dc0: 6973 2069 6e74 726f 6475 6365 6420 696e is introduced in\n-000f3dd0: 2067 534f 4150 2032 2e38 2e31 382e 2057 gSOAP 2.8.18. W\n-000f3de0: 6865 6e20 3c65 6d3e 3c63 6f64 653e 7873 hen \n-000f4250: 7072 6f64 7563 6573 3a3c 2f70 3e0a 3c64 produces: H\n-000f4890: 6572 652c 2074 6865 203c 636f 6465 3e6e ere, the The \"colon\n-000f4ae0: 206e 6f74 6174 696f 6e22 2066 6f72 2073 notation\" for s\n-000f4af0: 7472 7563 742f 636c 6173 732f 756e 696f truct/class/unio\n-000f4b00: 6e20 6d65 6d62 6572 206e 616d 6573 2069 n member names i\n-000f4b10: 7320 7573 6564 2074 6f20 6f76 6572 7269 s used to overri\n-000f4b20: 6465 2065 6c65 6d65 6e74 2061 6e64 2061 de element and a\n-000f4b30: 7474 7269 6275 7465 2071 7561 6c69 6669 ttribute qualifi\n-000f4b40: 6564 206f 7220 756e 7175 616c 6966 6965 ed or unqualifie\n-000f4b50: 6420 666f 726d 732e 2054 6f20 6f76 6572 d forms. To over\n-000f4b60: 7269 6465 2074 6865 2066 6f72 6d20 666f ride the form fo\n-000f4b70: 7220 696e 6469 7669 6475 616c 206d 656d r individual mem\n-000f4b80: 6265 7273 2074 6861 7420 7265 7072 6573 bers that repres\n-000f4b90: 656e 7420 656c 656d 656e 7473 2061 6e64 ent elements and\n-000f4ba0: 2061 7474 7269 6275 7465 732c 2075 7365 attributes, use\n-000f4bb0: 2061 206e 616d 6573 7061 6365 2070 7265 a namespace pre\n-000f4bc0: 6669 7820 616e 6420 636f 6c6f 6e20 7769 fix and colon wi\n-000f4bd0: 7468 2074 6865 206d 656d 6265 7220 6e61 th the member na\n-000f4be0: 6d65 3a3c 2f70 3e0a 3c64 6976 2063 6c61 me: where The colon not\n-000f5000: 6174 696f 6e20 6973 2061 2073 796e 7461 ation is a synta\n-000f5010: 6374 6963 206e 6f74 6174 696f 6e20 7573 ctic notation us\n-000f5020: 6564 206f 6e6c 7920 696e 2074 6865 2069 ed only in the i\n-000f5030: 6e74 6572 6661 6365 2068 6561 6465 7220 nterface header \n-000f5040: 6669 6c65 2073 796e 7461 782c 2069 7420 file syntax, it \n-000f5050: 6973 206e 6f74 2074 7261 6e73 6c61 7465 is not translate\n-000f5060: 6420 746f 2074 6865 2043 2f43 2b2b 206f d to the C/C++ o\n-000f5070: 7574 7075 742e 3c2f 703e 0a3c 703e 5468 utput. Th\n-000f5080: 6520 636f 6c6f 6e20 6e6f 7461 7469 6f6e e colon notation\n-000f5090: 2064 6f65 7320 6e6f 7420 6176 6f69 6420 does not avoid \n-000f50a0: 6e61 6d65 2063 6c61 7368 6573 2062 6574 name clashes bet\n-000f50b0: 7765 656e 206d 656d 6265 7273 2e20 466f ween members. Fo\n-000f50c0: 7220 6578 616d 706c 653a 3c2f 703e 0a3c r example: results in a \n-000f5220: 7265 6465 6669 6e69 7469 6f6e 2065 7272 redefinition err\n-000f5230: 6f72 2c20 7369 6e63 6520 626f 7468 206d or, since both m\n-000f5240: 656d 6265 7273 2068 6176 6520 7468 6520 embers have the \n-000f5250: 7361 6d65 206e 616d 652e 2054 6f20 6176 same name. To av\n-000f5260: 6f69 6420 6e61 6d65 2063 6c61 7368 6573 oid name clashes\n-000f5270: 2c20 7573 6520 6120 756e 6465 7273 636f , use a undersco\n-000f5280: 7265 2073 7566 6669 783a 3c2f 703e 0a3c re suffix: which\n-000f5560: 2061 766f 6964 7320 7468 6520 6e61 6d65 avoids the name\n-000f5570: 2063 6c61 7368 2e20 486f 7765 7665 722c clash. However,\n-000f5580: 2074 6865 2072 6573 756c 7469 6e67 2073 the resulting s\n-000f5590: 6368 656d 6120 6973 2064 6966 6665 7265 chema is differe\n-000f55a0: 6e74 2073 696e 6365 2074 6865 206c 6173 nt since the las\n-000f55b0: 7420 6578 616d 706c 6520 6765 6e65 7261 t example genera\n-000f55c0: 7465 7320 6120 676c 6f62 616c 203c 636f tes a global \n-000f5990: 7768 6963 6820 6765 6e65 7261 7465 7320 which generates \n-000f59a0: 7468 6520 666f 6c6c 6f77 696e 6720 3c65 the following See also \n-000f65b0: 3c61 2068 7265 663d 222e 2e2f 2e2e 2f64 C an\n-000f65e0: 6420 432b 2b20 584d 4c20 6461 7461 2062 d C++ XML data b\n-000f65f0: 696e 6469 6e67 733c 2f61 3e20 646f 6375 indings docu\n-000f6600: 6d65 6e74 6174 696f 6e20 666f 7220 6d6f mentation for mo\n-000f6610: 7265 2064 6574 6169 6c73 2e3c 2f70 3e0a re details. .... Back to tabl\n-000f6640: 6520 6f66 2063 6f6e 7465 6e74 733c 2f61 e of contents A namespace\n-000f66c0: 206d 6170 7069 6e67 2074 6162 6c65 2073 mapping table s\n-000f66d0: 686f 756c 6420 6265 2069 6e63 6c75 6465 hould be include\n-000f66e0: 6420 696e 2074 6865 2073 6f75 7263 6520 d in the source \n-000f66f0: 636f 6465 206f 6620 636c 6965 6e74 2061 code of client a\n-000f6700: 6e64 2073 6572 7669 6365 2061 7070 6c69 nd service appli\n-000f6710: 6361 7469 6f6e 732e 2054 6865 206d 6170 cations. The map\n-000f6720: 7069 6e67 2074 6162 6c65 2069 7320 7573 ping table is us\n-000f6730: 6564 2062 7920 7468 6520 7365 7269 616c ed by the serial\n-000f6740: 697a 6572 7320 616e 6420 6465 7365 7269 izers and deseri\n-000f6750: 616c 697a 6572 7320 6f66 2074 6865 2073 alizers of the s\n-000f6760: 7475 6220 616e 6420 736b 656c 6574 6f6e tub and skeleton\n-000f6770: 2066 756e 6374 696f 6e73 2074 6f20 7072 functions to pr\n-000f6780: 6f64 7563 6520 7661 6c69 6420 584d 4c20 oduce valid XML \n-000f6790: 6d65 7373 6167 6573 2061 6e64 2074 6f20 messages and to \n-000f67a0: 7061 7273 6520 616e 6420 7661 6c69 6461 parse and valida\n-000f67b0: 7465 2058 4d4c 206d 6573 7361 6765 732e te XML messages.\n-000f67c0: 2041 2074 7970 6963 616c 206d 6170 7069 A typical mappi\n-000f67d0: 6e67 2074 6162 6c65 2069 7320 7368 6f77 ng table is show\n-000f67e0: 6e20 6265 6c6f 773a 3c2f 703e 0a3c 6469 n below: An option\n-000f7100: 616c 2074 6869 7264 2063 6f6c 756d 6e20 al third column \n-000f7110: 696e 2074 6865 206e 616d 6573 7061 6365 in the namespace\n-000f7120: 206d 6170 7069 6e67 2074 6162 6c65 206d mapping table m\n-000f7130: 6179 2062 6520 7370 6563 6966 6965 6420 ay be specified \n-000f7140: 7468 6174 2063 6f6e 7461 696e 7320 6120 that contains a \n-000f7150: 6e61 6d65 7370 6163 6520 5552 4920 7061 namespace URI pa\n-000f7160: 7474 6572 6e2e 2054 6865 2070 6174 7465 ttern. The patte\n-000f7170: 726e 7320 7072 6f76 6964 6520 616e 2061 rns provide an a\n-000f7180: 6c74 6572 6e61 7469 7665 206e 616d 6573 lternative names\n-000f7190: 7061 6365 2066 6f72 2074 6865 2076 616c pace for the val\n-000f71a0: 6964 6174 696f 6e20 6f66 2070 6172 7365 idation of parse\n-000f71b0: 6420 584d 4c20 6d65 7373 6167 6573 2e20 d XML messages. \n-000f71c0: 496e 2074 6869 7320 7061 7474 6572 6e2c In this pattern,\n-000f71d0: 2064 6173 6865 7320 283c 636f 6465 3e2d dashes ( Or\n-000f7930: 2061 6c74 6572 6e61 7469 7665 6c79 2c20 alternatively, \n-000f7940: 6173 7465 7269 736b 7320 6361 6e20 6265 asterisks can be\n-000f7950: 2075 7365 6420 6173 2077 696c 6463 6172 used as wildcar\n-000f7960: 6473 2066 6f72 206d 756c 7469 706c 6520 ds for multiple \n-000f7970: 6368 6172 6163 7465 7273 3a3c 2f70 3e0a characters: A na\n-000f7fb0: 6d65 7370 6163 6520 6d61 7070 696e 6720 mespace mapping \n-000f7fc0: 7461 626c 6520 6973 2061 7574 6f6d 6174 table is automat\n-000f7fd0: 6963 616c 6c79 2067 656e 6572 6174 6564 ically generated\n-000f7fe0: 2077 6974 6820 7072 6566 6978 6573 2061 with prefixes a\n-000f7ff0: 6e64 2055 5249 7320 696e 2074 6865 2074 nd URIs in the t\n-000f8000: 6162 6c65 2074 6861 7420 6172 6520 6465 able that are de\n-000f8010: 636c 6172 6564 2077 6974 6820 3c63 6f64 clared with When pa\n-000f8210: 7273 696e 6720 584d 4c20 616e 6420 6465 rsing XML and de\n-000f8220: 7365 7269 616c 697a 696e 6720 6461 7461 serializing data\n-000f8230: 2c20 6e61 6d65 7370 6163 6520 5552 4973 , namespace URIs\n-000f8240: 2069 6e20 7468 6520 584d 4c20 6d65 7373 in the XML mess\n-000f8250: 6167 6573 2061 7265 206d 6174 6368 6564 ages are matched\n-000f8260: 2061 6761 696e 7374 2074 6865 2073 6563 against the sec\n-000f8270: 6f6e 6420 616e 6420 7468 6972 6420 636f ond and third co\n-000f8280: 6c75 6d6e 206f 6620 7468 6520 6e61 6d65 lumn of the name\n-000f8290: 7370 6163 6520 6d61 7070 696e 6720 7461 space mapping ta\n-000f82a0: 626c 652c 2073 6561 7263 6869 6e67 2066 ble, searching f\n-000f82b0: 726f 6d20 7468 6520 746f 7020 746f 2074 rom the top to t\n-000f82c0: 6865 2062 6f74 746f 6d20 6f66 2074 6865 he bottom of the\n-000f82d0: 2074 6162 6c65 2e20 5468 6520 6163 7475 table. The actu\n-000f82e0: 616c 2070 7265 6669 7820 7573 6564 2069 al prefix used i\n-000f82f0: 6e20 7468 6520 584d 4c20 6d65 7373 6167 n the XML messag\n-000f8300: 6520 6973 2069 7272 656c 6576 616e 7420 e is irrelevant \n-000f8310: 6173 2074 6865 2055 5249 2061 7373 6f63 as the URI assoc\n-000f8320: 6961 7465 6420 7769 7468 2074 6865 2070 iated with the p\n-000f8330: 7265 6669 7820 6973 2072 656c 6576 616e refix is relevan\n-000f8340: 7420 746f 2064 6566 696e 6520 7468 6520 t to define the \n-000f8350: 584d 4c20 6e61 6d65 7370 6163 6520 746f XML namespace to\n-000f8360: 2077 6869 6368 2061 2071 7561 6c69 6669 which a qualifi\n-000f8370: 6564 2065 6c65 6d65 6e74 206f 7220 6174 ed element or at\n-000f8380: 7472 6962 7574 6520 6265 6c6f 6e67 732e tribute belongs.\n-000f8390: 2057 6865 6e20 6120 6d61 7463 6820 6973 When a match is\n-000f83a0: 2066 6f75 6e64 2c20 7468 6520 6e61 6d65 found, the name\n-000f83b0: 7370 6163 6520 7072 6566 6978 2069 6e20 space prefix in \n-000f83c0: 7468 6520 6669 7273 7420 636f 6c75 6d6e the first column\n-000f83d0: 206f 6620 7468 6520 7461 626c 6520 6973 of the table is\n-000f83e0: 2063 6f6e 7369 6465 7265 6420 7365 6d61 considered sema\n-000f83f0: 6e74 6963 616c 6c79 2069 6465 6e74 6963 ntically identic\n-000f8400: 616c 2074 6f20 7468 6520 6e61 6d65 7370 al to the namesp\n-000f8410: 6163 6520 7072 6566 6978 2075 7365 6420 ace prefix used \n-000f8420: 6279 2074 6865 2071 7561 6c69 6669 6564 by the qualified\n-000f8430: 2058 4d4c 2065 6c65 6d65 6e74 2061 6e64 XML element and\n-000f8440: 2061 7474 7269 6275 7465 2070 6172 7365 attribute parse\n-000f8450: 642c 2065 7665 6e20 7768 656e 2074 6865 d, even when the\n-000f8460: 2070 7265 6669 7820 6e61 6d65 7320 6469 prefix names di\n-000f8470: 6666 6572 2e20 5468 6973 206e 6f72 6d61 ffer. This norma\n-000f8480: 6c69 7a61 7469 6f6e 206f 6620 7072 6566 lization of pref\n-000f8490: 6978 6573 2069 7320 696e 7669 7369 626c ixes is invisibl\n-000f84a0: 6520 746f 2074 6865 2075 7365 7220 6f66 e to the user of\n-000f84b0: 2067 534f 4150 2061 6e64 206d 616b 6573 gSOAP and makes\n-000f84c0: 2063 6f64 696e 6720 7769 7468 2058 4d4c coding with XML\n-000f84d0: 2065 6173 6965 722e 2046 6f72 2065 7861 easier. For exa\n-000f84e0: 6d70 6c65 2c20 7768 656e 2058 5344 2051 mple, when XSD Q\n-000f84f0: 4e61 6d65 7320 6172 6520 7061 7273 6564 Names are parsed\n-000f8500: 2069 6e74 6f20 7374 7269 6e67 7320 7573 into strings us\n-000f8510: 696e 6720 7468 6520 6275 696c 742d 696e ing the built-in\n-000f8520: 2073 6f61 7063 7070 3220 3c63 6f64 653e soapcpp2 For ex\n-000f86a0: 616d 706c 652c 206c 6574 2773 2073 6179 ample, let's say\n-000f86b0: 2077 6520 6861 7665 2074 6865 2066 6f6c we have the fol\n-000f86c0: 6c6f 7769 6e67 2073 7472 7563 7473 3a3c lowing structs:<\n-000f86d0: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>. The n\n-000f87f0: 616d 6573 7061 6365 206d 6170 7069 6e67 amespace mapping\n-000f8800: 2074 6162 6c65 2067 656e 6572 6174 6564 table generated\n-000f8810: 2062 7920 736f 6170 6370 7032 2068 6173 by soapcpp2 has\n-000f8820: 2074 6865 2066 6f6c 6c6f 7769 6e67 2065 the following e\n-000f8830: 6e74 7269 6573 3a3c 2f70 3e0a 3c64 6976 ntries: Then, the \n-000f8cb0: 666f 6c6c 6f77 696e 6720 584d 4c20 656c following XML el\n-000f8cc0: 656d 656e 7473 2077 696c 6c20 6d61 7463 ements will matc\n-000f8cd0: 6820 7468 6573 6520 7374 7275 6374 733a h these structs:\n-000f8ce0: 3c2f 703e 0a3c 6469 7620 636c 6173 733d In\n-000f9010: 7374 6561 6420 6f66 206f 6e65 2062 6967 stead of one big\n-000f9020: 206e 616d 6573 7061 6365 2074 6162 6c65 namespace table\n-000f9030: 2074 6861 7420 636f 6e74 6169 6e73 2061 that contains a\n-000f9040: 6c6c 2058 4d4c 206e 616d 6573 7061 6365 ll XML namespace\n-000f9050: 2070 7265 6669 7865 7320 7769 7468 2074 prefixes with t\n-000f9060: 6865 6972 2055 5249 732c 2074 6865 7265 heir URIs, there\n-000f9070: 2061 7265 2063 6173 6573 2077 6865 6e20 are cases when \n-000f9080: 6974 2069 7320 6465 7369 7261 626c 6520 it is desirable \n-000f9090: 746f 2075 7365 206d 756c 7469 706c 6520 to use multiple \n-000f90a0: 6e61 6d65 7370 6163 6520 7461 626c 6573 namespace tables\n-000f90b0: 2c20 6f6e 6520 666f 7220 6561 6368 2073 , one for each s\n-000f90c0: 6572 7669 6365 2e20 5468 6973 2061 766f ervice. This avo\n-000f90d0: 6964 7320 6c65 616b 696e 6720 6e61 6d65 ids leaking name\n-000f90e0: 7370 6163 6520 7072 6566 6978 6573 2069 space prefixes i\n-000f90f0: 6e20 584d 4c20 6d65 7373 6167 6573 2074 n XML messages t\n-000f9100: 6861 7420 6861 7665 206e 6f74 6869 6e67 hat have nothing\n-000f9110: 2074 6f20 646f 2077 6974 6820 7468 6520 to do with the \n-000f9120: 7365 7276 6963 6520 696e 766f 6b65 642e service invoked.\n-000f9130: 2049 6e20 7072 696e 6369 706c 6520 7468 In principle th\n-000f9140: 6572 6520 6973 206e 6f20 6861 726d 2074 ere is no harm t\n-000f9150: 6f20 6c65 616b 2074 6865 7365 206e 616d o leak these nam\n-000f9160: 6573 7061 6365 2070 7265 6669 7865 732c espace prefixes,\n-000f9170: 2062 7574 2074 6865 206d 6573 7361 6765 but the message\n-000f9180: 7320 6172 6520 6c65 7373 2063 6f6d 7061 s are less compa\n-000f9190: 6374 2061 6e64 206e 6f74 2061 7320 636c ct and not as cl\n-000f91a0: 6561 6e2e 2054 6f20 7573 6520 6d75 6c74 ean. To use mult\n-000f91b0: 6970 6c65 206e 616d 6573 7061 6365 2074 iple namespace t\n-000f91c0: 6162 6c65 7320 6174 2074 6865 2063 6c69 ables at the cli\n-000f91d0: 656e 7420 7369 6465 2069 7320 646f 6e65 ent side is done\n-000f91e0: 2061 7320 666f 6c6c 6f77 733a 3c2f 703e as follows: Likew\n-000f9840: 6973 652c 206f 6e20 7468 6520 7365 7276 ise, on the serv\n-000f9850: 6572 2073 6964 6520 6361 6c6c 203c 636f er side call The XML m\n-000f9a30: 6573 7361 6765 7320 7072 6f64 7563 6564 essages produced\n-000f9a40: 2062 7920 7468 6520 6753 4f41 5020 656e by the gSOAP en\n-000f9a50: 6769 6e65 2069 6e63 6c75 6465 2061 6c6c gine include all\n-000f9a60: 203c 656d 3e3c 636f 6465 3e78 6d6c 736e ...\n-000f9dd0: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n-000f9de0: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n-000f9df0: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents A built-in\n-000f9e50: 2053 4f41 5020 4865 6164 6572 2064 6174 SOAP Header dat\n-000f9e60: 6120 7374 7275 6374 7572 6520 3c63 6f64 a structure You ca\n-000f9fd0: 6e20 6372 6561 7465 2079 6f75 7220 6f77 n create your ow\n-000f9fe0: 6e20 534f 4150 2048 6561 6465 7220 7374 n SOAP Header st\n-000f9ff0: 7275 6374 2073 696d 706c 7920 6279 2064 ruct simply by d\n-000fa000: 6563 6c61 7269 6e67 2069 7420 696e 2061 eclaring it in a\n-000fa010: 6e20 696e 7465 7266 6163 6520 6865 6164 n interface head\n-000fa020: 6572 2066 696c 6520 666f 7220 736f 6170 er file for soap\n-000fa030: 6370 7032 2061 6e64 2062 7920 6164 6469 cpp2 and by addi\n-000fa040: 6e67 206d 656d 6265 7273 2074 6861 7420 ng members that \n-000fa050: 6d75 7374 2062 6520 7175 616c 6966 6965 must be qualifie\n-000fa060: 6420 7769 7468 206e 616d 6573 7061 6365 d with namespace\n-000fa070: 2070 7265 6669 7865 7320 746f 2063 6f6e prefixes to con\n-000fa080: 666f 726d 2074 6f20 7468 6520 534f 4150 form to the SOAP\n-000fa090: 2048 6561 6465 7220 7072 6f63 6573 7369 Header processi\n-000fa0a0: 6e67 2072 6571 7569 7265 6d65 6e74 7320 ng requirements \n-000fa0b0: 7468 6174 2053 4f41 5020 4865 6164 6572 that SOAP Header\n-000fa0c0: 2065 6c65 6d65 6e74 7320 6d75 7374 2062 elements must b\n-000fa0d0: 6520 6e61 6d65 7370 6163 6520 7175 616c e namespace qual\n-000fa0e0: 6966 6965 642e 3c2f 703e 0a3c 703e 466f ified. Fo\n-000fa0f0: 7220 6578 616d 706c 652c 2061 7373 756d r example, assum\n-000fa100: 6520 7468 6174 2074 7261 6e73 6163 7469 e that transacti\n-000fa110: 6f6e 2064 6174 6120 7368 6f75 6c64 2062 on data should b\n-000fa120: 6520 7069 6767 792d 6261 636b 6564 2077 e piggy-backed w\n-000fa130: 6974 6820 534f 4150 206d 6573 7361 6765 ith SOAP message\n-000fa140: 7320 696e 2053 4f41 5020 4865 6164 6572 s in SOAP Header\n-000fa150: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 : This declar\n-000fa660: 6573 2061 2073 6572 7669 6365 206f 7065 es a service ope\n-000fa670: 7261 7469 6f6e 2074 6861 7420 7365 6e64 ration that send\n-000fa680: 7320 6d65 7373 6167 6573 2077 6974 6820 s messages with \n-000fa690: 616e 2069 6e70 7574 2053 4f41 5020 6865 an input SOAP he\n-000fa6a0: 6164 6572 203c 636f 6465 3e74 5f5f 7472 ader Likewise, y\n-000fb010: 6f75 2063 616e 2073 7065 6369 6679 2074 ou can specify t\n-000fb020: 6861 7420 626f 7468 2069 6e70 7574 2061 hat both input a\n-000fb030: 6e64 206f 7574 7075 7420 6d65 7373 6167 nd output messag\n-000fb040: 6573 2068 6176 6520 7468 6520 7361 6d65 es have the same\n-000fb050: 2068 6561 6465 7220 7769 7468 203c 636f header with To set u\n-000fb130: 7020 6120 534f 4150 2048 6561 6465 7220 p a SOAP Header \n-000fb140: 6174 2074 6865 2063 6c69 656e 7420 7369 at the client si\n-000fb150: 6465 2074 6861 7420 636f 6e74 6169 6e73 de that contains\n-000fb160: 2074 6865 203c 636f 6465 3e74 5f5f 7472 the \n-000fca70: 5375 7070 6f73 6520 6d65 7468 6f64 203c Suppose method <\n-000fca80: 636f 6465 3e6e 735f 5f6c 6f67 696e 3c2f code>ns__login\n-000fca90: 636f 6465 3e20 7573 6573 2062 6f74 6820 code> uses both \n-000fcaa0: 6865 6164 6572 2070 6172 7473 2028 6174 header parts (at\n-000fcab0: 206d 6f73 7429 2c20 7468 656e 2074 6869 most), then thi\n-000fcac0: 7320 6973 2064 6563 6c61 7265 6420 6173 s is declared as\n-000fcad0: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 : Suppos\n-000fcc40: 6520 6d65 7468 6f64 203c 636f 6465 3e6e e method Note that the m\n-000fcda0: 6574 686f 6420 6e61 6d65 2061 6e64 2068 ethod name and h\n-000fcdb0: 6561 6465 7220 7061 7274 206e 616d 6573 eader part names\n-000fcdc0: 206d 7573 7420 6265 206e 616d 6573 7061 must be namespa\n-000fcdd0: 6365 2071 7561 6c69 6669 6564 2e20 5468 ce qualified. Th\n-000fcde0: 6520 6865 6164 6572 7320 6d75 7374 2062 e headers must b\n-000fcdf0: 6520 7072 6573 656e 7420 696e 2061 6c6c e present in all\n-000fce00: 206f 7065 7261 7469 6f6e 7320 7468 6174 operations that\n-000fce10: 2064 6563 6c61 7265 6420 7468 6520 6865 declared the he\n-000fce20: 6164 6572 2070 6172 7473 2e3c 2f70 3e0a ader parts. To specify th\n-000fce40: 6520 6865 6164 6572 2070 6172 7473 2066 e header parts f\n-000fce50: 6f72 2074 6865 206d 6574 686f 6420 696e or the method in\n-000fce60: 7075 7420 286d 6574 686f 6420 7265 7175 put (method requ\n-000fce70: 6573 7420 6d65 7373 6167 6529 2c20 7573 est message), us\n-000fce80: 653a 3c2f 703e 0a3c 6469 7620 636c 6173 e: S\n-000fcf40: 696d 696c 6172 6c79 2c20 746f 2073 7065 imilarly, to spe\n-000fcf50: 6369 6679 2074 6865 2068 6561 6465 7220 cify the header \n-000fcf60: 7061 7274 7320 666f 7220 7468 6520 6d65 parts for the me\n-000fcf70: 7468 6f64 206f 7574 7075 7420 286d 6574 thod output (met\n-000fcf80: 686f 6420 7265 7370 6f6e 7365 206d 6573 hod response mes\n-000fcf90: 7361 6765 292c 2075 7365 3a3c 2f70 3e0a sage), use: The dec\n-000fd060: 6c61 7261 7469 6f6e 7320 6f6e 6c79 2061 larations only a\n-000fd070: 6666 6563 7420 7468 6520 5753 444c 2e20 ffect the WSDL. \n-000fd080: 466f 7220 6578 616d 706c 653a 3c2f 703e For example: See also \n-000fd450: 4150 4920 646f 6375 6d65 6e74 6174 696f API documentatio\n-000fd460: 6e20 4d6f 6475 6c65 203c 6120 636c 6173 n Module Header s\n-000fd4a0: 7472 7563 7475 7265 2061 6e64 2066 756e tructure and fun\n-000fd4b0: 6374 696f 6e73 3c2f 613e 2e3c 2f70 3e0a ctions. .... Back to tabl\n-000fd4e0: 6520 6f66 2063 6f6e 7465 6e74 733c 2f61 e of contents A buil\n-000fd540: 742d 696e 2053 4f41 5020 4661 756c 7420 t-in SOAP Fault \n-000fd550: 6461 7461 2073 7472 7563 7475 7265 203c data structure <\n-000fd560: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>SO\n-000fd5c0: 4150 5f45 4e56 5f5f 4661 756c 743c 2f61 AP_ENV__Fault is gene\n-000fd5e0: 7261 7465 6420 6279 2074 6865 2073 6f61 rated by the soa\n-000fd5f0: 7063 7070 3220 746f 6f6c 2066 6f72 2065 pcpp2 tool for e\n-000fd600: 7863 6861 6e67 696e 6720 6578 6365 7074 xchanging except\n-000fd610: 696f 6e20 6d65 7373 6167 6573 2e20 5468 ion messages. Th\n-000fd620: 6973 2073 7472 7563 7475 7265 2068 6173 is structure has\n-000fd630: 2074 6865 2067 656e 6572 616c 2066 6f72 the general for\n-000fd640: 6d3a 3c2f 703e 0a3c 6469 7620 636c 6173 m: The first \n-00100010: 666f 7572 206d 656d 6265 7273 2069 6e20 four members in \n-00100020: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 The \n-001004e0: 5768 656e 2061 2075 7365 722d 6465 6669 When a user-defi\n-001004f0: 6e65 2073 6572 7669 6365 206f 7065 7261 ne service opera\n-00100500: 7469 6f6e 2066 756e 6374 696f 6e20 7265 tion function re\n-00100510: 7475 726e 7320 616e 2065 7272 6f72 2077 turns an error w\n-00100520: 6974 6820 3c63 6f64 653e 3c61 2063 6c61 ith Server-\n-00100860: 7369 6465 2066 6175 6c74 7320 6172 6520 side faults are \n-00100870: 7261 6973 6564 2077 6974 6820 3c63 6f64 raised with In the exampl\n-00100f80: 652c 2074 6865 2053 4f41 5020 4661 756c e, the SOAP Faul\n-00100f90: 7420 6465 7461 696c 7320 7765 7265 2065 t details were e\n-00100fa0: 6d70 7479 2028 4e55 4c4c 292e 2059 6f75 mpty (NULL). You\n-00100fb0: 206d 6179 2070 6173 7320 616e 2058 4d4c may pass an XML\n-00100fc0: 2066 7261 676d 656e 742c 2077 6869 6368 fragment, which\n-00100fd0: 2077 696c 6c20 6265 206c 6974 6572 616c will be literal\n-00100fe0: 6c79 2069 6e63 6c75 6465 6420 696e 2074 ly included in t\n-00100ff0: 6865 2053 4f41 5020 4661 756c 7420 6d65 he SOAP Fault me\n-00101000: 7373 6167 652e 2046 6f72 2057 532d 4920 ssage. For WS-I \n-00101010: 4261 7369 6320 5072 6f66 696c 6520 636f Basic Profile co\n-00101020: 6d70 6c69 616e 6365 2c20 796f 7520 6d75 mpliance, you mu\n-00101030: 7374 2070 6173 7320 616e 2058 4d4c 2073 st pass an XML s\n-00101040: 7472 696e 6720 7769 7468 206f 6e65 206f tring with one o\n-00101050: 7220 6d6f 7265 206e 616d 6573 7061 6365 r more namespace\n-00101060: 2071 7561 6c69 6669 6564 2065 6c65 6d65 qualified eleme\n-00101070: 6e74 732c 2073 7563 6820 6173 3a3c 2f70 nts, such as: When a servic\n-001012b0: 6520 6f70 6572 6174 696f 6e20 6e65 6564 e operation need\n-001012c0: 7320 746f 2070 6f70 756c 6174 6520 534f s to populate SO\n-001012d0: 4150 2046 6175 6c74 2064 6574 6169 6c73 AP Fault details\n-001012e0: 2077 6974 6820 6120 6170 706c 6963 6174 with a applicat\n-001012f0: 696f 6e2d 7370 6563 6966 6963 2064 6174 ion-specific dat\n-00101300: 612c 2069 7420 646f 6573 2073 6f20 6279 a, it does so by\n-00101310: 2061 7373 6967 6e69 6e67 2074 6865 203c assigning the <\n-00101320: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>soa\n-001013e0: 703a 3a66 6175 6c74 3c2f 613e 3c2f 636f p::fault member of th\n-00101400: 6520 6375 7272 656e 7420 7265 6665 7265 e current refere\n-00101410: 6e63 6520 746f 2074 6865 2063 6f6e 7465 nce to the conte\n-00101420: 7874 2077 6974 6820 6170 7072 6f70 7269 xt with appropri\n-00101430: 6174 6520 6461 7461 2061 7373 6f63 6961 ate data associa\n-00101440: 7465 6420 7769 7468 2074 6865 2065 7863 ted with the exc\n-00101450: 6570 7469 6f6e 2061 6e64 2062 7920 7265 eption and by re\n-00101460: 7475 726e 696e 6720 7468 6520 6572 726f turning the erro\n-00101470: 7220 3c63 6f64 653e 2353 4f41 505f 4641 r This produ\n-00103200: 6365 733a 3c2f 703e 0a3c 6469 7620 636c ces: Servic\n-001039d0: 6520 6f70 6572 6174 696f 6e73 2069 6d70 e operations imp\n-001039e0: 6c65 6d65 6e74 6174 696f 6e20 696e 2061 lementation in a\n-001039f0: 2057 6562 2073 6572 7669 6365 2061 7070 Web service app\n-00103a00: 6c69 6361 7469 6f6e 2063 616e 2072 6574 lication can ret\n-00103a10: 7572 6e20 7661 7269 6f75 7320 534f 4150 urn various SOAP\n-00103a20: 2046 6175 6c74 7320 6375 7374 6f6d 697a Faults customiz\n-00103a30: 6564 2069 6e20 7468 6973 2077 6179 2e3c ed in this way.<\n-00103a40: 2f70 3e0a 3c70 3e53 4f41 5020 4661 756c /p>. SOAP Faul\n-00103a50: 7420 7374 7275 6374 7572 6573 2061 7265 t structures are\n-00103a60: 2064 6563 6c61 7265 6420 3c63 6f64 653e declared For \n-00103b20: 616e 2065 7861 6d70 6c65 2074 6861 7420 an example that \n-00103b30: 7573 6564 2074 6865 2053 4f41 5020 4661 used the SOAP Fa\n-00103b40: 756c 7420 6465 7461 696c 2073 7472 7563 ult detail struc\n-00103b50: 7475 7265 3a3c 2f70 3e0a 3c64 6976 2063 ture: See also \n-001040a0: 4150 4920 646f 6375 6d65 6e74 6174 696f API documentatio\n-001040b0: 6e20 4d6f 6475 6c65 203c 6120 636c 6173 n Module Fault str\n-001040f0: 7563 7475 7265 2061 6e64 2066 756e 6374 ucture and funct\n-00104100: 696f 6e73 3c2f 613e 2e3c 2f70 3e0a 3c70 ions. .... Back to table \n-00104130: 6f66 2063 6f6e 7465 6e74 733c 2f61 3e3c of contents<\n-00104140: 2f70 3e0a 3c68 313e 3c61 2063 6c61 7373 /p>. MTOM attachment\n-00104250: 7320 7468 6174 2061 7265 2065 7373 656e s that are essen\n-00104260: 7469 616c 6c79 204d 494d 4520 6174 7461 tially MIME atta\n-00104270: 6368 6d65 6e74 7320 7468 6174 2063 6f6e chments that con\n-00104280: 666f 726d 2074 6f20 7468 6520 4d54 4f4d form to the MTOM\n-00104290: 2073 7065 6369 6669 6361 7469 6f6e 203c specification <\n-001042a0: 6120 6872 6566 3d22 6874 7470 3a2f 2f77 a href=\"http://w\n-001042b0: 7777 2e77 332e 6f72 672f 5452 2f73 6f61 ww.w3.org/TR/soa\n-001042c0: 7031 322d 6d74 6f6d 223e 6874 7470 3a2f p12-mtom\">http:/\n-001042d0: 2f77 7777 2e77 332e 6f72 672f 5452 2f73 /www.w3.org/TR/s\n-001042e0: 6f61 7031 322d 6d74 6f6d 3c2f 613e 2061 oap12-mtom a\n-001042f0: 7265 2061 6c73 6f20 7375 7070 6f72 7465 re also supporte\n-00104300: 6420 7768 6963 6820 6172 6520 7468 6520 d which are the \n-00104310: 7072 6566 6572 7265 6420 7761 7920 746f preferred way to\n-00104320: 2069 6e63 6c75 6465 204d 494d 4520 6174 include MIME at\n-00104330: 7461 6368 6d65 6e74 7320 7769 7468 2053 tachments with S\n-00104340: 4f41 5020 6d65 7373 6167 6573 2c20 7365 OAP messages, se\n-00104350: 6520 5365 6374 696f 6e20 3c61 2063 6c61 e Section M\n-00104380: 544f 4d20 6174 7461 6368 6d65 6e74 733c TOM attachments<\n-00104390: 2f61 3e2e 3c2f 703e 0a3c 703e 496e 2074 /a>. In t\n-001043a0: 6865 2066 6f6c 6c6f 7769 6e67 2064 6973 he following dis\n-001043b0: 6375 7373 696f 6e2c 204d 494d 4520 6174 cussion, MIME at\n-001043c0: 7461 6368 6d65 6e74 2064 6174 6120 6973 tachment data is\n-001043d0: 2061 7373 756d 6564 2074 6f20 6265 2072 assumed to be r\n-001043e0: 6573 6964 656e 7420 696e 206d 656d 6f72 esident in memor\n-001043f0: 7920 666f 7220 7365 6e64 696e 6720 6f70 y for sending op\n-00104400: 6572 6174 696f 6e73 2061 6e64 204d 494d erations and MIM\n-00104410: 4520 6174 7461 6368 6d65 6e74 7320 7265 E attachments re\n-00104420: 6365 6976 6564 2077 696c 6c20 6265 2073 ceived will be s\n-00104430: 746f 7265 6420 696e 206d 656d 6f72 7920 tored in memory \n-00104440: 6d61 6e61 6765 6420 6279 2074 6865 2063 managed by the c\n-00104450: 6f6e 7465 7874 2e20 4d54 4f4d 2061 6e64 ontext. MTOM and\n-00104460: 2044 494d 4520 6174 7461 6368 6d65 6e74 DIME attachment\n-00104470: 7320 6f6e 2074 6865 206f 7468 6572 2068 s on the other h\n-00104480: 616e 6420 6361 6e20 6265 2073 7472 6561 and can be strea\n-00104490: 6d65 6420 616e 6420 7468 6572 6566 6f72 med and therefor\n-001044a0: 6520 4d54 4f4d 2f44 494d 4520 6174 7461 e MTOM/DIME atta\n-001044b0: 6368 6d65 6e74 2064 6174 6120 646f 6573 chment data does\n-001044c0: 206e 6f74 206e 6565 6420 746f 2062 6520 not need to be \n-001044d0: 7374 6f72 6564 2069 6e20 6d65 6d6f 7279 stored in memory\n-001044e0: 2c20 7365 6520 5365 6374 696f 6e73 203c , see Sections <\n-001044f0: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-00104500: 663d 2269 6e64 6578 2e68 746d 6c23 4449 f=\"index.html#DI\n-00104510: 4d45 223e 4449 4d45 2061 7474 6163 686d ME\">DIME attachm\n-00104520: 656e 7473 3c2f 613e 2061 6e64 203c 6120 ents and MTOM attachmen\n-00104560: 7473 3c2f 613e 202e 3c2f 703e 0a3c 703e ts . \n-00104570: 5472 616e 736d 6974 7469 6e67 206d 756c Transmitting mul\n-00104580: 7469 7061 7274 2f72 656c 6174 6564 204d tipart/related M\n-00104590: 494d 4520 6174 7461 6368 6d65 6e74 7320 IME attachments \n-001045a0: 7769 7468 2061 2053 4f41 502f 584d 4c20 with a SOAP/XML \n-001045b0: 6d65 7373 6167 6520 6973 2061 6363 6f6d message is accom\n-001045c0: 706c 6973 6865 6420 7769 7468 2074 776f plished with two\n-001045d0: 2066 756e 6374 696f 6e73 2c20 3c63 6f64 functions, See also A\n-001047c0: 5049 2064 6f63 756d 656e 7461 7469 6f6e PI documentation\n-001047d0: 204d 6f64 756c 6520 3c61 2063 6c61 7373 Module MIME attach\n-00104810: 6d65 6e74 2066 756e 6374 696f 6e73 3c2f ment functions\n-00104820: 613e 2e3c 2f70 3e0a 3c70 3ef0 9f94 9d20 a>. .... \n-00104830: 3c61 2068 7265 663d 2223 223e 4261 636b Back\n-00104840: 2074 6f20 7461 626c 6520 6f66 2063 6f6e to table of con\n-00104850: 7465 6e74 733c 2f61 3e3c 2f70 3e0a 3c68 tents \n-001048c0: 5468 6520 666f 6c6c 6f77 696e 6720 6675 The following fu\n-001048d0: 6e63 7469 6f6e 7320 6172 6520 7573 6564 nctions are used\n-001048e0: 2074 6f20 7365 7420 7570 2061 2063 6f6c to set up a col\n-001048f0: 6c65 6374 696f 6e20 6f66 206d 756c 7469 lection of multi\n-00104900: 7061 7274 2f72 656c 6174 6564 204d 494d part/related MIM\n-00104910: 4520 6174 7461 6368 6d65 6e74 7320 666f E attachments fo\n-00104920: 7220 7472 616e 736d 6973 7369 6f6e 2077 r transmission w\n-00104930: 6974 6820 6120 534f 4150 206f 7220 584d ith a SOAP or XM\n-00104940: 4c20 6d65 7373 6167 652e 3c2f 703e 0a3c L message. Th\n-001058a0: 6520 696e 7465 726e 616c 206c 6973 7420 e internal list \n-001058b0: 6f66 2061 7474 6163 686d 656e 7473 2073 of attachments s\n-001058c0: 7065 6369 6669 6564 2077 6974 6820 3c63 pecified with The following\n-00105b90: 2065 7861 6d70 6c65 2073 686f 7773 2068 example shows h\n-00105ba0: 6f77 2061 206d 756c 7469 7061 7274 2f72 ow a multipart/r\n-00105bb0: 656c 6174 6564 2048 5454 5020 6d65 7373 elated HTTP mess\n-00105bc0: 6167 6520 7769 7468 2074 6872 6565 204d age with three M\n-00105bd0: 494d 4520 6174 7461 6368 6d65 6e74 7320 IME attachments \n-00105be0: 6973 2073 6574 2075 7020 616e 6420 7472 is set up and tr\n-00105bf0: 616e 736d 6974 7465 6420 746f 2061 2073 ansmitted to a s\n-00105c00: 6572 7665 722e 2049 6e20 7468 6973 2065 erver. In this e\n-00105c10: 7861 6d70 6c65 2077 6520 6c65 7420 7468 xample we let th\n-00105c20: 6520 6d65 7373 6167 6520 626f 6479 2072 e message body r\n-00105c30: 6566 6572 2074 6f20 7468 6520 6174 7461 efer to the atta\n-00105c40: 6368 6d65 6e74 7320 7573 696e 6720 584d chments using XM\n-00105c50: 4c20 3c65 6d3e 3c63 6f64 653e 6872 6566 L The Th\n-001070a0: 6520 636c 6169 6d20 666f 726d 7320 696e e claim forms in\n-001070b0: 2074 6865 206d 6573 7361 6765 2063 6f6e the message con\n-001070c0: 7369 7374 206f 6620 3c65 6d3e 3c63 6f64 sist of To a\n-001071f0: 7373 6f63 6961 7465 204d 494d 4520 6174 ssociate MIME at\n-00107200: 7461 6368 6d65 6e74 7320 7769 7468 2074 tachments with t\n-00107210: 6865 2072 6571 7565 7374 2061 6e64 2072 he request and r\n-00107220: 6573 706f 6e73 6520 6f66 2061 2073 6572 esponse of a ser\n-00107230: 7669 6365 206f 7065 7261 7469 6f6e 2069 vice operation i\n-00107240: 6e20 7468 6520 6765 6e65 7261 7465 6420 n the generated \n-00107250: 5753 444c 2c20 706c 6561 7365 2073 6565 WSDL, please see\n-00107260: 2053 6563 7469 6f6e 203c 6120 636c 6173 Section Generating Mul\n-001072a0: 7469 7061 7274 5265 6c61 7465 6420 4d49 tipartRelated MI\n-001072b0: 4d45 2061 7474 6163 686d 656e 7420 6269 ME attachment bi\n-001072c0: 6e64 696e 6773 2069 6e20 5753 444c 3c2f ndings in WSDL\n-001072d0: 613e 202e 3c2f 703e 0a3c 703e 5468 6520 a> . The \n-001072e0: 7365 7276 6572 2d73 6964 6520 636f 6465 server-side code\n-001072f0: 2074 6f20 7472 616e 736d 6974 204d 494d to transmit MIM\n-00107300: 4520 6174 7461 6368 6d65 6e74 7320 6261 E attachments ba\n-00107310: 636b 2074 6f20 6120 636c 6965 6e74 3a3c ck to a client:<\n-00107320: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>. C++ pr\n-00109960: 6f67 7261 6d6d 6572 7320 6361 6e20 7573 ogrammers can us\n-00109970: 6520 616e 2069 7465 7261 746f 7220 696e e an iterator in\n-00109980: 7374 6561 643a 3c2f 703e 0a3c 6469 7620 stead: Note: ke\n-0010a220: 6570 2069 6e20 6d69 6e64 2074 6861 7420 ep in mind that \n-0010a230: 7468 6520 6669 7273 7420 6174 7461 6368 the first attach\n-0010a240: 6d65 6e74 2069 7320 6173 736f 6369 6174 ment is associat\n-0010a250: 6564 2077 6974 6820 7468 6520 534f 4150 ed with the SOAP\n-0010a260: 206d 6573 7361 6765 2061 6e64 2079 6f75 message and you\n-0010a270: 206d 6179 2077 616e 7420 746f 2069 676e may want to ign\n-0010a280: 6f72 6520 6974 2e3c 2f70 3e0a 3c70 3e41 ore it. A\n-0010a290: 2063 616c 6c20 746f 203c 636f 6465 3e3c call to Application\n-0010a710: 7320 6465 7665 6c6f 7065 6420 7769 7468 s developed with\n-0010a720: 2074 6865 2067 534f 4150 2074 6f6f 6c73 the gSOAP tools\n-0010a730: 2063 616e 2074 7261 6e73 6d69 7420 6269 can transmit bi\n-0010a740: 6e61 7279 2044 494d 4520 6174 7461 6368 nary DIME attach\n-0010a750: 6d65 6e74 7320 7374 6f72 6564 2069 6e20 ments stored in \n-0010a760: 6d65 6d6f 7279 206f 7220 696e 2073 7472 memory or in str\n-0010a770: 6561 6d69 6e67 206d 6f64 6520 6279 2066 eaming mode by f\n-0010a780: 6574 6368 696e 6720 6461 7461 2066 726f etching data fro\n-0010a790: 6d20 6120 7265 736f 7572 6365 206f 7220 m a resource or \n-0010a7a0: 7365 6e64 696e 6720 6461 7461 2074 6f20 sending data to \n-0010a7b0: 6120 7265 736f 7572 6365 2075 7369 6e67 a resource using\n-0010a7c0: 2063 616c 6c62 6163 6b20 6675 6e63 7469 callback functi\n-0010a7d0: 6f6e 732e 2054 6865 206d 6178 696d 756d ons. The maximum\n-0010a7e0: 2044 494d 4520 6174 7461 6368 6d65 6e74 DIME attachment\n-0010a7f0: 2073 697a 6520 6973 206c 696d 6974 6564 size is limited\n-0010a800: 2074 6f20 3820 4d42 2062 7920 6465 6661 to 8 MB by defa\n-0010a810: 756c 7420 6173 2073 6574 2077 6974 6820 ult as set with \n-0010a820: 3c63 6f64 653e 2353 4f41 505f 4d41 5844 For det\n-0010a980: 6169 6c73 206f 6e20 4449 4d45 2061 7474 ails on DIME att\n-0010a990: 6163 686d 656e 7473 2c20 7365 6520 3c61 achments, see http:/\n-0010aa00: 2f6d 7364 6e2e 6d69 6372 6f73 6f66 742e /msdn.microsoft.\n-0010aa10: 636f 6d2f 6c69 6272 6172 792f 656e 2d75 com/library/en-u\n-0010aa20: 732f 646e 676c 6f62 7370 6563 2f68 746d s/dnglobspec/htm\n-0010aa30: 6c2f 6472 6166 742d 6e69 656c 7365 6e2d l/draft-nielsen-\n-0010aa40: 6469 6d65 2d30 322e 7478 743c 2f61 3e3c dime-02.txt<\n-0010aa50: 2f70 3e0a 3c70 3e53 6565 2061 6c73 6f20 /p>. See also \n-0010aa60: 4150 4920 646f 6375 6d65 6e74 6174 696f API documentatio\n-0010aa70: 6e20 4d6f 6475 6c65 203c 6120 636c 6173 n Module DIME attac\n-0010aab0: 686d 656e 7420 6675 6e63 7469 6f6e 733c hment functions<\n-0010aac0: 2f61 3e2e 3c2f 703e 0a3c 703e f09f 949d /a>. ....\n-0010aad0: 203c 6120 6872 6566 3d22 2322 3e42 6163 Bac\n-0010aae0: 6b20 746f 2074 6162 6c65 206f 6620 636f k to table of co\n-0010aaf0: 6e74 656e 7473 3c2f 613e 3c2f 703e 0a3c ntents The \n-0010ab60: 666f 6c6c 6f77 696e 6720 6675 6e63 7469 following functi\n-0010ab70: 6f6e 7320 6361 6e20 6265 2075 7365 6420 ons can be used \n-0010ab80: 746f 2065 7870 6c69 6369 746c 7920 7365 to explicitly se\n-0010ab90: 7420 7570 2061 2063 6f6c 6c65 6374 696f t up a collectio\n-0010aba0: 6e20 6f66 2044 494d 4520 6174 7461 6368 n of DIME attach\n-0010abb0: 6d65 6e74 7320 666f 7220 7472 616e 736d ments for transm\n-0010abc0: 6973 7369 6f6e 2077 6974 6820 6120 6d65 ission with a me\n-0010abd0: 7373 6167 652e 2054 6865 7365 2061 7474 ssage. These att\n-0010abe0: 6163 686d 656e 7473 2063 616e 2062 6520 achments can be \n-0010abf0: 7374 7265 616d 6564 2c20 6173 2064 6573 streamed, as des\n-0010ac00: 6372 6962 6564 2069 6e20 5365 6374 696f cribed in Sectio\n-0010ac10: 6e20 3c61 2063 6c61 7373 3d22 656c 2220 n \n-0010ac40: 5374 7265 616d 696e 6720 4449 4d45 3c2f Streaming DIME\n-0010ac50: 613e 202e 2057 6974 686f 7574 2073 7472 a> . Without str\n-0010ac60: 6561 6d69 6e67 2c20 6561 6368 2061 7474 eaming, each att\n-0010ac70: 6163 686d 656e 7420 6d75 7374 2072 6566 achment must ref\n-0010ac80: 6572 2074 6f20 6120 626c 6f63 6b20 6f66 er to a block of\n-0010ac90: 2064 6174 6120 696e 206d 656d 6f72 792e data in memory.\n-0010aca0: 3c2f 703e 0a3c 756c 3e0a 3c6c 693e 3c63 DIME atta\n-0010b9c0: 6368 6d65 6e74 7320 6172 6520 6175 746f chments are auto\n-0010b9d0: 6d61 7469 6361 6c6c 7920 7061 7273 6564 matically parsed\n-0010b9e0: 2061 6e64 2073 746f 7265 6420 696e 206d and stored in m\n-0010b9f0: 656d 6f72 7920 286f 7220 7061 7373 6564 emory (or passed\n-0010ba00: 2074 6f20 7468 6520 7374 7265 616d 696e to the streamin\n-0010ba10: 6720 6861 6e64 6c65 7273 2076 6961 2074 g handlers via t\n-0010ba20: 6865 2044 494d 4520 6361 6c6c 6261 636b he DIME callback\n-0010ba30: 2066 756e 6374 696f 6e73 2077 6865 6e20 functions when \n-0010ba40: 6465 6669 6e65 6429 2e20 4166 7465 7220 defined). After \n-0010ba50: 7265 6365 6976 696e 6720 6120 7365 7420 receiving a set \n-0010ba60: 6f66 2044 494d 4520 6174 7461 6368 6d65 of DIME attachme\n-0010ba70: 6e74 732c 2065 6974 6865 7220 6174 2074 nts, either at t\n-0010ba80: 6865 2063 6c69 656e 742d 7369 6465 206f he client-side o\n-0010ba90: 7220 7468 6520 7365 7276 6572 2d73 6964 r the server-sid\n-0010baa0: 652c 2074 6865 206c 6973 7420 6f66 2044 e, the list of D\n-0010bab0: 494d 4520 6174 7461 6368 6d65 6e74 7320 IME attachments \n-0010bac0: 6361 6e20 6265 2074 7261 7665 7273 6564 can be traversed\n-0010bad0: 2074 6f20 6578 7472 6163 7420 6d65 7461 to extract meta\n-0010bae0: 2064 6174 6120 616e 6420 7468 6520 6174 data and the at\n-0010baf0: 7461 6368 6d65 6e74 2063 6f6e 7465 6e74 tachment content\n-0010bb00: 2e3c 2f70 3e0a 3c70 3e54 6f20 7472 6176 . To trav\n-0010bb10: 6572 7365 2074 6865 206c 6973 7420 6f66 erse the list of\n-0010bb20: 2044 494d 4520 6174 7461 6368 6d65 6e74 DIME attachment\n-0010bb30: 7320 696e 2043 2c20 796f 7520 7573 6520 s in C, you use \n-0010bb40: 6120 6c6f 6f70 2073 696d 696c 6172 2074 a loop similar t\n-0010bb50: 6f3a 3c2f 703e 0a3c 6469 7620 636c 6173 o: C++ pro\n-0010c600: 6772 616d 6d65 7273 2063 616e 2075 7365 grammers can use\n-0010c610: 2061 6e20 6974 6572 6174 6f72 2069 6e73 an iterator ins\n-0010c620: 7465 6164 3a3c 2f70 3e0a 3c64 6976 2063 tead: The A c\n-0010ce60: 616c 6c20 746f 203c 636f 6465 3e3c 6120 all to Binary dat\n-0010d300: 6120 7374 6f72 6564 2069 6e20 6578 7465 a stored in exte\n-0010d310: 6e64 6564 203c 636f 6465 3e3c 6120 636c nded T\n-0010d910: 6f20 656e 6162 6c65 2073 6572 6961 6c69 o enable seriali\n-0010d920: 7a61 7469 6f6e 206f 6620 7468 6520 6461 zation of the da\n-0010d930: 7461 2061 7320 4449 4d45 2061 7474 6163 ta as DIME attac\n-0010d940: 686d 656e 7473 2069 6e73 7465 6164 206f hments instead o\n-0010d950: 6620 696e 6c69 6e65 2062 6173 6536 342c f inline base64,\n-0010d960: 2077 6520 6578 7465 6e64 2074 6865 203c we extend the <\n-0010d970: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>xsd__base64Bi\n-0010d9f0: 6e61 7279 3c2f 613e 3c2f 636f 6465 3e20 nary \n-0010da00: 7479 7065 2077 6974 6820 7468 7265 6520 type with three \n-0010da10: 6164 6469 7469 6f6e 616c 206d 656d 6265 additional membe\n-0010da20: 7273 3a3c 2f70 3e0a 3c64 6976 2063 6c61 rs: When eithe\n-0010ed50: 7220 7468 6520 3c63 6f64 653e 6964 3c2f r the The \n-0010ede0: 534f 4150 2f58 4d4c 206d 6573 7361 6765 SOAP/XML message\n-0010edf0: 2072 6566 6572 7320 746f 2074 6865 2061 refers to the a\n-0010ee00: 7474 6163 686d 656e 7473 2075 7369 6e67 ttachments using\n-0010ee10: 203c 656d 3e3c 636f 6465 3e68 7265 663c T\n-0010ef90: 6865 2064 6563 6c61 7261 7469 6f6e 206f he declaration o\n-0010efa0: 6620 616e 2065 7874 656e 6465 6420 6269 f an extended bi\n-0010efb0: 6e61 7279 2074 7970 6520 696e 2074 6865 nary type in the\n-0010efc0: 2069 6e74 6572 6661 6365 2068 6561 6465 interface heade\n-0010efd0: 7220 6669 6c65 2066 6f72 2073 6f61 7063 r file for soapc\n-0010efe0: 7070 3220 6973 3a3c 2f70 3e0a 3c64 6976 pp2 is: C++ programmers\n-0010f250: 2063 616e 2075 7365 2069 6e68 6572 6974 can use inherit\n-0010f260: 616e 6365 2069 6e73 7465 6164 206f 6620 ance instead of \n-0010f270: 7465 7874 7561 6c20 6578 7465 6e73 696f textual extensio\n-0010f280: 6e20 7265 7175 6972 6564 2069 6e20 433a n required in C:\n-0010f290: 3c2f 703e 0a3c 6469 7620 636c 6173 733d T\n-0010f720: 6869 7320 6465 6669 6e65 7320 616e 2065 his defines an e\n-0010f730: 7874 656e 7369 6f6e 206f 6620 3c65 6d3e xtension of \n-0010f740: 3c63 6f64 653e 7873 643a 6261 7365 3634 The examp\n-0010fb60: 6c65 2061 626f 7665 2075 7365 7320 7468 le above uses th\n-0010fb70: 6520 3c65 6d3e 3c63 6f64 653e 6c6f 6361 e When receivi\n-0010fcc0: 6e67 2044 494d 4520 6174 7461 6368 6d65 ng DIME attachme\n-0010fcd0: 6e74 732c 2074 6865 2044 494d 4520 6d65 nts, the DIME me\n-0010fce0: 7461 2064 6174 6120 616e 6420 6269 6e61 ta data and bina\n-0010fcf0: 7279 2063 6f6e 7465 6e74 2061 7265 2073 ry content are s\n-0010fd00: 746f 7265 6420 696e 2074 6865 2073 7065 tored in the spe\n-0010fd10: 6369 6669 6564 203c 636f 6465 3e3c 6120 cified \n-0010ff60: 4d65 7373 6167 6573 206d 6179 2063 6f6e Messages may con\n-0010ff70: 7461 696e 2062 696e 6172 7920 6461 7461 tain binary data\n-0010ff80: 2074 6861 7420 7265 6665 7265 6e63 6573 that references\n-0010ff90: 2065 7874 6572 6e61 6c20 7265 736f 7572 external resour\n-0010ffa0: 6365 7320 6e6f 7420 7072 6f76 6964 6564 ces not provided\n-0010ffb0: 2061 7320 6174 7461 6368 6d65 6e74 732e as attachments.\n-0010ffc0: 2049 6e20 7468 6174 2063 6173 652c 2074 In that case, t\n-0010ffd0: 6865 203c 636f 6465 3e5f 5f70 7472 3c2f he T\n-00110040: 6865 203c 636f 6465 3e64 696d 655f 6964 he As a resul\n-00110560: 742c 2061 6c6c 2061 7474 6163 686d 656e t, all attachmen\n-00110570: 7473 2077 6974 6820 6120 4e55 4c4c 203c ts with a NULL <\n-00110580: 636f 6465 3e69 643c 2f63 6f64 653e 206d code>id m\n-00110590: 656d 6265 7220 7769 6c6c 2075 7365 2061 ember will use a\n-001105a0: 2061 7574 6f2d 6765 6e65 7261 7465 6420 auto-generated \n-001105b0: 6964 2076 616c 7565 2062 6173 6564 206f id value based o\n-001105c0: 6e20 7468 6520 666f 726d 6174 2073 7472 n the format str\n-001105d0: 696e 672e 3c2f 703e 0a3c 646c 2063 6c61 ing. .... <\n-001106d0: 6120 6872 6566 3d22 2322 3e42 6163 6b20 a href=\"#\">Back \n-001106e0: 746f 2074 6162 6c65 206f 6620 636f 6e74 to table of cont\n-001106f0: 656e 7473 3c2f 613e 3c2f 703e 0a3c 6832 ents I\n-00112f70: 6e20 6164 6469 7469 6f6e 2c20 6120 3c63 n addition, a The followi\n-001131f0: 6e67 2065 7861 6d70 6c65 2069 6c6c 7573 ng example illus\n-00113200: 7472 6174 6573 2074 6865 2063 6c69 656e trates the clien\n-00113210: 742d 7369 6465 2069 6e69 7469 616c 697a t-side initializ\n-00113220: 6174 696f 6e20 6f66 2061 6e20 696d 6167 ation of an imag\n-00113230: 6520 6174 7461 6368 6d65 6e74 2073 7472 e attachment str\n-00113240: 7563 7420 746f 2073 7472 6561 6d20 6120 uct to stream a \n-00113250: 6669 6c65 2069 6e74 6f20 6120 4449 4d45 file into a DIME\n-00113260: 2061 7474 6163 686d 656e 743a 3c2f 703e attachment: T\n-00114e90: 6865 2066 6f6c 6c6f 7769 6e67 2065 7861 he following exa\n-00114ea0: 6d70 6c65 2069 6c6c 7573 7472 6174 6573 mple illustrates\n-00114eb0: 2074 6865 2073 7472 6561 6d69 6e67 206f the streaming o\n-00114ec0: 6620 6120 4449 4d45 2061 7474 6163 686d f a DIME attachm\n-00114ed0: 656e 7420 696e 746f 2061 2066 696c 6520 ent into a file \n-00114ee0: 6279 2061 2063 6c69 656e 743a 3c2f 703e by a client: Messa\n-00116dd0: 6765 2063 6f6d 7072 6573 7369 6f6e 2077 ge compression w\n-00116de0: 6974 6820 3c63 6f64 653e 2353 4f41 505f ith \n-001172e0: f09f 949d 203c 6120 6872 6566 3d22 2322 .... Back to table o\n-00117300: 6620 636f 6e74 656e 7473 3c2f 613e 3c2f f contents\n-00117310: 703e 0a3c 6832 3e3c 6120 636c 6173 733d p>. T\n-00117360: 6f20 7365 6e64 2044 494d 4520 6174 7461 o send DIME atta\n-00117370: 6368 6d65 6e74 732c 2074 6865 2061 7474 chments, the att\n-00117380: 6163 686d 656e 7420 7369 7a65 7320 6d75 achment sizes mu\n-00117390: 7374 2062 6520 6465 7465 726d 696e 6564 st be determined\n-001173a0: 2069 6e20 6164 7661 6e63 6520 746f 2063 in advance to c\n-001173b0: 616c 6375 6c61 7465 2048 5454 5020 6d65 alculate HTTP me\n-001173c0: 7373 6167 6520 6c65 6e67 7468 2072 6571 ssage length req\n-001173d0: 7569 7265 6420 746f 2073 7472 6561 6d20 uired to stream \n-001173e0: 4449 4d45 206f 7665 7220 4854 5450 2e20 DIME over HTTP. \n-001173f0: 486f 7765 7665 722c 2063 6875 6e6b 6564 However, chunked\n-00117400: 2044 494d 4520 746f 6765 7468 6572 2077 DIME together w\n-00117410: 6974 6820 6368 756e 6b65 6420 4854 5450 ith chunked HTTP\n-00117420: 2063 616e 2062 6520 7573 6564 2074 6f20 can be used to \n-00117430: 6f6d 6974 2074 6869 7320 7374 6570 2e20 omit this step. \n-00117440: 4669 7273 7420 7365 7420 7468 6520 3c63 First set the You can al\n-001177b0: 736f 2075 7365 2074 6865 203c 636f 6465 so use the The \n-001178a0: 7773 646c 3268 2074 6f6f 6c20 7265 636f wsdl2h tool reco\n-001178b0: 676e 697a 6573 2044 494d 4520 6174 7461 gnizes DIME atta\n-001178c0: 6368 6d65 6e74 7320 616e 6420 7072 6f64 chments and prod\n-001178d0: 7563 6573 2061 6e20 616e 6e6f 7461 7465 uces an annotate\n-001178e0: 6420 6865 6164 6572 2066 696c 652e 2042 d header file. B\n-001178f0: 6f74 6820 6f70 656e 2061 6e64 2063 6c6f oth open and clo\n-00117900: 7365 6420 6c61 796f 7574 7320 6172 6520 sed layouts are \n-00117910: 7375 7070 6f72 7465 6420 666f 7220 7472 supported for tr\n-00117920: 616e 736d 6974 7469 6e67 2044 494d 4520 ansmitting DIME \n-00117930: 6174 7461 6368 6d65 6e74 732e 2046 6f72 attachments. For\n-00117940: 2063 6c6f 7365 6420 666f 726d 6174 732c closed formats,\n-00117950: 2061 6c6c 2044 494d 4520 6174 7461 6368 all DIME attach\n-00117960: 6d65 6e74 7320 6d75 7374 2062 6520 7265 ments must be re\n-00117970: 6665 7265 6e63 6564 2066 726f 6d20 7468 ferenced from th\n-00117980: 6520 534f 4150 206d 6573 7361 6765 2c20 e SOAP message, \n-00117990: 652e 672e 2075 7369 6e67 2068 7265 6673 e.g. using hrefs\n-001179a0: 2077 6974 6820 534f 4150 2065 6e63 6f64 with SOAP encod\n-001179b0: 696e 6720 616e 6420 7573 696e 6720 7468 ing and using th\n-001179c0: 6520 6170 706c 6963 6174 696f 6e2d 7370 e application-sp\n-001179d0: 6563 6966 6963 2072 6566 6572 656e 6365 ecific reference\n-001179e0: 2061 7474 7269 6275 7465 2069 6e63 6c75 attribute inclu\n-001179f0: 6465 6420 696e 2074 6865 203c 636f 6465 ded in the The soapcpp2 \n-00117ad0: 746f 6f6c 2064 6f65 7320 6e6f 7420 7072 tool does not pr\n-00117ae0: 6f64 7563 6520 6120 5753 444c 2077 6974 oduce a WSDL wit\n-00117af0: 6820 4449 4d45 2065 7874 656e 7369 6f6e h DIME extension\n-00117b00: 732e 2044 494d 4520 6973 2061 6e20 6f6c s. DIME is an ol\n-00117b10: 6465 7220 6269 6e61 7279 2066 6f72 6d61 der binary forma\n-00117b20: 7420 7468 6174 2068 6173 206e 6f20 5753 t that has no WS\n-00117b30: 444c 2070 726f 746f 636f 6c20 7375 7070 DL protocol supp\n-00117b40: 6f72 742c 2075 6e6c 696b 6520 4d49 4d45 ort, unlike MIME\n-00117b50: 2061 6e64 204d 544f 4d2e 3c2f 703e 0a3c and MTOM. MTOM (Message\n-00117be0: 2054 7261 6e73 6d69 7373 696f 6e20 4f70 Transmission Op\n-00117bf0: 7469 6d69 7a61 7469 6f6e 204d 6563 6861 timization Mecha\n-00117c00: 6e69 736d 2920 6973 2061 2072 656c 6174 nism) is a relat\n-00117c10: 6976 656c 7920 6e65 7720 666f 726d 6174 ively new format\n-00117c20: 2066 6f72 2074 7261 6e73 6d69 7474 696e for transmittin\n-00117c30: 6720 6174 7461 6368 6d65 6e74 7320 7769 g attachments wi\n-00117c40: 7468 2053 4f41 5020 6d65 7373 6167 6573 th SOAP messages\n-00117c50: 2028 7365 6520 3c61 2068 7265 663d 2268 (see http://www.w3.o\n-00117c90: 7267 2f54 522f 736f 6170 3132 2d6d 746f rg/TR/soap12-mto\n-00117ca0: 6d3c 2f61 3e29 2e20 4d54 4f4d 2061 7474 m). MTOM att\n-00117cb0: 6163 686d 656e 7473 2061 7265 2065 7373 achments are ess\n-00117cc0: 656e 7469 616c 6c79 204d 494d 4520 6174 entially MIME at\n-00117cd0: 7461 6368 6d65 6e74 7320 7769 7468 2073 tachments with s\n-00117ce0: 7461 6e64 6172 6469 7a65 6420 6d65 6368 tandardized mech\n-00117cf0: 616e 6973 6d73 2066 6f72 2063 726f 7373 anisms for cross\n-00117d00: 2072 6566 6572 656e 6369 6e67 2061 7474 referencing att\n-00117d10: 6163 686d 656e 7473 2066 726f 6d20 7468 achments from th\n-00117d20: 6520 534f 4150 2062 6f64 792c 2077 6869 e SOAP body, whi\n-00117d30: 6368 2069 7320 6162 7365 6e74 2069 6e20 ch is absent in \n-00117d40: 2870 6c61 696e 2920 4d49 4d45 2061 7474 (plain) MIME att\n-00117d50: 6163 686d 656e 7473 2061 6e64 206f 7074 achments and opt\n-00117d60: 696f 6e61 6c20 7769 7468 2044 494d 4520 ional with DIME \n-00117d70: 6174 7461 6368 6d65 6e74 732e 3c2f 703e attachments. Unlike the n\n-00117d90: 616d 6520 7375 6767 6573 7473 2c20 7468 ame suggests, th\n-00117da0: 6520 7370 6565 6420 6279 2077 6869 6368 e speed by which\n-00117db0: 2061 7474 6163 6865 6420 6461 7461 2069 attached data i\n-00117dc0: 7320 7472 616e 736d 6974 7465 6420 6973 s transmitted is\n-00117dd0: 206e 6f74 2069 6e63 7265 6173 6564 2063 not increased c\n-00117de0: 6f6d 7061 7265 6420 746f 204d 494d 452c ompared to MIME,\n-00117df0: 2044 494d 452c 206f 7220 6576 656e 2058 DIME, or even X\n-00117e00: 4d4c 2065 6e63 6f64 6564 2062 6173 6536 ML encoded base6\n-00117e10: 3420 6461 7461 2c20 6265 6361 7573 6520 4 data, because \n-00117e20: 7468 6520 7065 7266 6f72 6d61 6e63 6520 the performance \n-00117e30: 6469 6666 6572 656e 6365 7320 7768 656e differences when\n-00117e40: 2075 7369 6e67 2067 534f 4150 2077 696c using gSOAP wil\n-00117e50: 6c20 6265 2073 6d61 6c6c 2e20 5468 6520 l be small. The \n-00117e60: 6164 7661 6e74 6167 6520 6f66 2074 6865 advantage of the\n-00117e70: 2066 6f72 6d61 7420 6973 2074 6865 2073 format is the s\n-00117e80: 7461 6e64 6172 6469 7a65 6420 6174 7461 tandardized atta\n-00117e90: 6368 6d65 6e74 2072 6566 6572 656e 6365 chment reference\n-00117ea0: 206d 6563 6861 6e69 736d 2c20 7768 6963 mechanism, whic\n-00117eb0: 6820 7368 6f75 6c64 2069 6d70 726f 7665 h should improve\n-00117ec0: 2069 6e74 6572 6f70 6572 6162 696c 6974 interoperabilit\n-00117ed0: 792e 3c2f 703e 0a3c 703e 5468 6520 4d54 y. The MT\n-00117ee0: 4f4d 2073 7065 6369 6669 6361 7469 6f6e OM specification\n-00117ef0: 206d 616e 6461 7465 7320 534f 4150 2031 mandates SOAP 1\n-00117f00: 2e32 2061 6e64 2074 6865 2075 7365 206f .2 and the use o\n-00117f10: 6620 7468 6520 584f 5020 6e61 6d65 7370 f the XOP namesp\n-00117f20: 6163 652e 2054 6865 2058 4f50 2049 6e63 ace. The XOP Inc\n-00117f30: 6c75 6465 2065 6c65 6d65 6e74 203c 656d lude element Bec\n-00118070: 6175 7365 2072 6566 6572 656e 6365 7320 ause references \n-00118080: 6672 6f6d 2077 6974 6869 6e20 7468 6520 from within the \n-00118090: 534f 4150 206d 6573 7361 6765 2062 6f64 SOAP message bod\n-001180a0: 7920 746f 2061 7474 6163 686d 656e 7473 y to attachments\n-001180b0: 2061 7265 206d 616e 6461 746f 7279 2077 are mandatory w\n-001180c0: 6974 6820 4d54 4f4d 2c20 7468 6520 696d ith MTOM, the im\n-001180d0: 706c 656d 656e 7461 7469 6f6e 206f 6620 plementation of \n-001180e0: 7468 6520 7365 7269 616c 697a 6174 696f the serializatio\n-001180f0: 6e20 616e 6420 6465 7365 7269 616c 697a n and deserializ\n-00118100: 6174 696f 6e20 6f66 204d 544f 4d20 4d49 ation of MTOM MI\n-00118110: 4d45 2061 7474 6163 686d 656e 7473 2075 ME attachments u\n-00118120: 7365 7320 7468 6520 6578 7465 6e64 6564 ses the extended\n-00118130: 2062 696e 6172 7920 7479 7065 2063 6f6d binary type com\n-00118140: 7061 7261 626c 6520 746f 2044 494d 4520 parable to DIME \n-00118150: 7375 7070 6f72 742e 2054 6869 7320 6269 support. This bi\n-00118160: 6e61 7279 2074 7970 6520 6973 2070 7265 nary type is pre\n-00118170: 6465 6669 6e65 6420 696e 2074 6865 203c defined in the <\n-00118180: 656d 3e3c 636f 6465 3e69 6d70 6f72 742f em> The ad\n-00118fc0: 6469 7469 6f6e 616c 203c 636f 6465 3e69 ditional You c\n-00119310: 616e 2069 6d70 6f72 7420 3c65 6d3e 3c63 an import Whe\n-00119950: 6e20 616e 2069 6e73 7461 6e63 6520 6f66 n an instance of\n-00119960: 203c 636f 6465 3e78 5f5f 6d79 4461 7461 \n-0011a240: 5468 6973 2064 6972 6563 7469 7665 2064 This directive d\n-0011a250: 6972 6563 7469 7665 2063 616e 2062 6520 irective can be \n-0011a260: 7265 7065 6174 6564 2066 6f72 2065 6163 repeated for eac\n-0011a270: 6820 6174 7461 6368 6d65 6e74 2079 6f75 h attachment you\n-0011a280: 2077 616e 7420 746f 2061 7373 6f63 6961 want to associa\n-0011a290: 7465 2077 6974 6820 6120 6d65 7468 6f64 te with a method\n-0011a2a0: 2773 2072 6571 7565 7374 2061 6e64 2072 's request and r\n-0011a2b0: 6573 706f 6e73 6520 6d65 7373 6167 652e esponse message.\n-0011a2c0: 2073 6565 2061 6c73 6f20 5365 6374 696f see also Sectio\n-0011a2d0: 6e20 3c61 2063 6c61 7373 3d22 656c 2220 n Dir\n-0011a300: 6563 7469 7665 733c 2f61 3e20 2e3c 2f70 ectives . For example\n-0011a320: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 : The\n-0011a7c0: 203c 636f 6465 3e2f 2f67 736f 6170 2078 T\n-0011a950: 6f20 6269 6e64 2061 7474 6163 686d 656e o bind attachmen\n-0011a960: 7473 206f 6e6c 7920 746f 2074 6865 2072 ts only to the r\n-0011a970: 6571 7565 7374 206d 6573 7361 6765 206f equest message o\n-0011a980: 6620 616e 206f 7065 7261 7469 6f6e 2c20 f an operation, \n-0011a990: 7573 653c 2f70 3e0a 3c64 6976 2063 6c61 use Similarl\n-0011aa40: 792c 2074 6f20 6269 6e64 2061 7474 6163 y, to bind attac\n-0011aa50: 686d 656e 7473 206f 6e6c 7920 746f 2074 hments only to t\n-0011aa60: 6865 2072 6573 706f 6e73 6520 6d65 7373 he response mess\n-0011aa70: 6167 6520 6f66 2061 6e20 6f70 6572 6174 age of an operat\n-0011aa80: 696f 6e2c 2075 7365 3a3c 2f70 3e0a 3c64 ion, use: T\n-0011ab30: 6865 2077 7364 6c32 6820 746f 6f6c 2072 he wsdl2h tool r\n-0011ab40: 6563 6f67 6e69 7a65 7320 4d49 4d45 2061 ecognizes MIME a\n-0011ab50: 7474 6163 686d 656e 7473 2061 6e64 2070 ttachments and p\n-0011ab60: 726f 6475 6365 7320 616e 2061 6e6e 6f74 roduces an annot\n-0011ab70: 6174 6564 2068 6561 6465 7220 6669 6c65 ated header file\n-0011ab80: 2e3c 2f70 3e0a 3c70 3e59 6f75 2063 616e . You can\n-0011ab90: 2072 6570 6561 7420 7468 6573 6520 6469 repeat these di\n-0011aba0: 7265 6374 6976 6573 2066 6f72 2061 6c6c rectives for all\n-0011abb0: 206d 756c 7469 7061 7274 5265 6c61 7465 multipartRelate\n-0011abc0: 6420 4d49 4d45 2061 7474 6163 686d 656e d MIME attachmen\n-0011abd0: 7473 2079 6f75 2077 616e 7420 746f 2061 ts you want to a\n-0011abe0: 7373 6f63 6961 7465 2077 6974 6820 7468 ssociate with th\n-0011abf0: 6520 7365 7276 6963 6520 6f70 6572 6174 e service operat\n-0011ac00: 696f 6e20 696e 7075 7420 616e 6420 6f75 ion input and ou\n-0011ac10: 7470 7574 2e3c 2f70 3e0a 3c70 3ef0 9f94 tput. ...\n-0011ac20: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n-0011ac30: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n-0011ac40: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents A receiver m\n-0011acc0: 7573 7420 6265 2069 6e66 6f72 6d65 6420 ust be informed \n-0011acd0: 746f 2072 6563 6f67 6e69 7a65 204d 544f to recognize MTO\n-0011ace0: 4d20 6174 7461 6368 6d65 6e74 7320 6279 M attachments by\n-0011acf0: 2073 6574 7469 6e67 2074 6865 203c 636f setting the When using wsdl\n-0011ae00: 3268 2074 6f20 6275 696c 6420 636c 6965 2h to build clie\n-0011ae10: 6e74 7320 616e 642f 6f72 2073 6572 7669 nts and/or servi\n-0011ae20: 6365 732c 2079 6f75 2073 686f 756c 6420 ces, you should \n-0011ae30: 7573 6520 7468 6520 3c65 6d3e 3c63 6f64 use the The wsdl2h too\n-0011afd0: 6c20 7573 6573 2074 6865 203c 656d 3e3c l uses the <\n-0011afe0: 636f 6465 3e74 7970 656d 6170 2e64 6174 code>typemap.dat\n-0011aff0: 3c2f 636f 6465 3e3c 2f65 6d3e 2066 696c fil\n-0011b000: 6520 746f 2063 6f6e 7665 7274 2057 5344 e to convert WSD\n-0011b010: 4c20 696e 746f 2061 6e20 696e 7465 7266 L into an interf\n-0011b020: 6163 6520 6865 6164 6572 2066 696c 652e ace header file.\n-0011b030: 2049 6e20 7468 6973 2063 6173 6520 7765 In this case we\n-0011b040: 2064 6f6e 2774 2077 616e 7420 7468 6520 don't want the \n-0011b050: 7773 646c 3268 2074 6f6f 6c20 746f 2072 wsdl2h tool to r\n-0011b060: 6561 6420 7468 6520 584f 5020 7363 6865 ead the XOP sche\n-0011b070: 6d61 2061 6e64 2074 7261 6e73 6c61 7465 ma and translate\n-0011b080: 2069 742c 2073 696e 6365 2077 6520 6861 it, since we ha\n-0011b090: 7665 2061 2070 7265 2d64 6566 696e 6564 ve a pre-defined\n-0011b0a0: 203c 636f 6465 3e3c 6120 636c 6173 733d Th\n-0011b3a0: 6520 3c63 6f64 653e 2369 6d70 6f72 743c e Let's take \n-0011b410: 6120 6c6f 6f6b 2061 7420 616e 2065 7861 a look at an exa\n-0011b420: 6d70 6c65 2e20 5468 6520 7773 646c 3268 mple. The wsdl2h\n-0011b430: 2069 6d70 6f72 7465 7220 6765 6e65 7261 importer genera\n-0011b440: 7465 7320 6120 6865 6164 6572 2066 696c tes a header fil\n-0011b450: 6520 7769 7468 203c 636f 6465 3e23 696d e with Suppose\n-0011b6d0: 2074 6865 2057 5344 4c20 6465 6669 6e65 the WSDL define\n-0011b6e0: 7320 616e 206f 7065 7261 7469 6f6e 3a3c s an operation:<\n-0011b6f0: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>. Note th\n-0011c180: 6174 2074 6865 203c 636f 6465 3e78 6f70 at the At the s\n-0011c210: 6572 7665 7220 7369 6465 2c20 7765 2073 erver side, we s\n-0011c220: 686f 7720 616e 2065 7861 6d70 6c65 206f how an example o\n-0011c230: 6620 616e 206f 7065 7261 7469 6f6e 2068 f an operation h\n-0011c240: 616e 646c 6572 2074 6861 7420 6a75 7374 andler that just\n-0011c250: 2063 6f70 6965 7320 7468 6520 696e 7075 copies the inpu\n-0011c260: 7420 6461 7461 2074 6f20 6f75 7470 7574 t data to output\n-0011c270: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 : The s\n-0011c4e0: 6572 7665 7220 6d75 7374 2075 7365 2074 erver must use t\n-0011c4f0: 6865 203c 636f 6465 3e23 534f 4150 5f45 he ...\n-0011c5c0: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n-0011c5d0: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n-0011c5e0: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents Stream\n-0011c640: 696e 6720 4d49 4d45 2f4d 544f 4d20 6973 ing MIME/MTOM is\n-0011c650: 2061 6368 6965 7665 6420 7769 7468 2063 achieved with c\n-0011c660: 616c 6c62 6163 6b20 6675 6e63 7469 6f6e allback function\n-0011c670: 7320 746f 2066 6574 6368 2061 6e64 2073 s to fetch and s\n-0011c680: 746f 7265 2064 6174 6120 6475 7269 6e67 tore data during\n-0011c690: 2074 7261 6e73 6d69 7373 696f 6e2e 2054 transmission. T\n-0011c6a0: 6872 6565 2066 756e 6374 696f 6e20 6361 hree function ca\n-0011c6b0: 6c6c 6261 636b 7320 666f 7220 7374 7265 llbacks for stre\n-0011c6c0: 616d 696e 6720 4d49 4d45 2f4d 544f 4d20 aming MIME/MTOM \n-0011c6d0: 6f75 7470 7574 2061 6e64 2074 6872 6565 output and three\n-0011c6e0: 2063 616c 6c62 6163 6b73 2066 6f72 2073 callbacks for s\n-0011c6f0: 7472 6561 6d69 6e67 204d 494d 452f 4d54 treaming MIME/MT\n-0011c700: 4f4d 2069 6e70 7574 2061 7265 2061 7661 OM input are ava\n-0011c710: 696c 6162 6c65 2e3c 2f70 3e0a 3c75 6c3e ilable. In additi\n-0011ee30: 6f6e 2c20 6120 3c63 6f64 653e 766f 6964 on, a The\n-0011f0a0: 2066 6f6c 6c6f 7769 6e67 2065 7861 6d70 following examp\n-0011f0b0: 6c65 2069 6c6c 7573 7472 6174 6573 2074 le illustrates t\n-0011f0c0: 6865 2063 6c69 656e 742d 7369 6465 2069 he client-side i\n-0011f0d0: 6e69 7469 616c 697a 6174 696f 6e20 6f66 nitialization of\n-0011f0e0: 2061 6e20 696d 6167 6520 6174 7461 6368 an image attach\n-0011f0f0: 6d65 6e74 2073 7472 7563 7420 746f 2073 ment struct to s\n-0011f100: 7472 6561 6d20 6120 6669 6c65 2069 6e74 tream a file int\n-0011f110: 6f20 6120 4d54 4f4d 2061 7474 6163 686d o a MTOM attachm\n-0011f120: 656e 7420 7769 7468 6f75 7420 4854 5450 ent without HTTP\n-0011f130: 2063 6875 6e6b 696e 6720 2848 5454 5020 chunking (HTTP \n-0011f140: 7374 7265 616d 696e 6720 6368 756e 6b65 streaming chunke\n-0011f150: 6420 4d54 4f4d 2074 7261 6e73 6665 7220 d MTOM transfer \n-0011f160: 6973 2070 7265 7365 6e74 6564 2069 6e20 is presented in \n-0011f170: 5365 6374 696f 6e20 3c61 2063 6c61 7373 Section Streaming c\n-0011f1b0: 6875 6e6b 6564 204d 494d 452f 4d54 4f4d hunked MIME/MTOM\n-0011f1c0: 3c2f 613e 2029 3a3c 2f70 3e0a 3c64 6976 ): The f\n-00120cf0: 6f6c 6c6f 7769 6e67 2065 7861 6d70 6c65 ollowing example\n-00120d00: 2069 6c6c 7573 7472 6174 6573 2074 6865 illustrates the\n-00120d10: 2073 7472 6561 6d69 6e67 206f 6620 6120 streaming of a \n-00120d20: 4d49 4d45 2f4d 544f 4d20 6174 7461 6368 MIME/MTOM attach\n-00120d30: 6d65 6e74 2069 6e74 6f20 6120 6669 6c65 ment into a file\n-00120d40: 2062 7920 6120 636c 6965 6e74 3a3c 2f70 by a client: \n-001229f0: 4d65 7373 6167 6520 636f 6d70 7265 7373 Message compress\n-00122a00: 696f 6e20 7769 7468 203c 636f 6465 3e23 ion with Note th\n-00122dc0: 6174 2074 6865 2065 7861 6d70 6c65 2061 at the example a\n-00122dd0: 626f 7665 2066 6f72 203c 636f 6465 3e6d bove for To read th\n-001235b0: 6520 4d54 4f4d 2064 6174 6120 666f 7220 e MTOM data for \n-001235c0: 7472 616e 736d 6973 7369 6f6e 3a3c 2f70 transmission: .... Back to tabl\n-00124480: 6520 6f66 2063 6f6e 7465 6e74 733c 2f61 e of contents When it is pref\n-00124520: 6572 6162 6c65 206f 7220 7265 7175 6972 erable or requir\n-00124530: 6564 2074 6f20 7265 6469 7265 6374 2069 ed to redirect i\n-00124540: 6e62 6f75 6e64 204d 494d 452f 4d54 4f4d nbound MIME/MTOM\n-00124550: 2061 7474 6163 686d 656e 7420 7374 7265 attachment stre\n-00124560: 616d 7320 6261 7365 6420 6f6e 2053 4f41 ams based on SOA\n-00124570: 5020 6d65 7373 6167 6520 626f 6479 2063 P message body c\n-00124580: 6f6e 7465 6e74 2c20 7768 6572 6520 666f ontent, where fo\n-00124590: 7220 6578 616d 706c 6520 7468 6520 6e61 r example the na\n-001245a0: 6d65 7320 6f66 2074 6865 2072 6573 6f75 mes of the resou\n-001245b0: 7263 6573 2061 7265 206c 6973 7465 6420 rces are listed \n-001245c0: 696e 2074 6865 2053 4f41 5020 6d65 7373 in the SOAP mess\n-001245d0: 6167 6520 626f 6479 2c20 616e 2061 6c74 age body, an alt\n-001245e0: 6572 6e61 7469 7665 206d 6563 6861 6e69 ernative mechani\n-001245f0: 736d 206d 7573 7420 6265 2075 7365 6420 sm must be used \n-00124600: 746f 2068 616e 646c 6520 7468 6520 6174 to handle the at\n-00124610: 7461 6368 6d65 6e74 732e 2054 6869 7320 tachments. This \n-00124620: 6d65 6368 616e 6973 6d20 6361 6e20 6265 mechanism can be\n-00124630: 2075 7365 6420 6174 2074 6865 2063 6c69 used at the cli\n-00124640: 656e 7420 616e 6420 7365 7276 6572 2073 ent and server s\n-00124650: 6964 652e 3c2f 703e 0a3c 703e 4265 6361 ide. Beca\n-00124660: 7573 6520 7468 6520 726f 7574 696e 6720 use the routing \n-00124670: 6f66 2074 6865 2073 7472 6561 6d73 2069 of the streams i\n-00124680: 7320 6163 636f 6d70 6c69 7368 6564 2077 s accomplished w\n-00124690: 6974 6820 6578 706c 6963 6974 2066 756e ith explicit fun\n-001246a0: 6374 696f 6e20 6361 6c6c 732c 2074 6869 ction calls, thi\n-001246b0: 7320 6d65 7468 6f64 2073 686f 756c 6420 s method should \n-001246c0: 6f6e 6c79 2062 6520 7573 6564 2077 6865 only be used whe\n-001246d0: 6e20 7265 7175 6972 6564 2061 6e64 2073 n required and s\n-001246e0: 686f 756c 6420 6e6f 7420 6265 2063 6f6e hould not be con\n-001246f0: 7369 6465 7265 6420 6f70 7469 6f6e 616c sidered optional\n-00124700: 2e20 5468 6174 2069 732c 2077 6865 6e20 . That is, when \n-00124710: 796f 7520 656e 6162 6c65 2074 6869 7320 you enable this \n-00124720: 6d65 7468 6f64 2c20 796f 7520 6d75 7374 method, you must\n-00124730: 2063 6865 636b 2066 6f72 2070 656e 6469 check for pendi\n-00124740: 6e67 204d 494d 452f 4d54 4f4d 2061 7474 ng MIME/MTOM att\n-00124750: 6163 686d 656e 7473 2061 6e64 2068 616e achments and han\n-00124760: 646c 6520 7468 656d 2061 7070 726f 7072 dle them appropr\n-00124770: 6961 7465 6c79 2e20 5468 6973 2069 7320 iately. This is \n-00124780: 7472 7565 2065 7665 6e20 7768 656e 2079 true even when y\n-00124790: 6f75 2064 6f6e 2774 2065 7870 6563 7420 ou don't expect \n-001247a0: 4d49 4d45 2f4d 544f 4d20 6174 7461 6368 MIME/MTOM attach\n-001247b0: 6d65 6e74 7320 696e 2074 6865 2070 6179 ments in the pay\n-001247c0: 6c6f 6164 2c20 6265 6361 7573 6520 7468 load, because th\n-001247d0: 6520 7065 6572 206d 6179 2074 7269 636b e peer may trick\n-001247e0: 2079 6f75 2062 7920 7365 6e64 696e 6720 you by sending \n-001247f0: 6174 7461 6368 6d65 6e74 7320 616e 7977 attachments anyw\n-00124800: 6179 2061 6e64 2079 6f75 2073 686f 756c ay and you shoul\n-00124810: 6420 6265 2070 7265 7061 7265 6420 746f d be prepared to\n-00124820: 2061 6363 6570 7420 6f72 2072 656a 6563 accept or rejec\n-00124830: 7420 7468 656d 2e3c 2f70 3e0a 3c70 3e54 t them. T\n-00124840: 6865 2065 7870 6c69 6369 7420 4d49 4d45 he explicit MIME\n-00124850: 2f4d 544f 4d20 7374 7265 616d 696e 6720 /MTOM streaming \n-00124860: 6d65 6368 616e 6973 6d20 636f 6e73 6973 mechanism consis\n-00124870: 7473 206f 6620 7468 7265 6520 4150 4920 ts of three API \n-00124880: 6675 6e63 7469 6f6e 733a 3c2f 703e 0a3c functions: To se\n-001275a0: 6e64 204d 494d 452f 4d54 4f4d 2061 7474 nd MIME/MTOM att\n-001275b0: 6163 686d 656e 7473 2c20 7468 6520 6174 achments, the at\n-001275c0: 7461 6368 6d65 6e74 2073 697a 6573 206d tachment sizes m\n-001275d0: 7573 7420 6265 2064 6574 6572 6d69 6e65 ust be determine\n-001275e0: 6420 696e 2061 6476 616e 6365 2074 6f20 d in advance to \n-001275f0: 6361 6c63 756c 6174 6520 4854 5450 206d calculate HTTP m\n-00127600: 6573 7361 6765 206c 656e 6774 6820 7265 essage length re\n-00127610: 7175 6972 6564 2074 6f20 7374 7265 616d quired to stream\n-00127620: 204d 494d 452f 4d54 4f4d 206f 7665 7220 MIME/MTOM over \n-00127630: 4854 5450 2e20 486f 7765 7665 722c 2063 HTTP. However, c\n-00127640: 6875 6e6b 6564 204d 494d 452f 4d54 4f4d hunked MIME/MTOM\n-00127650: 2074 6f67 6574 6865 7220 7769 7468 2063 together with c\n-00127660: 6875 6e6b 6564 2048 5454 5020 6361 6e20 hunked HTTP can \n-00127670: 6265 2075 7365 6420 746f 206f 6d69 7420 be used to omit \n-00127680: 7468 6973 2073 7465 702e 2046 6972 7374 this step. First\n-00127690: 2073 6574 2074 6865 203c 636f 6465 3e23 set the .... <\n-00127a10: 6120 6872 6566 3d22 2322 3e42 6163 6b20 a href=\"#\">Back \n-00127a20: 746f 2074 6162 6c65 206f 6620 636f 6e74 to table of cont\n-00127a30: 656e 7473 3c2f 613e 3c2f 703e 0a3c 6831 ents UDP i\n-00127a80: 7320 6120 7369 6d70 6c65 2c20 756e 7265 s a simple, unre\n-00127a90: 6c69 6162 6c65 2064 6174 6167 7261 6d20 liable datagram \n-00127aa0: 7072 6f74 6f63 6f6c 3a20 5544 5020 736f protocol: UDP so\n-00127ab0: 636b 6574 7320 6172 6520 636f 6e6e 6563 ckets are connec\n-00127ac0: 7469 6f6e 6c65 7373 2e20 5544 5020 6164 tionless. UDP ad\n-00127ad0: 6472 6573 7320 666f 726d 6174 7320 6172 dress formats ar\n-00127ae0: 6520 6964 656e 7469 6361 6c20 746f 2074 e identical to t\n-00127af0: 686f 7365 2075 7365 6420 6279 2054 4350 hose used by TCP\n-00127b00: 2e20 496e 2070 6172 7469 6375 6c61 7220 . In particular \n-00127b10: 5544 5020 7072 6f76 6964 6573 2061 2070 UDP provides a p\n-00127b20: 6f72 7420 6964 656e 7469 6669 6572 2069 ort identifier i\n-00127b30: 6e20 6164 6469 7469 6f6e 2074 6f20 7468 n addition to th\n-00127b40: 6520 6e6f 726d 616c 2049 6e74 6572 6e65 e normal Interne\n-00127b50: 7420 6164 6472 6573 7320 666f 726d 6174 t address format\n-00127b60: 2e20 5468 6520 5544 5020 706f 7274 2073 . The UDP port s\n-00127b70: 7061 6365 2069 7320 7365 7061 7261 7465 pace is separate\n-00127b80: 2066 726f 6d20 7468 6520 5443 5020 706f from the TCP po\n-00127b90: 7274 2073 7061 6365 2028 692e 652e 2061 rt space (i.e. a\n-00127ba0: 2055 4450 2070 6f72 7420 6d61 7920 6e6f UDP port may no\n-00127bb0: 7420 6265 2022 636f 6e6e 6563 7465 6422 t be \"connected\"\n-00127bc0: 2074 6f20 6120 5443 5020 706f 7274 292e to a TCP port).\n-00127bd0: 2049 6e20 6164 6469 7469 6f6e 2062 726f In addition bro\n-00127be0: 6164 6361 7374 2070 6163 6b65 7473 206d adcast packets m\n-00127bf0: 6179 2062 6520 7365 6e74 2028 6173 7375 ay be sent (assu\n-00127c00: 6d69 6e67 2074 6865 2075 6e64 6572 6c79 ming the underly\n-00127c10: 696e 6720 6e65 7477 6f72 6b20 7375 7070 ing network supp\n-00127c20: 6f72 7473 2074 6869 7329 2062 7920 7573 orts this) by us\n-00127c30: 696e 6720 6120 7265 7365 7276 6564 2022 ing a reserved \"\n-00127c40: 6272 6f61 6463 6173 740a 6164 6472 6573 broadcast.addres\n-00127c50: 7322 3b20 7468 6973 2061 6464 7265 7373 s\"; this address\n-00127c60: 2069 7320 6e65 7477 6f72 6b20 696e 7465 is network inte\n-00127c70: 7266 6163 6520 6465 7065 6e64 656e 742e rface dependent.\n-00127c80: 3c2f 703e 0a3c 703e 436c 6965 6e74 2d73 Client-s\n-00127c90: 6964 6520 6d65 7373 6167 6573 2077 6974 ide messages wit\n-00127ca0: 6820 534f 4150 2d6f 7665 722d 5544 5020 h SOAP-over-UDP \n-00127cb0: 656e 6470 6f69 6e74 2055 524c 7320 283c endpoint URLs (<\n-00127cc0: 636f 6465 3e73 6f61 702e 7564 703a 2f2f code>soap.udp://\n-00127cd0: 2e2e 2e3c 2f63 6f64 653e 2920 6172 6520 ...) are \n-00127ce0: 6175 746f 6d61 7469 6361 6c6c 7920 7472 automatically tr\n-00127cf0: 616e 736d 6974 7465 6420 6173 2064 6174 ansmitted as dat\n-00127d00: 6167 7261 6d73 2e20 5365 7276 6572 2d73 agrams. Server-s\n-00127d10: 6964 6520 6170 706c 6963 6174 696f 6e73 ide applications\n-00127d20: 2073 686f 756c 6420 7365 7420 7468 6520 should set the \n-00127d30: 3c63 6f64 653e 2353 4f41 505f 494f 5f55 Th\n-00127fd0: 6520 6d61 7869 6d75 6d20 6d65 7373 6167 e maximum messag\n-00127fe0: 6520 6c65 6e67 7468 2066 6f72 2064 6174 e length for dat\n-00127ff0: 6167 7261 6d20 7061 636b 6574 7320 6973 agram packets is\n-00128000: 2072 6573 7472 6963 7465 6420 6279 2074 restricted by t\n-00128010: 6865 2062 7566 6665 7220 7369 7a65 203c he buffer size <\n-00128020: 636f 6465 3e23 534f 4150 5f42 5546 4c45 code>#SOAP_BUFLE\n-00128030: 4e3c 2f63 6f64 653e 2c20 7768 6963 6820 N, which \n-00128040: 6973 2036 3535 3336 2062 7920 6465 6661 is 65536 by defa\n-00128050: 756c 742c 2075 6e6c 6573 7320 636f 6d70 ult, unless comp\n-00128060: 696c 6564 2077 6974 6820 3c63 6f64 653e iled with The SOA\n-00128250: 502d 6f76 6572 2d55 4450 2073 7065 6369 P-over-UDP speci\n-00128260: 6669 6361 7469 6f6e 2072 656c 6965 7320 fication relies \n-00128270: 6f6e 2057 532d 4164 6472 6573 7369 6e67 on WS-Addressing\n-00128280: 2e20 5468 6520 3c65 6d3e 3c63 6f64 653e . The The gS\n-00128320: 4f41 5020 696d 706c 656d 656e 7461 7469 OAP implementati\n-00128330: 6f6e 2063 6f6e 666f 726d 7320 746f 2074 on conforms to t\n-00128340: 6865 2053 4f41 502d 6f76 6572 2d55 4450 he SOAP-over-UDP\n-00128350: 2072 6571 7569 7265 6d65 6e74 733a 3c2f requirements:\n-00128360: 703e 0a3c 756c 3e0a 3c6c 693e 534f 4150 p>. \n-00128750: 4120 534f 4150 2d6f 7665 722d 5544 5020 A SOAP-over-UDP \n-00128760: 6170 706c 6963 6174 696f 6e20 6d61 7920 application may \n-00128770: 7573 6520 5753 2d41 6464 7265 7373 696e use WS-Addressin\n-00128780: 6720 746f 2063 6f6e 7472 6f6c 206d 6573 g to control mes\n-00128790: 7361 6765 2064 656c 6976 6572 7920 6173 sage delivery as\n-001287a0: 2070 6572 2053 4f41 502d 6f76 6572 2d55 per SOAP-over-U\n-001287b0: 4450 2073 7065 6369 6669 6361 7469 6f6e DP specification\n-001287c0: 2e3c 2f70 3e0a 3c70 3e54 6865 203c 656d . The We\n-00128a30: 2061 6c73 6f20 696e 636c 7564 6564 2061 also included a\n-00128a40: 203c 636f 6465 3e2f 2f67 736f 6170 2077 One-way S\n-00128be0: 4f41 502d 6f76 6572 2d55 4450 206d 6573 OAP-over-UDP mes\n-00128bf0: 7361 6765 7320 2873 6565 2053 6563 7469 sages (see Secti\n-00128c00: 6f6e 203c 6120 636c 6173 733d 2265 6c22 on Async\n-00128c30: 6872 6f6e 6f75 7320 6f6e 652d 7761 7920 hronous one-way \n-00128c40: 6d65 7373 6167 6520 7061 7373 696e 673c message passing<\n-00128c50: 2f61 3e20 2920 7368 6f75 6c64 2062 6520 /a> ) should be \n-00128c60: 6465 636c 6172 6564 2074 6f20 696e 636c declared to incl\n-00128c70: 7564 6520 7468 6520 3c65 6d3e 3c63 6f64 ude the Request\n-00128f70: 2d72 6573 706f 6e73 6520 534f 4150 2d6f -response SOAP-o\n-00128f80: 7665 722d 5544 5020 6d65 7373 6167 6573 ver-UDP messages\n-00128f90: 2073 686f 756c 6420 6265 2064 6563 6c61 should be decla\n-00128fa0: 7265 6420 746f 2069 6e63 6c75 6465 2074 red to include t\n-00128fb0: 6865 203c 656d 3e3c 636f 6465 3e77 7361 he Fo\n-00129490: 7220 7468 6520 636f 6e74 656e 7420 7265 r the content re\n-001294a0: 7175 6972 656d 656e 7473 206f 6620 7468 quirements of th\n-001294b0: 6573 6520 656c 656d 656e 7473 2c20 706c ese elements, pl\n-001294c0: 6561 7365 2063 6f6e 7375 6c74 2074 6865 ease consult the\n-001294d0: 2053 4f41 502d 6f76 6572 2d55 4450 2073 SOAP-over-UDP s\n-001294e0: 7065 6369 6669 6361 7469 6f6e 2061 6e64 pecification and\n-001294f0: 2f6f 7220 7265 6164 2074 6865 206e 6578 /or read the nex\n-00129500: 7420 7365 6374 696f 6e73 2065 7870 6c61 t sections expla\n-00129510: 696e 696e 6720 534f 4150 2d6f 7665 722d ining SOAP-over-\n-00129520: 5544 5020 756e 6963 6173 742c 206d 756c UDP unicast, mul\n-00129530: 7469 6361 7374 2c20 6f6e 652d 7761 792c ticast, one-way,\n-00129540: 2061 6e64 2072 6571 7565 7374 2d72 6573 and request-res\n-00129550: 706f 6e73 6520 636c 6965 6e74 2061 6e64 ponse client and\n-00129560: 2073 6572 7665 7220 6170 706c 6963 6174 server applicat\n-00129570: 696f 6e73 2e3c 2f70 3e0a 3c70 3ef0 9f94 ions. ...\n-00129580: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n-00129590: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n-001295a0: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents \n-00129600: 5468 6973 2065 7861 6d70 6c65 2061 7373 This example ass\n-00129610: 756d 6573 2074 6861 7420 7468 6520 696e umes that the in\n-00129620: 7465 7266 6163 6520 6865 6164 6572 2066 terface header f\n-00129630: 696c 6520 696e 636c 7564 6573 2074 6865 ile includes the\n-00129640: 2053 4f41 5020 4865 6164 6572 2077 6974 SOAP Header wit\n-00129650: 6820 5753 2d41 6464 7265 7373 696e 6720 h WS-Addressing \n-00129660: 656c 656d 656e 7473 2c20 7365 6520 3c61 elements, see The WS-A\n-001296a0: 6464 7265 7373 696e 6720 706c 7567 696e ddressing plugin\n-001296b0: 3c2f 613e 2c20 616e 6420 7468 6520 3c63 , and the Please\n-0012b870: 2072 6566 6572 2074 6f20 7468 6520 736f refer to the so\n-0012b880: 636b 6574 206f 7074 696f 6e73 2066 6f72 cket options for\n-0012b890: 203c 636f 6465 3e49 5050 524f 544f 5f49 Pl\n-0012b9e0: 6561 7365 2072 6566 6572 2074 6f20 7468 ease refer to th\n-0012b9f0: 6520 736f 636b 6574 206f 7074 696f 6e73 e socket options\n-0012ba00: 2066 6f72 203c 636f 6465 3e49 5050 524f for \n-0012bba0: 5468 6973 2065 7861 6d70 6c65 2061 7373 This example ass\n-0012bbb0: 756d 6573 2074 6861 7420 7468 6520 696e umes that the in\n-0012bbc0: 7465 7266 6163 6520 6865 6164 6572 2066 terface header f\n-0012bbd0: 696c 6520 666f 7220 736f 6170 6370 7032 ile for soapcpp2\n-0012bbe0: 2069 6e63 6c75 6465 7320 7468 6520 534f includes the SO\n-0012bbf0: 4150 2048 6561 6465 7220 7769 7468 2057 AP Header with W\n-0012bc00: 532d 4164 6472 6573 7369 6e67 2065 6c65 S-Addressing ele\n-0012bc10: 6d65 6e74 7320 696d 706f 7274 6564 2077 ments imported w\n-0012bc20: 6974 6820 3c63 6f64 653e 2369 6d70 6f72 ith .... Back to table \n-0012cad0: 6f66 2063 6f6e 7465 6e74 733c 2f61 3e3c of contents<\n-0012cae0: 2f70 3e0a 3c68 333e 3c61 2063 6c61 7373 /p>. This\n-0012cb50: 2065 7861 6d70 6c65 2069 7320 7369 6d69 example is simi\n-0012cb60: 6c61 7220 746f 2074 6865 2072 6571 7565 lar to the reque\n-0012cb70: 7374 2d72 6573 706f 6e73 6520 756e 6963 st-response unic\n-0012cb80: 6173 7420 6578 616d 706c 6520 6469 7363 ast example disc\n-0012cb90: 7573 7365 6420 6162 6f76 652c 2062 7574 ussed above, but\n-0012cba0: 2075 7365 7320 6120 6272 6f61 6463 6173 uses a broadcas\n-0012cbb0: 7420 6164 6472 6573 7320 616e 6420 7468 t address and th\n-0012cbc0: 6520 3c63 6f64 653e 534f 5f42 524f 4144 e To obtain \n-0012d2e0: 7265 7370 6f6e 7365 206f 6e65 2d77 6179 response one-way\n-0012d2f0: 206f 7065 7261 7469 6f6e 732c 2075 7365 operations, use\n-0012d300: 203c 6120 6872 6566 3d22 2377 7364 6c32 The\n-0012d360: 2063 6c69 656e 7420 636f 6465 2069 6e63 client code inc\n-0012d370: 6c75 6465 7320 6120 6c6f 6f70 2074 6f20 ludes a loop to \n-0012d380: 7265 6365 6976 6520 7265 7370 6f6e 7365 receive response\n-0012d390: 206d 6573 7361 6765 7320 756e 7469 6c20 messages until \n-0012d3a0: 6120 7469 6d65 6f75 7420 6f63 6375 7273 a timeout occurs\n-0012d3b0: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 : Not\n-0012e600: 6520 7468 6174 2061 2073 6572 7665 7220 e that a server \n-0012e610: 666f 7220 7468 6520 3c63 6f64 653e 6263 for the The following\n-0012e770: 2065 7861 6d70 6c65 2063 6f64 6520 696c example code il\n-0012e780: 6c75 7374 7261 7465 7320 6120 534f 4150 lustrates a SOAP\n-0012e790: 2d6f 7665 722d 5544 5020 7365 7276 6572 -over-UDP server\n-0012e7a0: 2066 6f72 206f 6e65 2d77 6179 203c 636f for one-way The s\n-00130890: 6572 7665 7220 6269 6e64 7320 746f 2061 erver binds to a\n-001308a0: 2068 6f73 7420 616e 6420 706f 7274 2061 host and port a\n-001308b0: 6e64 2061 6363 6570 7473 206d 6573 7361 nd accepts messa\n-001308c0: 6765 7320 696e 2061 206c 6f6f 702e 2042 ges in a loop. B\n-001308d0: 6563 6175 7365 2055 4450 2064 6f65 7320 ecause UDP does \n-001308e0: 6e6f 7420 6861 7665 2074 6865 2065 7175 not have the equ\n-001308f0: 6976 616c 656e 7420 6f66 2061 6e20 6163 ivalent of an ac\n-00130900: 6365 7074 2c20 7468 6520 6d65 7373 6167 cept, the messag\n-00130910: 6573 2063 616e 6e6f 7420 6265 2064 6973 es cannot be dis\n-00130920: 7061 7463 6865 6420 746f 2074 6872 6561 patched to threa\n-00130930: 6473 2e20 496e 7374 6561 6420 7468 6520 ds. Instead the \n-00130940: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 To obt\n-00130ba0: 6169 6e20 7265 7370 6f6e 7365 206f 6e65 ain response one\n-00130bb0: 2d77 6179 206f 7065 7261 7469 6f6e 7320 -way operations \n-00130bc0: 6672 6f6d 2061 2057 5344 4c2c 2075 7365 from a WSDL, use\n-00130bd0: 203c 6120 6872 6566 3d22 2377 7364 6c32 Fo\n-00130d50: 7220 5544 5020 6d75 6c74 6963 6173 7420 r UDP multicast \n-00130d60: 7375 7070 6f72 742c 2066 6f6c 6c6f 7720 support, follow \n-00130d70: 7468 6520 7375 6767 6573 7469 6f6e 7320 the suggestions \n-00130d80: 696e 2053 6563 7469 6f6e 203c 6120 636c in Section SOAP-over\n-00130dc0: 2d55 4450 2073 6572 7665 723c 2f61 3e20 -UDP server \n-00130dd0: 616e 6420 6368 616e 6765 2074 6865 2069 and change the i\n-00130de0: 6e69 7469 616c 697a 6174 696f 6e20 7061 nitialization pa\n-00130df0: 7274 7320 6f66 2074 6865 2063 6f64 6520 rts of the code \n-00130e00: 746f 2065 6e61 626c 6520 5544 5020 6d75 to enable UDP mu\n-00130e10: 6c74 6963 6173 7420 706f 7274 2062 696e lticast port bin\n-00130e20: 6469 6e67 2062 7920 746f 2074 656c 6c69 ding by to telli\n-00130e30: 6e67 2074 6865 206b 6572 6e65 6c20 7768 ng the kernel wh\n-00130e40: 6963 6820 6d75 6c74 6963 6173 7420 6772 ich multicast gr\n-00130e50: 6f75 7073 2079 6f75 2061 7265 2069 6e74 oups you are int\n-00130e60: 6572 6573 7465 6420 696e 3a3c 2f70 3e0a erested in: The following\n-00131b90: 206d 6163 726f 7320 6172 6520 6465 6669 macros are defi\n-00131ba0: 6e65 6420 696e 2074 6865 2041 5049 2064 ned in the API d\n-00131bb0: 6f63 756d 656e 7461 7469 6f6e 204d 6f64 ocumentation Mod\n-00131bc0: 756c 6520 3c61 2063 6c61 7373 3d22 656c ule WITH_MACRO comp\n-00131c00: 696c 652d 7469 6d65 2066 6c61 6773 3c2f ile-time flags\n-00131c10: 613e 2e20 5468 6573 6520 6d61 6372 6f73 a>. These macros\n-00131c20: 2061 7265 2075 7365 6420 746f 2065 6e61 are used to ena\n-00131c30: 626c 6520 6f72 2064 6973 6162 6c65 2066 ble or disable f\n-00131c40: 6561 7475 7265 7320 6173 2073 7065 6369 eatures as speci\n-00131c50: 6669 6564 2062 656c 6f77 2c20 6279 2063 fied below, by c\n-00131c60: 6f6d 7069 6c69 6e67 2073 6f75 7263 6520 ompiling source \n-00131c70: 636f 6465 2066 696c 6573 2077 6974 6820 code files with \n-00131c80: 636f 6d70 696c 6572 206f 7074 696f 6e20 compiler option \n-00131c90: 3c62 3e3c 636f 6465 3e2d 443c 2f63 6f64 The fo\n-001342b0: 6c6c 6f77 696e 6720 7375 6273 6574 206f llowing subset o\n-001342c0: 6620 6d61 6372 6f73 2061 7265 2064 6566 f macros are def\n-001342d0: 696e 6564 2069 6e20 7468 6520 4150 4920 ined in the API \n-001342e0: 646f 6375 6d65 6e74 6174 696f 6e20 4d6f documentation Mo\n-001342f0: 6475 6c65 203c 6120 636c 6173 733d 2265 dule SOAP_MACRO com\n-00134330: 7069 6c65 2d74 696d 6520 7661 6c75 6573 pile-time values\n-00134340: 3c2f 613e 2e20 5468 6573 6520 6d61 6372 . These macr\n-00134350: 6f73 2061 7265 2075 7365 6420 746f 2065 os are used to e\n-00134360: 6e61 626c 6520 6f72 2064 6973 6162 6c65 nable or disable\n-00134370: 2066 6561 7475 7265 7320 6173 2073 7065 features as spe\n-00134380: 6369 6669 6564 2062 656c 6f77 2c20 6279 cified below, by\n-00134390: 2063 6f6d 7069 6c69 6e67 2073 6f75 7263 compiling sourc\n-001343a0: 6520 636f 6465 2066 696c 6573 2077 6974 e code files wit\n-001343b0: 6820 636f 6d70 696c 6572 206f 7074 696f h compiler optio\n-001343c0: 6e20 3c62 3e3c 636f 6465 3e2d 443c 2f63 n .... Back to table \n-00135ce0: 6f66 2063 6f6e 7465 6e74 733c 2f61 3e3c of contents<\n-00135cf0: 2f70 3e0a 3c68 323e 3c61 2063 6c61 7373 /p>. The Th\n-00135e40: 6520 3c65 6d3e 3c63 6f64 653e 736f 6170 e \n-00135fc0: 2046 6f72 2065 7861 6d70 6c65 2c3c 2f70 For example, The follow\n-001360c0: 696e 6720 6865 6164 6572 2066 696c 6520 ing header file \n-001360d0: 666f 7220 736f 6170 6370 7032 2072 6566 for soapcpp2 ref\n-001360e0: 6572 7320 746f 203c 636f 6465 3e73 7464 ers to See\n-00136480: 2061 6c73 6f20 5365 6374 696f 6e20 3c61 also Section Transien\n-001364c0: 7420 6461 7461 2074 7970 6573 3c2f 613e t data types\n-001364d0: 202c 206e 6f6e 2d73 6572 6961 6c69 7a61 , non-serializa\n-001364e0: 626c 6520 6461 7461 2074 7970 6573 2e3c ble data types.<\n-001364f0: 2f70 3e0a 3c70 3ef0 9f94 9d20 3c61 2068 /p>. The gSOAP\n-00136570: 2065 6e67 696e 6520 7374 6174 6520 6973 engine state is\n-00136580: 2073 746f 7265 6420 696e 2074 6865 203c stored in the <\n-00136590: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>soap\n-001365f0: 2063 6f6e 7465 7874 2074 6861 7420 6973 context that is\n-00136600: 2069 6e69 7469 616c 697a 6564 2061 6e64 initialized and\n-00136610: 2063 6f6e 7472 6f6c 6c65 6420 6279 2076 controlled by v\n-00136620: 6172 696f 7573 206f 7074 696f 6e61 6c20 arious optional \n-00136630: 7275 6e74 696d 6520 666c 6167 732e 204d runtime flags. M\n-00136640: 6f73 7420 666c 6167 7320 6172 6520 6170 ost flags are ap\n-00136650: 706c 6963 6162 6c65 2074 6f20 6569 7468 plicable to eith\n-00136660: 6572 2070 726f 6365 7373 696e 6720 696e er processing in\n-00136670: 7075 7420 6f72 2074 6f20 7072 6f63 6573 put or to proces\n-00136680: 7369 6e67 206f 7574 7075 742c 2062 7574 sing output, but\n-00136690: 2073 6f6d 6520 6172 6520 6170 706c 6963 some are applic\n-001366a0: 6162 6c65 2074 6f20 626f 7468 2069 6e70 able to both inp\n-001366b0: 7574 2061 6e64 206f 7574 7075 7420 6d65 ut and output me\n-001366c0: 7373 6167 6520 616e 6420 646f 6375 6d65 ssage and docume\n-001366d0: 6e74 2070 726f 6365 7373 696e 672e 3c2f nt processing.\n-001366e0: 703e 0a3c 703e 4675 7274 6865 726d 6f72 p>. Furthermor\n-001366f0: 652c 2074 6865 7365 2066 6c61 6773 2061 e, these flags a\n-00136700: 7265 2064 6976 6964 6564 2069 6e74 6f20 re divided into \n-00136710: 666f 7572 2063 6174 6567 6f72 6965 733a four categories:\n-00136720: 2074 7261 6e73 706f 7274 2028 494f 292c transport (IO),\n-00136730: 2063 6f6e 7465 6e74 2065 6e63 6f64 696e content encodin\n-00136740: 6720 2845 4e43 292c 2058 4d4c 2070 6172 g (ENC), XML par\n-00136750: 7369 6e67 2061 6e64 2067 656e 6572 6174 sing and generat\n-00136760: 696f 6e20 2858 4d4c 292c 2061 6e64 2043 ion (XML), and C\n-00136770: 2f43 2b2b 2075 7361 6765 2028 4329 2e3c /C++ usage (C).<\n-00136780: 2f70 3e0a 3c70 3e54 6865 2069 6e70 7574 /p>. The input\n-00136790: 2d6d 6f64 6520 616e 6420 6f75 7470 7574 -mode and output\n-001367a0: 2d6d 6f64 6520 666c 6167 7320 666f 7220 -mode flags for \n-001367b0: 696e 626f 756e 6420 2869 6e29 2061 6e64 inbound (in) and\n-001367c0: 206f 7574 626f 756e 6420 286f 7574 2920 outbound (out) \n-001367d0: 6d65 7373 6167 6520 7072 6f63 6573 7369 message processi\n-001367e0: 6e67 2061 7265 3a3c 2f70 3e0a 3c74 6162 ng are: All \n-00138470: 666c 6167 7320 6172 6520 696e 6465 7065 flags are indepe\n-00138480: 6e64 656e 7420 616e 6420 6361 6e20 6265 ndent and can be\n-00138490: 2063 6f6d 6269 6e65 6420 7573 696e 6720 combined using \n-001384a0: 6120 6269 7477 6973 6520 6f72 2028 3c63 a bitwise or ( \n-00138600: 546f 2061 6c6c 6f63 6174 6520 616e 6420 To allocate and \n-00138610: 696e 6974 6961 6c69 7a65 2061 203c 636f initialize a \n-00138bf0: 546f 2069 6e69 7469 616c 697a 6520 6120 To initialize a \n-00138c00: 7374 6163 6b2d 616c 6c6f 6361 7465 6420 stack-allocated \n-00138c10: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 To set and cl\n-001392a0: 6561 7220 6d6f 6465 2066 6c61 6773 2075 ear mode flags u\n-001392b0: 7365 3a3c 2f70 3e0a 3c64 6976 2063 6c61 se: In\n-0013a7f0: 2061 6464 6974 696f 6e20 746f 2074 6865 addition to the\n-0013a800: 2063 6f6e 7465 7874 206d 6f64 6520 666c context mode fl\n-0013a810: 6167 732c 2074 6865 2066 6f6c 6c6f 7769 ags, the followi\n-0013a820: 6e67 2063 6f6e 7465 7874 2066 6c61 6773 ng context flags\n-0013a830: 2063 616e 2062 6520 7573 6564 2074 6f20 can be used to \n-0013a840: 7365 7420 3c63 6f64 653e 7365 7473 6f63 set \n-0013bd90: 466f 7220 6578 616d 706c 652c 2077 6865 For example, whe\n-0013bda0: 6e20 3c63 6f64 653e 3c61 2063 6c61 7373 n Th\n-0013bff0: 6520 3c63 6f64 653e 3c61 2063 6c61 7373 e Furthermore\n-0013c5d0: 2c20 7468 6520 3c63 6f64 653e 7365 7473 , the The Sinc\n-00149b40: 6520 7468 6520 3c63 6f64 653e 6e61 6d65 e the Howev\n-00149e20: 6572 2c20 7768 656e 2069 6e73 7461 6e63 er, when instanc\n-00149e30: 6573 206f 6620 3c63 6f64 653e 436c 6173 es of Th\n-0014a090: 6973 206f 6e6c 7920 6672 6565 7320 3c63 is only frees The o\n-0014a310: 7468 6572 206d 6574 686f 6473 2061 7265 ther methods are\n-0014a320: 2061 6c73 6f20 6d61 6465 2063 6f67 6e69 also made cogni\n-0014a330: 7a61 6e74 206f 6620 7468 6520 7072 6573 zant of the pres\n-0014a340: 656e 6365 206f 6620 6120 636f 6e74 6578 ence of a contex\n-0014a350: 743a 3c2f 703e 0a3c 6469 7620 636c 6173 t: Another \n-0014a6e0: 6170 7072 6f61 6368 2069 7320 746f 2075 approach is to u\n-0014a6f0: 7365 203c 636f 6465 3e3c 6120 636c 6173 se \n-0014add0: 5468 6520 3c63 6f64 653e 3c61 2063 6c61 The To activate \n-0014b160: 6465 6275 6767 696e 6720 616e 6420 6d65 debugging and me\n-0014b170: 7373 6167 6520 6c6f 6767 696e 6720 636f ssage logging co\n-0014b180: 6d70 696c 6520 7468 6520 736f 7572 6365 mpile the source\n-0014b190: 2063 6f64 6520 7769 7468 2063 6f6d 7069 code with compi\n-0014b1a0: 6c65 2d74 696d 6520 666c 6167 203c 636f le-time flag When \n-0014b280: 796f 7572 2067 534f 4150 2063 6c69 656e your gSOAP clien\n-0014b290: 7420 6f72 2073 6572 7665 7220 6170 706c t or server appl\n-0014b2a0: 6963 6174 696f 6e73 2072 756e 2c20 7468 ications run, th\n-0014b2b0: 6579 2077 696c 6c20 6c6f 6720 7468 6569 ey will log thei\n-0014b2c0: 7220 6163 7469 7669 7479 2069 6e20 7468 r activity in th\n-0014b2d0: 7265 6520 7365 7061 7261 7465 2066 696c ree separate fil\n-0014b2e0: 6573 3a3c 2f70 3e0a 3c75 6c3e 0a3c 6c69 es: You can set \n-0014b480: 6d61 6372 6f20 3c63 6f64 653e 2344 4542 macro When i\n-0014b550: 6e73 7461 6c6c 696e 6720 6120 4347 4920 nstalling a CGI \n-0014b560: 7365 7276 6963 6520 6170 706c 6963 6174 service applicat\n-0014b570: 696f 6e20 636f 6d70 696c 6564 2077 6974 ion compiled wit\n-0014b580: 6820 6465 6275 6767 696e 6720 656e 6162 h debugging enab\n-0014b590: 6c65 642c 2074 6865 206c 6f67 2066 696c led, the log fil\n-0014b5a0: 6573 206d 6179 2073 6f6d 6574 696d 6573 es may sometimes\n-0014b5b0: 206e 6f74 2062 6520 6372 6561 7465 6420 not be created \n-0014b5c0: 6475 6520 746f 2066 696c 6520 6163 6365 due to file acce\n-0014b5d0: 7373 2070 6572 6d69 7373 696f 6e20 7265 ss permission re\n-0014b5e0: 7374 7269 6374 696f 6e73 2069 6d70 6f73 strictions impos\n-0014b5f0: 6564 206f 6e20 4347 4920 6170 706c 6963 ed on CGI applic\n-0014b600: 6174 696f 6e73 2e20 546f 2067 6574 2061 ations. To get a\n-0014b610: 726f 756e 6420 7468 6973 2c20 6372 6561 round this, crea\n-0014b620: 7465 2065 6d70 7479 206c 6f67 2066 696c te empty log fil\n-0014b630: 6573 2077 6974 6820 756e 6976 6572 7361 es with universa\n-0014b640: 6c20 7772 6974 6520 7065 726d 6973 7369 l write permissi\n-0014b650: 6f6e 732e 2042 6520 6361 7265 6675 6c20 ons. Be careful \n-0014b660: 6162 6f75 7420 7468 6520 7365 6375 7269 about the securi\n-0014b670: 7479 2069 6d70 6c69 6361 7469 6f6e 206f ty implication o\n-0014b680: 6620 7468 6973 2e3c 2f70 3e0a 3c70 3e59 f this. Y\n-0014b690: 6f75 2063 616e 2061 6374 7561 6c6c 7920 ou can actually \n-0014b6a0: 7465 7374 2061 2043 4749 2073 6572 7669 test a CGI servi\n-0014b6b0: 6365 2061 7070 6c69 6361 7469 6f6e 2077 ce application w\n-0014b6c0: 6974 686f 7574 2064 6570 6c6f 7969 6e67 ithout deploying\n-0014b6d0: 2069 7420 6f6e 2074 6865 2057 6562 2e20 it on the Web. \n-0014b6e0: 546f 2064 6f20 7468 6973 2c20 6372 6561 To do this, crea\n-0014b6f0: 7465 2074 6865 2043 4749 2073 6572 7669 te the CGI servi\n-0014b700: 6365 2061 7070 6c69 6361 7469 6f6e 2061 ce application a\n-0014b710: 6e64 2073 656e 6420 6974 2061 2072 6571 nd send it a req\n-0014b720: 7565 7374 206d 6573 7361 6765 2075 7369 uest message usi\n-0014b730: 6e67 2072 6564 6972 6563 7469 6f6e 2061 ng redirection a\n-0014b740: 7320 666f 6c6c 6f77 733a 203c 2f70 3e3c s follows: \n-0014b790: 2074 6869 7320 7368 6f75 6c64 2064 6973 this should dis\n-0014b7a0: 706c 6179 2074 6865 2073 6572 7669 6365 play the service\n-0014b7b0: 2072 6573 706f 6e73 6520 6f6e 2074 6865 response on the\n-0014b7c0: 2074 6572 6d69 6e61 6c2c 2077 6865 7265 terminal, where\n-0014b7d0: 203c 656d 3e3c 636f 6465 3e6e 732e 6164 The file\n-0014b960: 206e 616d 6573 206f 6620 7468 6520 6c6f names of the lo\n-0014b970: 6720 6669 6c65 7320 616e 6420 7468 6520 g files and the \n-0014b980: 6c6f 6767 696e 6720 6163 7469 7669 7479 logging activity\n-0014b990: 2063 616e 2062 6520 636f 6e74 726f 6c6c can be controll\n-0014b9a0: 6564 2061 7420 7468 6520 6170 706c 6963 ed at the applic\n-0014b9b0: 6174 696f 6e20 6c65 7665 6c2e 2054 6869 ation level. Thi\n-0014b9c0: 7320 616c 6c6f 7773 2074 6865 2063 7265 s allows the cre\n-0014b9d0: 6174 696f 6e20 6f66 2073 6570 6172 6174 ation of separat\n-0014b9e0: 6520 6c6f 6720 6669 6c65 7320 6279 2073 e log files by s\n-0014b9f0: 6570 6172 6174 6520 7365 7276 6963 6573 eparate services\n-0014ba00: 2c20 636c 6965 6e74 732c 2061 6e64 2074 , clients, and t\n-0014ba10: 6872 6561 6473 2e20 466f 7220 6578 616d hreads. For exam\n-0014ba20: 706c 652c 2074 6865 2066 6f6c 6c6f 7769 ple, the followi\n-0014ba30: 6e67 2073 6572 7669 6365 206c 6f67 7320 ng service logs \n-0014ba40: 616c 6c20 6d65 7373 6167 6573 2028 6275 all messages (bu\n-0014ba50: 7420 6e6f 2064 6562 7567 206d 6573 7361 t no debug messa\n-0014ba60: 6765 7329 2069 6e20 7365 7061 7261 7465 ges) in separate\n-0014ba70: 2064 6972 6563 746f 7269 6573 3a3c 2f70 directories: Likew\n-0014c5b0: 6973 652c 206d 6573 7361 6765 7320 6361 ise, messages ca\n-0014c5c0: 6e20 6265 206c 6f67 6765 6420 666f 7220 n be logged for \n-0014c5d0: 696e 6469 7669 6475 616c 2063 6c69 656e individual clien\n-0014c5e0: 742d 7369 6465 2073 6572 7669 6365 206f t-side service o\n-0014c5f0: 7065 7261 7469 6f6e 2063 616c 6c73 2069 peration calls i\n-0014c600: 6e20 6120 636c 6965 6e74 2061 7070 6c69 n a client appli\n-0014c610: 6361 7469 6f6e 2e3c 2f70 3e0a 3c70 3e54 cation. T\n-0014c620: 6f20 6c6f 6720 6d65 7373 6167 6573 206d o log messages m\n-0014c630: 6f72 6520 6566 6669 6369 656e 746c 792c ore efficiently,\n-0014c640: 2075 7365 2074 6865 203c 636f 6465 3e3c use the From the \n-0014c770: 7065 7273 7065 6374 6976 6520 6f66 2074 perspective of t\n-0014c780: 6865 2043 2f43 2b2b 206c 616e 6775 6167 he C/C++ languag\n-0014c790: 652c 2061 2066 6577 2043 2f43 2b2b 206c e, a few C/C++ l\n-0014c7a0: 616e 6775 6167 6520 6665 6174 7572 6573 anguage features\n-0014c7b0: 2061 7265 206e 6f74 2073 7570 706f 7274 are not support\n-0014c7c0: 6564 2062 7920 6753 4f41 5020 616e 6420 ed by gSOAP and \n-0014c7d0: 7468 6573 6520 6665 6174 7572 6573 2063 these features c\n-0014c7e0: 616e 6e6f 7420 6265 2075 7365 6420 696e annot be used in\n-0014c7f0: 2061 6e20 696e 7465 7266 6163 6520 6865 an interface he\n-0014c800: 6164 6572 2066 696c 6520 666f 7220 736f ader file for so\n-0014c810: 6170 6370 7032 2e3c 2f70 3e0a 3c75 6c3e apcpp2. The fol\n-0014d000: 6c6f 7769 6e67 2043 2f43 2b2b 2064 6174 lowing C/C++ dat\n-0014d010: 6120 7479 7065 7320 7265 7175 6972 6520 a types require \n-0014d020: 736f 6d65 2061 7474 656e 7469 6f6e 2074 some attention t\n-0014d030: 6f20 656e 7375 7265 2074 6865 7920 6361 o ensure they ca\n-0014d040: 6e20 6265 2073 6572 6961 6c69 7a65 643a n be serialized:\n-0014d050: 3c2f 703e 0a3c 756c 3e0a 3c6c 693e 556e Reg\n-0014d7e0: 756c 6172 2038 2d62 6974 2073 7472 696e ular 8-bit strin\n-0014d7f0: 6773 2063 616e 6e6f 7420 686f 6c64 2077 gs cannot hold w\n-0014d800: 6964 6520 6368 6172 6163 7465 7273 206f ide characters o\n-0014d810: 7574 7369 6465 206f 6620 7468 6520 6368 utside of the ch\n-0014d820: 6172 6163 7465 7220 7261 6e67 6520 5b31 aracter range [1\n-0014d830: 2c32 3535 5d2e 204f 6620 636f 7572 7365 ,255]. Of course\n-0014d840: 2079 6f75 2063 616e 2075 7365 2077 6964 you can use wid\n-0014d850: 6520 7374 7269 6e67 7320 696e 7374 6561 e strings instea\n-0014d860: 6420 6f66 2038 2d62 6974 2073 7472 696e d of 8-bit strin\n-0014d870: 6773 2069 6e20 7468 6520 696e 7465 7266 gs in the interf\n-0014d880: 6163 6520 6865 6164 6572 2066 696c 6520 ace header file \n-0014d890: 666f 7220 736f 6170 6370 7032 2e20 416c for soapcpp2. Al\n-0014d8a0: 7465 726e 6174 6976 656c 792c 2073 6574 ternatively, set\n-0014d8b0: 2074 6865 203c 636f 6465 3e23 534f 4150 the For example, th\n-0014d930: 6520 3c65 6d3e 3c63 6f64 653e 7873 643a e See a\n-0014e190: 6c73 6f20 3c61 2068 7265 663d 222e 2e2f lso \n-0014e1c0: 4320 616e 6420 432b 2b20 584d 4c20 6461 C and C++ XML da\n-0014e1d0: 7461 2062 696e 6469 6e67 733c 2f61 3e20 ta bindings \n-0014e1e0: 646f 6375 6d65 6e74 6174 696f 6e20 666f documentation fo\n-0014e1f0: 7220 6d6f 7265 2064 6574 6169 6c73 206f r more details o\n-0014e200: 6e20 7573 696e 6720 3c65 6d3e 3c63 6f64 n using ...\n-0014e240: 9d20 3c61 2068 7265 663d 2223 223e 4261 . Ba\n-0014e250: 636b 2074 6f20 7461 626c 6520 6f66 2063 ck to table of c\n-0014e260: 6f6e 7465 6e74 733c 2f61 3e3c 2f70 3e0a ontents An\n-0014e2b0: 2069 6e74 6572 6661 6365 2068 6561 6465 interface heade\n-0014e2c0: 7220 6669 6c65 2066 6f72 2073 6f61 7063 r file for soapc\n-0014e2d0: 7070 3220 6d61 7920 696e 636c 7564 6520 pp2 may include \n-0014e2e0: 3c63 6f64 653e 2f2f 6773 6f61 703c 2f63 A s\n-0014e480: 6572 7669 6365 2064 6972 6563 7469 7665 ervice directive\n-0014e490: 206d 7573 7420 7374 6172 7420 6174 2061 must start at a\n-0014e4a0: 206e 6577 206c 696e 6520 616e 6420 6973 new line and is\n-0014e4b0: 206f 6620 7468 6520 666f 726d 3a3c 2f70 of the form: where __ptr
an\n-000e6430: 6420 3c63 6f64 653e 5f5f 7369 7a65 3c2f d __size\n-000e6440: 636f 6465 3e20 6d65 6d62 6572 733a 3c2f code> members:\n-000e6450: 703e 0a3c 6469 7620 636c 6173 733d 2266 p>.
__size\n-000e6720: 3c2f 636f 6465 3e20 6d65 6d62 6572 2028
member (\n-000e6730: 3c63 6f64 653e 5f5f 7369 7a65 4e61 6d65 __sizeName\n-000e6740: 3c2f 636f 6465 3e20 6973 2061 6c73 6f20
is also \n-000e6750: 616c 6c6f 7765 6429 2074 6861 7420 7072 allowed) that pr\n-000e6760: 6563 6564 6573 2061 2070 6f69 6e74 6572 ecedes a pointer\n-000e6770: 206d 656d 6265 723a 3c2f 703e 0a3c 6469 member:// number of\n-000e68e0: 2065 6c65 6d65 6e74 7320 706f 696e 7465 elements pointe\n-000e68f0: 6420 746f 203c 2f73 7061 6e3e 3c2f 6469 d to .// pointer t\n-000e6ad0: 6f20 6172 7261 7920 6f66 2065 6c65 6d65 o array of eleme\n-000e6ae0: 6e74 7320 696e 206d 656d 6f72 793c 2f73 nts in memory$<\n-000e6f30: 2f63 6f64 653e 2720 6173 2061 2073 7065 /code>' as a spe\n-000e6f40: 6369 616c 206d 6172 6b65 7220 746f 2061 cial marker to a\n-000e6f50: 6e6e 6f74 6174 6520 6120 7369 7a65 206d nnotate a size m\n-000e6f60: 656d 6265 7220 696e 7374 6561 6420 6f66 ember instead of\n-000e6f70: 2072 6571 7569 7269 6e67 2074 6865 7365 requiring these\n-000e6f80: 206d 656d 6265 7273 2074 6f20 7374 6172 members to star\n-000e6f90: 7420 7769 7468 203c 636f 6465 3e5f 5f73 t with
__s\n-000e6fa0: 697a 653c 2f63 6f64 653e 3a3c 2f70 3e0a ize
:pair> ns__\n-000e7dc0: 436f 6e74 6163 743c 2f63 6f64 653e 2069 Contact
i\n-000e7dd0: 733a 3c2f 703e 0a3c 6469 7620 636c 6173 s:..\n-000e8400: 5354 4c20 636f 6e74 6169 6e65 7273 3c2f STL containers\n-000e8410: 6833 3e0a 3c70 3e54 6865 2053 544c 2063 h3>.
\n-000e8430: 7374 643a 3a64 6571 7565 3c2f 636f 6465 std::deque
, std::li\n-000e8450: 7374 3c2f 636f 6465 3e2c 203c 636f 6465 st
, std::set
\n-000e8470: 2c20 616e 6420 3c63 6f64 653e 7374 643a , and std:\n-000e8480: 3a76 6563 746f 723c 2f63 6f64 653e 2061 :vector
a\n-000e8490: 7265 2073 6572 6961 6c69 7a61 626c 6520 re serializable \n-000e84a0: 696e 2058 4d4c 2062 7920 7468 6520 736f in XML by the so\n-000e84b0: 6170 6370 7032 2d67 656e 6572 6174 6564 apcpp2-generated\n-000e84c0: 2073 6572 6961 6c69 7a65 7273 2e3c 2f70 serializers.stlde\n-000e8530: 7175 652e 683c 2f63 6f64 653e 3c2f 656d que.h
, stl\n-000e8550: 6c69 7374 2e68 3c2f 636f 6465 3e3c 2f65 list.h
, st\n-000e8570: 6c73 6574 2e68 3c2f 636f 6465 3e3c 2f65 lset.h
, or stlvector.h
to enab\n-000e85b0: 6c65 203c 636f 6465 3e73 7464 3a3a 6465 le std::de\n-000e85c0: 7175 653c 2f63 6f64 653e 2c20 3c63 6f64 que
, std::s\n-000e85f0: 6574 3c2f 636f 6465 3e2c 2061 6e64 203c et
, and <\n-000e8600: 636f 6465 3e73 7464 3a3a 7665 6374 6f72 code>std::vector\n-000e8610: 3c2f 636f 6465 3e2c 2072 6573 7065 6374 , respect\n-000e8620: 6976 656c 792e 2046 6f72 2065 7861 6d70 ively. For examp\n-000e8630: 6c65 3a3c 2f70 3e0a 3c64 6976 2063 6c61 le:name shown above i\n-000e88a0: 7320 706f 7373 6962 6c65 2c20 6275 7420 s possible, but \n-000e88b0: 6e6f 7420 7265 7175 6972 6564 2e20 416c not required. Al\n-000e88c0: 736f 203c 636f 6465 3e6d 696e 4f63 6375 so
minOccu\n-000e88d0: 7273 203a 206d 6178 4f63 6375 7273 3c2f rs : maxOccurs\n-000e88e0: 636f 6465 3e20 616e 6420 3c63 6f64 653e code> and
\n-000e88f0: 6d69 6e4f 6363 7572 733c 2f63 6f64 653e minOccurs
\n-000e8900: 206c 656e 6774 6820 636f 6e73 7472 6169 length constrai\n-000e8910: 6e74 7320 6361 6e20 6265 2073 7065 6369 nts can be speci\n-000e8920: 6669 6564 2061 7320 7368 6f77 6e20 696e fied as shown in\n-000e8930: 2074 6865 2065 7861 6d70 6c65 2061 626f the example abo\n-000e8940: 7665 2e20 5468 6520 584d 4c20 7363 6865 ve. The XML sche\n-000e8950: 6d61 2074 6861 7420 636f 7272 6573 706f ma that correspo\n-000e8960: 6e64 7320 746f 2074 6865 203c 636f 6465 nds to the ns__myClass type is:
"\n-000e8a40: 6d79 436c 6173 7326 7175 6f74 3b3c 2f73 myClass"> .
.void cle\n-000e8f90: 6172 2829 3c2f 636f 6465 3e20 656d 7074 ar()
empt\n-000e8fa0: 7920 7468 6520 636f 6e74 6169 6e65 723b y the container;\n-000e8fb0: 3c2f 6c69 3e0a 3c6c 693e 3c63 6f64 653e .\n-000e8fc0: 6974 6572 6174 6f72 2062 6567 696e 2829 iterator begin()\n-000e8fd0: 3c2f 636f 6465 3e20 7265 7475 726e 2069
return i\n-000e8fe0: 7465 7261 746f 7220 746f 2062 6567 696e terator to begin\n-000e8ff0: 6e69 6e67 3b3c 2f6c 693e 0a3c 6c69 3e3c ning;iter\n-000e9060: 6174 6f72 2065 6e64 2829 3c2f 636f 6465 ator end()
return iterato\n-000e9080: 7220 746f 2065 6e64 3b3c 2f6c 693e 0a3c r to end;const_i\n-000e90a0: 7465 7261 746f 7220 656e 6428 2920 636f terator end() co\n-000e90b0: 6e73 743c 2f63 6f64 653e 2072 6574 7572 nst
retur\n-000e90c0: 6e20 636f 6e73 7420 6974 6572 6174 6f72 n const iterator\n-000e90d0: 2074 6f20 656e 643b 3c2f 6c69 3e0a 3c6c to end;.size_t s\n-000e90f0: 697a 6528 293c 2f63 6f64 653e 2072 6574 ize()
ret\n-000e9100: 7572 6e20 7369 7a65 3b3c 2f6c 693e 0a3c urn size;.<\n-000e9110: 6c69 3e3c 636f 6465 3e69 7465 7261 746f li>iterato\n-000e9120: 7220 696e 7365 7274 2869 7465 7261 746f r insert(iterato\n-000e9130: 7220 706f 732c 2063 6f6e 7374 5f72 6566 r pos, const_ref\n-000e9140: 6572 656e 6365 2076 616c 293c 2f63 6f64 erence val) insert elemen\n-000e9160: 742e 3c2f 6c69 3e0a 3c2f 756c 3e0a 3c70 t..
itera\n-000e9180: 746f 723c 2f63 6f64 653e 2073 686f 756c tor
shoul\n-000e9190: 6420 6265 2061 2066 6f72 7761 7264 2069 d be a forward i\n-000e91a0: 7465 7261 746f 7220 7769 7468 2061 2064 terator with a d\n-000e91b0: 6572 6566 6572 656e 6365 206f 7065 7261 ereference opera\n-000e91c0: 746f 7220 746f 2061 6363 6573 7320 7468 tor to access th\n-000e91d0: 6520 636f 6e74 6169 6e65 7227 7320 656c e container's el\n-000e91e0: 656d 656e 7473 2c20 6974 206d 7573 7420 ements, it must \n-000e91f0: 6265 2063 6f6d 7061 7261 626c 6520 2865 be comparable (e\n-000e9200: 7175 616c 2f75 6e65 7175 616c 292c 2061 qual/unequal), a\n-000e9210: 6e64 2062 6520 7072 652d 696e 6372 656d nd be pre-increm\n-000e9220: 656e 7461 626c 6520 283c 636f 6465 3e2b entable (+\n-000e9230: 2b69 743c 2f63 6f64 653e 292e 2054 6865 +it
). The\n-000e9240: 2063 6f6e 7374 2069 7465 7261 746f 7220 const iterator \n-000e9250: 6973 2075 7365 6420 6279 2069 7473 2073 is used by its s\n-000e9260: 6f61 7063 7070 322d 6765 6e65 7261 7465 oapcpp2-generate\n-000e9270: 6420 7365 7269 616c 697a 6572 2074 6f20 d serializer to \n-000e9280: 7365 6e64 2061 2073 6571 7565 6e63 6520 send a sequence \n-000e9290: 6f66 2058 4d4c 2065 6c65 6d65 6e74 2076 of XML element v\n-000e92a0: 616c 7565 732e 2054 6865 203c 636f 6465 alues. The insert
m\n-000e92c0: 6574 686f 6420 6973 2075 7365 6420 746f ethod is used to\n-000e92d0: 2070 6f70 756c 6174 6520 6120 636f 6e74 populate a cont\n-000e92e0: 6169 6e65 7220 7769 7468 203c 636f 6465 ainer with Container::iter\n-000e9300: 6174 6f72 2069 203d 2063 6f6e 7461 696e ator i = contain\n-000e9310: 6572 2e69 6e73 6572 7428 636f 6e74 6169 er.insert(contai\n-000e9320: 6e65 722e 656e 6428 292c 2076 616c 293c ner.end(), val)<\n-000e9330: 2f63 6f64 653e 2e3c 2f70 3e0a 3c70 3e48 /code>.
struct ns__record .a
\n+000dee90: 2061 6e64 203c 636f 6465 3e62 3c2f 636f and b members of <\n+000deeb0: 636f 6465 3e50 3c2f 636f 6465 3e20 706f code>P
po\n+000deec0: 696e 7420 746f 2074 6865 2073 616d 6520 int to the same \n+000deed0: 696e 7465 6765 722c 2074 6865 2073 6572 integer, the ser\n+000deee0: 6961 6c69 7a61 7469 6f6e 206f 6620 3c63 ialization of .NULL \n+000df3a0: 706f 696e 7465 7273 2061 6e64 206e 696c pointers and nil\n+000df3b0: 2065 6c65 6d65 6e74 733c 2f68 333e 0a3c elements
.<\n+000df3c0: 703e 4120 4e55 4c4c 2070 6f69 6e74 6572 p>A NULL pointer\n+000df3d0: 2069 7320 6e6f 7420 7365 7269 616c 697a is not serializ\n+000df3e0: 6564 2c20 756e 6c65 7373 2074 6865 2070 ed, unless the p\n+000df3f0: 6f69 6e74 6572 206d 656d 6265 7220 6f66 ointer member of\n+000df400: 2061 2073 7472 7563 7420 6f72 2063 6c61 a struct or cla\n+000df410: 7373 2069 7320 6465 636c 6172 6564 2069 ss is declared i\n+000df420: 6e20 7468 6520 696e 7465 7266 6163 6520 n the interface \n+000df430: 6865 6164 6572 2066 696c 6520 6173 206e header file as n\n+000df440: 696c 6c61 626c 6520 7769 7468 203c 636f illable with 1 indicates tha\n+000df780: 7420 7468 6520 6d65 6d62 6572 2069 7320 t the member is \n+000df790: 7265 7175 6972 6564 2028 3c65 6d3e 3c63 required (
or\n+000df800: 2073 696d 706c 7920 3c63 6f64 653e 313c simply maxOccur\n+000df7d0: 733c 2f63 6f64 653e 3c2f 656d 3e20 6172 s
ar\n+000df7e0: 6520 3120 7365 7420 7769 7468 203c 636f e 1 set with 1<\n+000df810: 2f63 6f64 653e 292e 3c2f 703e 0a3c 703e /code>).
q
p\n+000df840: 6f69 6e74 7320 746f 2070 6f69 6e74 6572 oints to pointer\n+000df850: 203c 636f 6465 3e70 3c2f 636f 6465 3e20 p
\n+000df860: 616e 6420 7375 7070 6f73 6520 3c63 6f64 and suppose X\n+000df8b0: 3c2f 636f 6465 3e20 7374 7275 6374 2069
struct i\n+000df8c0: 7320 7365 7269 616c 697a 6564 2077 6974 s serialized wit\n+000df8d0: 6820 3c63 6f64 653e 2353 4f41 505f 584d h #SOAP_XM\n+000df8e0: 4c5f 4752 4150 483c 2f63 6f64 653e 2061 L_GRAPH
a\n+000df8f0: 733a 3c2f 703e 0a3c 6469 7620 636c 6173 s:xsi:nil=&\n+000dfa30: 7175 6f74 3b74 7275 6526 7175 6f74 3b3c quot;true"<\n+000dfa40: 2f73 7061 6e3e 2f26 6774 3b3c 2f64 6976 /span>/>`c9\n+000dfad0: 3234 3033 3b3c 2f73 7061 6e3e 3c2f 6469 2403;.X
from this form\n+000dfc40: 206f 6620 584d 4c2c 2074 6865 7265 6279 of XML, thereby\n+000dfc50: 2070 7265 7365 7276 696e 6720 7468 6520 preserving the \n+000dfc60: 696e 7465 6772 6974 7920 6f66 2074 6865 integrity of the\n+000dfc70: 2064 6174 6120 7374 7275 6374 7572 6520 data structure \n+000dfc80: 7365 7269 616c 697a 6564 2e3c 2f70 3e0a serialized.xsi:nil=\n+000dfce0: 2274 7275 6522 3c2f 636f 6465 3e3c 2f65 \"true\"
#SOAP_\n+000dfd70: 4e55 4c4c 3c2f 636f 6465 3e20 6661 756c NULL
faul\n+000dfd80: 7420 7768 656e 2074 6865 203c 636f 6465 t when the #SOAP_XML_STRIC\n+000dfda0: 543c 2f63 6f64 653e 2066 6c61 6720 6973 T
flag is\n+000dfdb0: 2073 6574 2e3c 2f70 3e0a 3c70 3ef0 9f94 set.\n+000dfe10: 3c2f 613e 0a56 6f69 6420 706f 696e 7465 .Void pointe\n+000dfe20: 7220 7365 7269 616c 697a 6174 696f 6e3c r serialization<\n+000dfe30: 2f68 323e 0a3c 703e 566f 6964 2070 6f69 /h2>.
voi\n+000dfe50: 642a 3c2f 636f 6465 3e29 2063 616e 6e6f d*
) canno\n+000dfe60: 7420 6265 2073 6572 6961 6c69 7a65 6420 t be serialized \n+000dfe70: 696e 2058 4d4c 2062 6563 6175 7365 2074 in XML because t\n+000dfe80: 6865 2074 7970 6520 6f66 2064 6174 6120 he type of data \n+000dfe90: 7265 6665 7272 6564 2074 6f20 6973 2075 referred to is u\n+000dfea0: 6e74 7970 6564 2e20 546f 2065 6e61 626c ntyped. To enabl\n+000dfeb0: 6520 7468 6520 7365 7269 616c 697a 6174 e the serializat\n+000dfec0: 696f 6e20 6f66 2076 6f69 6420 706f 696e ion of void poin\n+000dfed0: 7465 7273 2074 6861 7420 6172 6520 6d65 ters that are me\n+000dfee0: 6d62 6572 7320 6f66 2073 7472 7563 7473 mbers of structs\n+000dfef0: 2061 6e64 2063 6c61 7373 6573 2c20 796f and classes, yo\n+000dff00: 7520 6361 6e20 696e 7365 7274 2061 203c u can insert a <\n+000dff10: 636f 6465 3e69 6e74 205f 5f74 7970 653c code>int __type<\n+000dff20: 2f63 6f64 653e 206d 656d 6265 7220 7269 /code> member ri\n+000dff30: 6768 7420 6265 666f 7265 2074 6865 2076 ght before the v\n+000dff40: 6f69 6420 706f 696e 7465 7220 6d65 6d62 oid pointer memb\n+000dff50: 6572 2e20 5468 6520 3c63 6f64 653e 696e er. The in\n+000dff60: 7420 5f5f 7479 7065 3c2f 636f 6465 3e20 t __type
\n+000dff70: 6d65 6d62 6572 2063 6f6e 7461 696e 7320 member contains \n+000dff80: 7275 6e20 7469 6d65 2069 6e66 6f72 6d61 run time informa\n+000dff90: 7469 6f6e 206f 6e20 7468 6520 7479 7065 tion on the type\n+000dffa0: 206f 6620 7468 6520 6461 7461 2070 6f69 of the data poi\n+000dffb0: 6e74 6564 2074 6f20 6279 203c 636f 6465 nted to by void*
me\n+000dffd0: 6d62 6572 2069 6e20 6120 7374 7275 6374 mber in a struct\n+000dffe0: 2f63 6c61 7373 2074 6f20 656e 6162 6c65 /class to enable\n+000dfff0: 2074 6865 2073 6572 6961 6c69 7a61 7469 the serializati\n+000e0000: 6f6e 206f 6620 7468 6973 2064 6174 612e on of this data.\n+000e0010: 2054 6865 203c 636f 6465 3e69 6e74 205f The int _\n+000e0020: 5f74 7970 653c 2f63 6f64 653e 206d 656d _type
mem\n+000e0030: 6265 7220 6973 2073 6574 2074 6f20 6120 ber is set to a \n+000e0040: 3c63 6f64 653e 534f 4150 5f54 5950 455f SOAP_TYPE_\n+000e0050: 543c 2f63 6f64 653e 2076 616c 7565 2c20 T
value, \n+000e0060: 7768 6572 6520 3c63 6f64 653e 543c 2f63 where T is the name\n+000e0080: 206f 6620 6120 7479 7065 2e20 5468 6520 of a type. The \n+000e0090: 736f 6170 6370 7032 2074 6f6f 6c20 6765 soapcpp2 tool ge\n+000e00a0: 6e65 7261 7465 7320 7468 6520 3c63 6f64 nerates the
. Val\n+000e01f0: 7565 7320 7365 7269 616c 697a 6564 2069 ues serialized i\n+000e0200: 6e20 584d 4c20 7769 7468 2074 6869 7320 n XML with this \n+000e0210: 6170 7072 6f61 6368 2061 6c77 6179 7320 approach always \n+000e0220: 6361 7272 7920 7468 6520 3c65 6d3e 3c63 carry the so\n+000e00e0: 6170 482e 683c 2f63 6f64 653e 3c2f 656d apH.h
and uses them \n+000e0100: 696e 7465 726e 616c 6c79 2074 6f20 756e internally to un\n+000e0110: 6971 7565 6c79 2069 6465 6e74 6966 7920 iquely identify \n+000e0120: 7468 6520 7479 7065 206f 6620 6561 6368 the type of each\n+000e0130: 206f 626a 6563 742e 2054 6865 2074 7970 object. The typ\n+000e0140: 6520 6e61 6d69 6e67 2063 6f6e 7665 6e74 e naming convent\n+000e0150: 696f 6e73 206f 7574 6c69 6e65 6420 696e ions outlined in\n+000e0160: 2053 6563 7469 6f6e 203c 6120 636c 6173 Section Serializing C\n+000e01a0: 2f43 2b2b 2064 6174 6120 746f 2058 4d4c /C++ data to XML\n+000e01b0: 3c2f 613e 2061 7265 2075 7365 6420 746f are used to\n+000e01c0: 2064 6574 6572 6d69 6e65 2074 6865 2074 determine the t\n+000e01d0: 7970 6520 6e61 6d65 2066 6f72 203c 636f ype name for void*\n+000e02d0: 3c2f 636f 6465 3e20 6d65 6d62 6572 2069
member i\n+000e02e0: 6e20 6120 7374 7275 6374 2f63 6c61 7373 n a struct/class\n+000e02f0: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 :struct ns__record .__typ\n+000e04d0: 653c 2f63 6f64 653e 2069 6e74 6567 6572 e
integer\n+000e04e0: 2063 616e 2062 6520 7365 7420 746f 2030 can be set to 0\n+000e04f0: 2061 7420 7275 6e20 7469 6d65 2074 6f20 at run time to \n+000e0500: 6f6d 6974 2074 6865 2073 6572 6961 6c69 omit the seriali\n+000e0510: 7a61 7469 6f6e 206f 6620 7468 6520 766f zation of the vo\n+000e0520: 6964 2070 6f69 6e74 6572 206d 656d 6265 id pointer membe\n+000e0530: 722e 3c2f 703e 0a3c 703e 5468 6520 666f r.myStruct\n+000e0580: 3c2f 636f 6465 3e20 7769 7468 2061 2076
with a v\n+000e0590: 6f69 6420 706f 696e 7465 7220 746f 2061 oid pointer to a\n+000e05a0: 6e20 696e 743a 3c2f 703e 0a3c 6469 7620 n int:int n = 123; .void*)&n; .\n+000e0710: 533c 2f63 6f64 653e 2063 6f6e 7461 696e S
contain\n+000e0720: 7320 7468 6520 696e 7465 6765 7220 696e s the integer in\n+000e0730: 2069 7473 203c 656d 3e3c 636f 6465 3e76 its v\n+000e0740: 616c 3c2f 636f 6465 3e3c 2f65 6d3e 2065 al
e\n+000e0750: 6c65 6d65 6e74 3a3c 2f70 3e0a 3c64 6976 lement:ns__r\n+000e0930: 6563 6f72 643c 2f63 6f64 653e 2077 696c ecord
wil\n+000e0940: 6c20 6175 746f 6d61 7469 6361 6c6c 7920 l automatically \n+000e0950: 7365 7420 7468 6520 3c63 6f64 653e 5f5f set the __\n+000e0960: 7479 7065 3c2f 636f 6465 3e20 6669 656c type
fiel\n+000e0970: 6420 616e 6420 766f 6964 2070 6f69 6e74 d and void point\n+000e0980: 6572 2077 6865 6e20 6465 7365 7269 616c er when deserial\n+000e0990: 697a 696e 6720 7468 6520 6461 7461 2c20 izing the data, \n+000e09a0: 7072 6f76 6964 6564 2074 6861 7420 7468 provided that th\n+000e09b0: 6520 584d 4c20 656c 656d 656e 7420 3c65 e XML element val carries \n+000e09e0: 7468 6520 3c65 6d3e 3c63 6f64 653e 7873 the
xs\n+000e09f0: 693a 7479 7065 3c2f 636f 6465 3e3c 2f65 i:type
\n+000e0a50: 3c64 743e 4e6f 7465 3c2f 6474 3e3c 6464
.void* member, the <\n+000e0aa0: 636f 6465 3e76 6f69 642a 3c2f 636f 6465 code>void*
pointer must d\n+000e0ac0: 6972 6563 746c 7920 706f 696e 7420 746f irectly point to\n+000e0ad0: 2074 6865 2073 7472 696e 6720 7661 6c75 the string valu\n+000e0ae0: 6520 7261 7468 6572 2074 6861 6e20 696e e rather than in\n+000e0af0: 6469 7265 6374 6c79 2061 7320 7769 7468 directly as with\n+000e0b00: 2061 6c6c 206f 7468 6572 2074 7970 6573 all other types\n+000e0b10: 2e20 466f 7220 6578 616d 706c 653a 3c2f . For example:\n+000e0b20: 6464 3e3c 2f64 6c3e 0a3c 6469 7620 636c dd>typedef\n+000e0cb0: 2063 6861 722a 3c2f 636f 6465 3e2e 3c2f char*
.\n+000e0cc0: 703e 0a3c 703e 596f 7520 6d61 7920 7573 p>.data
and a polymorp\n+000e1630: 6869 6320 6f75 7470 7574 2070 6172 616d hic output param\n+000e1640: 6574 6572 203c 636f 6465 3e72 6574 7572 eter retur\n+000e1650: 6e5f 3c2f 636f 6465 3e2e 2054 6865 203c n_
. The <\n+000e1660: 636f 6465 3e5f 5f74 7970 653c 2f63 6f64 code>__type parameters ca\n+000e1680: 6e20 6265 206f 6e65 206f 6620 3c63 6f64 n be one of SOAP_TYPE_\n+000e16c0: 7873 645f 5f69 6e74 3c2f 636f 6465 3e2c xsd__int
,\n+000e16d0: 203c 636f 6465 3e53 4f41 505f 5459 5045 SOAP_TYPE\n+000e16e0: 5f78 7364 5f5f 666c 6f61 743c 2f63 6f64 _xsd__float
SOAP_T\n+000e1700: 5950 455f 6e73 5f5f 7374 6174 7573 3c2f YPE_ns__status\n+000e1710: 636f 6465 3e2c 206f 7220 3c63 6f64 653e code>, or
\n+000e1790: 2070 6f6c 796d 6f72 7068 6963 206d 656d polymorphic mem\n+000e17a0: 6265 7273 2061 7320 3c65 6d3e 3c63 6f64 bers as \n+000e1720: 534f 4150 5f54 5950 455f 6e73 5f5f 7769 SOAP_TYPE_ns__wi\n+000e1730: 6467 6574 3c2f 636f 6465 3e2e 2054 6865 dget
. The\n+000e1740: 2057 5344 4c20 616e 6420 5853 4420 6669 WSDL and XSD fi\n+000e1750: 6c65 7320 7072 6f64 7563 6564 2062 7920 les produced by \n+000e1760: 7468 6520 736f 6170 6370 7032 2074 6f6f the soapcpp2 too\n+000e1770: 6c20 6465 636c 6172 6520 7468 6520 3c63 l declare the void* pointers all\n+000e1820: 6f77 7320 7573 2074 6f20 7265 7573 6520 ows us to reuse \n+000e1830: 7468 6973 206d 6563 6861 6e69 736d 2077 this mechanism w\n+000e1840: 6865 6e20 7765 2075 7365 203c 636f 6465 hen we use
__self
a\n+000e1860: 7320 6120 6d65 6d62 6572 206e 616d 6520 s a member name \n+000e1870: 7468 6174 2072 6566 6572 7320 746f 2074 that refers to t\n+000e1880: 6865 2063 7572 7265 6e74 2058 4d4c 2065 he current XML e\n+000e1890: 6c65 6d65 6e74 2074 6167 206e 616d 653a lement tag name:\n+000e18a0: 3c2f 703e 0a3c 6469 7620 636c 6173 733d int __type; void *__self; __\n+000e1b60: 6e73 5f5f 7265 636f 7264 3c2f 636f 6465 ns__record
with a void po\n+000e1b80: 696e 7465 7220 746f 2061 6e20 696e 743a inter to an int:\n+000e1b90: 3c2f 703e 0a3c 6469 7620 636c 6173 733d "\n+000e1e20: 7873 643a 696e 7426 7175 6f74 3b3c 2f73 xsd:int">123</\n+000e1e40: 3c73 7061 6e20 636c 6173 733d 226b 6579 val>a
is:item>2.0</<\n+000e2440: 7370 616e 2063 6c61 7373 3d22 6b65 7977 span class=\"keyw\n+000e2450: 6f72 6474 7970 6522 3e69 7465 6d3c 2f73 ordtype\">item>\n+000e25e0: 2353 4f41 505f 435f 4e4f 494f 423c 2f63 #SOAP_C_NOIOB flag is set\n+000e2600: 2c20 6f74 6865 7277 6973 6520 3c63 6f64 , otherwise
<\n+000e2690: 6120 636c 6173 733d 2261 6e63 686f 7222 a class=\"anchor\"\n+000e26a0: 2069 643d 2264 796e 6172 7261 7922 3e3c id=\"dynarray\"><\n+000e26b0: 2f61 3e0a 4479 6e61 6d69 6320 6172 7261 /a>.Dynamic arra\n+000e26c0: 7920 7365 7269 616c 697a 6174 696f 6e3c y serialization<\n+000e26d0: 2f68 323e 0a3c 703e 4479 6e61 6d69 6320 /h2>.
soap_\n+000e2840: 6e65 775f 543c 2f63 6f64 653e 2066 756e new_T
fun\n+000e2850: 6374 696f 6e73 2066 6f72 2074 7970 6520 ctions for type \n+000e2860: 3c63 6f64 653e 543c 2f63 6f64 653e 2e20 T
. \n+000e2870: 5468 6973 2066 756e 6374 696f 6e20 6973 This function is\n+000e2880: 2075 7365 6420 746f 2061 6c6c 6f63 6174 used to allocat\n+000e2890: 6520 616e 2061 7272 6179 206f 6620 7661 e an array of va\n+000e28a0: 6c75 6573 2077 6869 6368 2063 616e 2074 lues which can t\n+000e28b0: 6865 6e20 6265 2061 7373 6967 6e65 6420 hen be assigned \n+000e28c0: 746f 2074 6865 2070 6f69 6e74 6572 206d to the pointer m\n+000e28d0: 656d 6265 7220 6f66 2074 6865 2073 7472 ember of the str\n+000e28e0: 7563 742f 636c 6173 7320 7468 6174 2073 uct/class that s\n+000e28f0: 746f 7265 7320 7468 6520 6172 7261 7920 tores the array \n+000e2900: 706f 696e 7465 7220 7769 7468 2069 7473 pointer with its\n+000e2910: 2073 697a 652e 3c2f 703e 0a3c 703e 546f size.i\n+000e2b50: 7465 6d3c 2f63 6f64 653e 3c2f 656d 3e20 tem
\n+000e2b60: 656c 656d 656e 7473 2077 6974 6820 7661 elements with va\n+000e2b70: 6c75 6573 2c20 7468 6f75 6768 2053 4f41 lues, though SOA\n+000e2b80: 5020 6465 7365 7269 616c 697a 6572 7320 P deserializers \n+000e2b90: 6d61 7920 6967 6e6f 7265 2074 6865 206e may ignore the n\n+000e2ba0: 616d 6520 6f66 2074 6865 7365 2065 6c65 ame of these ele\n+000e2bb0: 6d65 6e74 7320 7768 656e 2070 6172 7369 ments when parsi\n+000e2bc0: 6e67 2058 4d4c 2061 7320 7374 6174 6564 ng XML as stated\n+000e2bd0: 2069 6e20 7468 6520 534f 4150 2073 7065 in the SOAP spe\n+000e2be0: 6369 6669 6361 7469 6f6e 732e 3c2f 703e cifications..SOAP\n+000e2d70: 2d65 6e63 6f64 6564 2061 7272 6179 2062 -encoded array b\n+000e2d80: 6f75 6e64 733c 2f68 333e 0a3c 703e 534f ounds
.SOAP-ENC\n+000e2e10: 3a61 7272 6179 5479 7065 3c2f 636f 6465 :arrayType
attribute\n+000e2e30: 2074 6f20 6964 656e 7469 6679 2074 6865 to identify the\n+000e2e40: 2061 7272 6179 2064 696d 656e 7369 6f6e array dimension\n+000e2e50: 616c 6974 7920 616e 6420 6974 7320 7369 ality and its si\n+000e2e60: 7a65 2e3c 2f70 3e0a 3c70 3e41 7320 6120 ze.SOAP-ENC:arrayT\n+000e2ef0: 7970 653c 2f63 6f64 653e 3c2f 656d 3e20 ype
\n+000e2f00: 6174 7472 6962 7574 652c 2072 6571 7569 attribute, requi\n+000e2f10: 7269 6e67 2074 6865 2061 6c6c 6f63 6174 ring the allocat\n+000e2f20: 696f 6e20 6f66 206c 6172 6765 2063 6875 ion of large chu\n+000e2f30: 6e6b 7320 6f66 206d 656d 6f72 792c 2074 nks of memory, t\n+000e2f40: 6865 2074 6f74 616c 206e 756d 6265 7220 he total number \n+000e2f50: 6f66 2061 7272 6179 2065 6c65 6d65 6e74 of array element\n+000e2f60: 7320 7365 7420 6279 2074 6865 203c 656d s set by the SOAP-ENC:\n+000e2f80: 6172 7261 7954 7970 653c 2f63 6f64 653e arrayType
\n+000e2f90: 3c2f 656d 3e20 6174 7472 6962 7574 6520 attribute \n+000e2fa0: 6361 6e6e 6f74 2065 7863 6565 6420 3c63 cannot exceed soap::maxo\n+000e3170: 6363 7572 733c 2f61 3e3c 2f63 6f64 653e ccurs
\n+000e3180: 2077 6869 6368 2069 7320 7365 7420 746f which is set to\n+000e3190: 203c 636f 6465 3e23 534f 4150 5f4d 4158 #SOAP_MAX\n+000e31a0: 4f43 4355 5253 3c2f 636f 6465 3e20 6279 OCCURS
by\n+000e31b0: 2064 6566 6175 6c74 2e20 4279 2063 6f6e default. By con\n+000e31c0: 7472 6173 742c 2074 6865 203c 636f 6465 trast, the #SOAP_MAXARRAYS\n+000e31e0: 495a 453c 2f63 6f64 653e 206c 696d 6974 IZE
limit\n+000e31f0: 206f 6e6c 7920 6e65 6761 7469 7665 6c79 only negatively\n+000e3200: 2061 6666 6563 7473 206d 756c 7469 2d64 affects multi-d\n+000e3210: 696d 656e 7369 6f6e 616c 2061 7272 6179 imensional array\n+000e3220: 7320 6265 6361 7573 6520 7468 6520 6469 s because the di\n+000e3230: 6d65 6e73 696f 6e61 6c69 7479 206f 6620 mensionality of \n+000e3240: 7468 6520 7265 6365 6976 696e 6720 6172 the receiving ar\n+000e3250: 7261 7920 6d61 7920 6265 206c 6f73 7420 ray may be lost \n+000e3260: 7768 656e 2074 6865 206e 756d 6265 7220 when the number \n+000e3270: 6f66 2065 6c65 6d65 6e74 7320 6578 6365 of elements exce\n+000e3280: 6564 7320 3130 3030 3030 2e20 4f6e 652d eds 100000. One-\n+000e3290: 6469 6d65 6e73 696f 6e61 6c20 6172 7261 dimensional arra\n+000e32a0: 7973 2061 7265 206e 6f74 2061 6666 6563 ys are not affec\n+000e32b0: 7465 6420 616e 6420 706f 7075 6c61 7465 ted and populate\n+000e32c0: 6420 6166 7465 7220 7468 6973 206c 696d d after this lim\n+000e32d0: 6974 2062 7920 7369 6d70 6c79 2064 6573 it by simply des\n+000e32e0: 6572 6961 6c69 7a69 6e67 2074 6865 2061 erializing the a\n+000e32f0: 7272 6179 2065 6c65 6d65 6e74 7320 7265 rray elements re\n+000e3300: 6365 6976 6564 2e3c 2f70 3e0a 3c70 3ef0 ceived..One-dimen\n+000e3370: 7369 6f6e 616c 2064 796e 616d 6963 2053 sional dynamic S\n+000e3380: 4f41 502d 656e 636f 6465 6420 6172 7261 OAP-encoded arra\n+000e3390: 7973 3c2f 6833 3e0a 3c70 3e41 2073 7065 ys
.a\n+000e37d0: 7272 6179 5f6e 616d 653c 2f63 6f64 653e rray_name
\n+000e37e0: 206d 7573 7420 6265 2061 206e 6f6e 2d71 must be a non-q\n+000e37f0: 7561 6c69 6669 6564 206e 616d 6520 616e ualified name an\n+000e3800: 6420 3c63 6f64 653e 5479 7065 3c2f 636f d Type is the type \n+000e3820: 666f 7220 7468 6520 656c 656d 656e 7473 for the elements\n+000e3830: 206f 6620 7468 6520 6172 7261 792e 2054 of the array. T\n+000e3840: 6865 203c 636f 6465 3e5f 5f70 7472 3c2f he
__ptr\n+000e3850: 636f 6465 3e20 6d65 6d62 6572 2070 6f69 code> member poi\n+000e3860: 6e74 7320 746f 2074 6865 2061 7272 6179 nts to the array\n+000e3870: 2076 616c 7565 7320 616e 6420 3c63 6f64 values and
\n+000e3890: 6973 2074 6865 2061 7272 6179 2073 697a is the array siz\n+000e38a0: 652e 2054 6865 203c 636f 6465 3e5f 5f6f e. The __o\n+000e38b0: 6666 7365 743c 2f63 6f64 653e 206d 656d ffset
mem\n+000e38c0: 6265 7220 7370 6563 6966 6965 7320 616e ber specifies an\n+000e38d0: 206f 7074 696f 6e61 6c20 6172 7261 7920 optional array \n+000e38e0: 6f66 6673 6574 2c20 7768 656e 206e 6f6e offset, when non\n+000e38f0: 7a65 726f 2c20 7365 6520 5365 6374 696f zero, see Sectio\n+000e3900: 6e20 3c61 2063 6c61 7373 3d22 656c 2220 n One\n+000e3930: 2d64 696d 656e 7369 6f6e 616c 2064 796e -dimensional dyn\n+000e3940: 616d 6963 2053 4f41 502d 656e 636f 6465 amic SOAP-encode\n+000e3950: 6420 6172 7261 7973 2077 6974 6820 6e6f d arrays with no\n+000e3960: 6e2d 7a65 726f 206f 6666 7365 7473 3c2f n-zero offsets\n+000e3970: 613e 2e3c 2f70 3e0a 3c70 3e49 6620 7468 a>.array_na\n+000e3990: 6d65 3c2f 636f 6465 3e20 6973 2071 7561 me
is qua\n+000e39a0: 6c69 6669 6564 2077 6974 6820 6120 6e61 lified with a na\n+000e39b0: 6d65 7370 6163 6520 7072 6566 6978 2074 mespace prefix t\n+000e39c0: 6865 6e20 7468 6520 6172 7261 7920 6973 hen the array is\n+000e39d0: 206e 6f74 2061 2053 4f41 502d 656e 636f not a SOAP-enco\n+000e39e0: 6465 6420 6172 7261 7920 6275 7420 7261 ded array but ra\n+000e39f0: 7468 6572 2072 6570 7265 7365 6e74 7320 ther represents \n+000e3a00: 6120 7365 7175 656e 6365 206f 6620 584d a sequence of XM\n+000e3a10: 4c20 656c 656d 656e 7473 2c20 7365 6520 L elements, see \n+000e3a20: 5365 6374 696f 6e20 3c61 2063 6c61 7373 Section Non\n+000e3a50: 2d53 4f41 5020 6479 6e61 6d69 6320 6172 -SOAP dynamic ar\n+000e3a60: 7261 7973 3c2f 613e 2e3c 2f70 3e0a 3c70 rays.
.__offs\n+000e3bf0: 6574 3c2f 636f 6465 3e20 6d65 6d62 6572 et
member\n+000e3c00: 206f 6620 6120 6479 6e61 6d69 6320 6172 of a dynamic ar\n+000e3c10: 7261 7920 6973 2069 676e 6f72 6564 2e3c ray is ignored.<\n+000e3c20: 2f64 643e 3c2f 646c 3e0a 3c70 3ef0 9f94 /dd>.One-d\n+000e3c90: 696d 656e 7369 6f6e 616c 2064 796e 616d imensional dynam\n+000e3ca0: 6963 2053 4f41 502d 656e 636f 6465 6420 ic SOAP-encoded \n+000e3cb0: 6172 7261 7973 2077 6974 6820 6e6f 6e2d arrays with non-\n+000e3cc0: 7a65 726f 206f 6666 7365 7473 3c2f 6833 zero offsets
.int __\n+000e3d80: 6f66 6673 6574 3c2f 636f 6465 3e20 6d65 offset
me\n+000e3d90: 6d62 6572 2e20 5768 656e 2073 6574 2074 mber. When set t\n+000e3da0: 6f20 616e 2069 6e74 6567 6572 2076 616c o an integer val\n+000e3db0: 7565 2c20 7468 6520 7365 7269 616c 697a ue, the serializ\n+000e3dc0: 6572 206f 6620 7468 6520 6479 6e61 6d69 er of the dynami\n+000e3dd0: 6320 6172 7261 7920 7769 6c6c 2075 7365 c array will use\n+000e3de0: 2074 6869 7320 6d65 6d62 6572 2061 7320 this member as \n+000e3df0: 7468 6520 7374 6172 7420 696e 6465 7820 the start index \n+000e3e00: 6f66 2074 6865 2061 7272 6179 2061 6e64 of the array and\n+000e3e10: 2074 6865 2053 4f41 502d 656e 636f 6465 the SOAP-encode\n+000e3e20: 6420 6172 7261 7920 6f66 6673 6574 2061 d array offset a\n+000e3e30: 7474 7269 6275 7465 203c 656d 3e3c 636f ttribute Vector
c\n+000e3f30: 6c61 7373 2c20 7768 6963 6820 6973 2061 lass, which is a\n+000e3f40: 2064 796e 616d 6963 2061 7272 6179 206f dynamic array o\n+000e3f50: 6620 666c 6f61 7469 6e67 2070 6f69 6e74 f floating point\n+000e3f60: 2076 616c 7565 7320 7769 7468 2061 6e20 values with an \n+000e3f70: 696e 6465 7820 7468 6174 2073 7461 7274 index that start\n+000e3f80: 7320 6174 2031 3a3c 2f70 3e0a 3c64 6976 s at 1:SOAP-ENC:off\n+000e4dd0: 7365 743c 2f73 7061 6e3e 3d3c 7370 616e set="[1]\n+000e4e00: 2671 756f 743b 3c2f 7370 616e 3e26 6774 ">\n+000e4e10: 3b20 3c2f 6469 763e 0a3c 6469 7620 636c ; xsd:float\n+000e5010: 5b34 5d3c 2f63 6f64 653e 3c2f 656d 3e20 [4]
\n+000e5020: 6973 2074 6865 2074 7970 6520 616e 6420 is the type and \n+000e5030: 7368 6170 6520 6f66 2074 6865 2065 6e63 shape of the enc\n+000e5040: 6f64 6564 2061 7272 6179 2c20 7768 6963 oded array, whic\n+000e5050: 6820 7374 6172 7473 2061 7420 6f66 6673 h starts at offs\n+000e5060: 6574 2031 2061 6e64 2074 6865 7265 666f et 1 and therefo\n+000e5070: 7265 2074 6865 2065 6c65 6d65 6e74 2061 re the element a\n+000e5080: 7420 3020 6973 206f 6d69 7474 6564 2e3c t 0 is omitted.<\n+000e5090: 2f70 3e0a 3c70 3ef0 9f94 9d20 3c61 2068 /p>.\n+000e50f0: 0a4e 6573 7465 6420 6f6e 652d 6469 6d65 .Nested one-dime\n+000e5100: 6e73 696f 6e61 6c20 6479 6e61 6d69 6320 nsional dynamic \n+000e5110: 534f 4150 2d65 6e63 6f64 6564 2061 7272 SOAP-encoded arr\n+000e5120: 6179 733c 2f68 333e 0a3c 703e 4f6e 652d ays
.\n+000e5180: 636c 6173 7320 5665 6374 6f72 3c2f 636f class Vector declared in \n+000e51a0: 7468 6520 7072 6576 696f 7573 2073 6563 the previous sec\n+000e51b0: 7469 6f6e 2c20 3c63 6f64 653e 636c 6173 tion,
clas\n+000e51c0: 7320 4d61 7472 6978 3c2f 636f 6465 3e20 s Matrix
\n+000e51d0: 6973 2064 6563 6c61 7265 643a 3c2f 703e is declared:public: int m); array\n+000e5b40: 5f6e 616d 653c 2f63 6f64 653e 206d 7573 _name
mus\n+000e5b50: 7420 6265 2061 206e 6f6e 2d71 7561 6c69 t be a non-quali\n+000e5b60: 6669 6564 206e 616d 6520 616e 6420 3c63 fied name and _\n+000e5bf0: 5f73 697a 653c 2f63 6f64 653e 2061 7272 _size
arr\n+000e5c00: 6179 2073 7065 6369 6669 6573 2074 6865 ay specifies the\n+000e5c10: 206e 756d 6265 7220 6f66 2061 7272 6179 number of array\n+000e5c20: 2065 6c65 6d65 6e74 7320 7065 7220 6469 elements per di\n+000e5c30: 6d65 6e73 696f 6e2e 2054 6865 203c 636f mension. The public: _\n+000e5fe0: 5f73 697a 655b 305d 3c2f 636f 6465 3e20 _size[0]
\n+000e5ff0: 686f 6c64 7320 7468 6520 6e75 6d62 6572 holds the number\n+000e6000: 206f 6620 726f 7773 2061 6e64 203c 636f of rows and _\n+000e6060: 5f6f 6666 7365 745b 305d 3c2f 636f 6465 _offset[0]
is the row off\n+000e6080: 7365 7420 616e 6420 3c63 6f64 653e 5f5f set and __\n+000e6090: 6f66 6673 6574 5b31 5d3c 2f63 6f64 653e offset[1]
\n+000e60a0: 2069 7320 7468 6520 636f 6c75 6d6e 7320 is the columns \n+000e60b0: 6f66 6673 6574 2e3c 2f70 3e0a 3c64 6c20 offset.
\n+000e6170: 0a3c 703e f09f 949d 203c 6120 6872 6566 ..__offset
\n+000e6140: 206d 656d 6265 7220 6f66 2061 2064 796e member of a dyn\n+000e6150: 616d 6963 2061 7272 6179 2069 7320 6967 amic array is ig\n+000e6160: 6e6f 7265 642e 3c2f 6464 3e3c 2f64 6c3e nored..Non-\n+000e61d0: 534f 4150 2064 796e 616d 6963 2061 7272 SOAP dynamic arr\n+000e61e0: 6179 733c 2f68 333e 0a3c 703e 416e 2061 ays
.__pt\n+000e6410: 723c 2f63 6f64 653e 2061 6e64 203c 636f r
and __size<\n+000e6ba0: 2f63 6f64 653e 206d 656d 6265 7220 7368 /code> member sh\n+000e6bb0: 6f75 6c64 2062 6520 616e 203c 636f 6465 ould be an
int
type\n+000e6bd0: 2061 6e64 2063 616e 6e6f 7420 6265 2061 and cannot be a\n+000e6be0: 203c 636f 6465 3e73 697a 655f 743c 2f63 size_t type or oth\n+000e6c00: 6572 2069 6e74 6567 6572 2074 7970 652e er integer type.\n+000e6c10: 3c2f 703e 0a3c 703e 466f 7220 6578 616d
char *key;// array of \n+000e6ea0: 7061 6972 733c 2f73 7061 6e3e 3c2f 6469 pairs.$
' as a special \n+000e6f30: 6d61 726b 6572 2074 6f20 616e 6e6f 7461 marker to annota\n+000e6f40: 7465 2061 2073 697a 6520 6d65 6d62 6572 te a size member\n+000e6f50: 2069 6e73 7465 6164 206f 6620 7265 7175 instead of requ\n+000e6f60: 6972 696e 6720 7468 6573 6520 6d65 6d62 iring these memb\n+000e6f70: 6572 7320 746f 2073 7461 7274 2077 6974 ers to start wit\n+000e6f80: 6820 3c63 6f64 653e 5f5f 7369 7a65 3c2f h __size\n+000e6f90: 636f 6465 3e3a 3c2f 703e 0a3c 6469 7620 code>:
ns__Conta\n+000e7db0: 6374 3c2f 636f 6465 3e20 6973 3a3c 2f70 ct
is:phoneNum\n+000e8110: 6265 723c 2f73 7061 6e3e 2667 743b 203c ber> <\n+000e8120: 2f64 6976 3e0a 3c64 6976 2063 6c61 7373 /div>.emailAdd\n+000e8160: 7265 7373 3c2f 7370 616e 3e26 6774 3b3c ress><\n+000e8170: 7370 616e 2063 6c61 7373 3d22 6b65 7977 span class=\"keyw\n+000e8180: 6f72 6422 3e4a 6f65 2e53 6d69 7468 3c2f ord\">Joe.Smith\n+000e8190: 7370 616e 3e40 3c73 7061 6e20 636c 6173 span>@mail\n+000e81b0: 2e63 6f6d 3c2f 7370 616e 3e26 6c74 3b2f .com</\n+000e81c0: 3c73 7061 6e20 636c 6173 733d 226b 6579 emailA\n+000e81e0: 6464 7265 7373 3c2f 7370 616e 3e26 6774 ddress>\n+000e81f0: 3b20 3c2f 6469 763e 0a3c 6469 7620 636c ; emailAdd\n+000e82b0: 7265 7373 3c2f 7370 616e 3e26 6774 3b20 ress> \n+000e82c0: 3c2f 6469 763e 0a3c 6469 7620 636c 6173 ns:Conta\n+000e8300: 6374 3c2f 7370 616e 3e26 6774 3b3c 2f64 ct>..STL c\n+000e83f0: 6f6e 7461 696e 6572 733c 2f68 333e 0a3c ontainers
.<\n+000e8400: 703e 5468 6520 5354 4c20 636f 6e74 6169 p>The STL contai\n+000e8410: 6e65 7273 203c 636f 6465 3e73 7464 3a3a ners std::\n+000e8420: 6465 7175 653c 2f63 6f64 653e 2c20 3c63 deque
, std:\n+000e8450: 3a73 6574 3c2f 636f 6465 3e2c 2061 6e64 :set
, and\n+000e8460: 203c 636f 6465 3e73 7464 3a3a 7665 6374 std::vect\n+000e8470: 6f72 3c2f 636f 6465 3e20 6172 6520 7365 or
are se\n+000e8480: 7269 616c 697a 6162 6c65 2069 6e20 584d rializable in XM\n+000e8490: 4c20 6279 2074 6865 2073 6f61 7063 7070 L by the soapcpp\n+000e84a0: 322d 6765 6e65 7261 7465 6420 7365 7269 2-generated seri\n+000e84b0: 616c 697a 6572 732e 3c2f 703e 0a3c 703e alizers..stldeque.h\n+000e8520: 3c2f 636f 6465 3e3c 2f65 6d3e 2c20 3c65
, stllist.\n+000e8540: 683c 2f63 6f64 653e 3c2f 656d 3e2c 203c h
, <\n+000e8550: 656d 3e3c 636f 6465 3e73 746c 7365 742e em>stlset.\n+000e8560: 683c 2f63 6f64 653e 3c2f 656d 3e2c 206f h
, o\n+000e8570: 7220 3c65 6d3e 3c63 6f64 653e 7374 6c76 r stlv\n+000e8580: 6563 746f 722e 683c 2f63 6f64 653e 3c2f ector.h
\n+000e8590: 656d 3e20 746f 2065 6e61 626c 6520 3c63 em> to enable std\n+000e85c0: 3a3a 6c69 7374 3c2f 636f 6465 3e2c 203c ::list
, <\n+000e85d0: 636f 6465 3e73 7464 3a3a 7365 743c 2f63 code>std::set\n+000e85f0: 7374 643a 3a76 6563 746f 723c 2f63 6f64 std::vector, respectively\n+000e8610: 2e20 466f 7220 6578 616d 706c 653a 3c2f . For example:\n+000e8620: 703e 0a3c 6469 7620 636c 6173 733d 2266 p>.
.
.itera\n+000e8fb0: 746f 7220 6265 6769 6e28 293c 2f63 6f64 tor begin() return iterat\n+000e8fd0: 6f72 2074 6f20 6265 6769 6e6e 696e 673b or to beginning;\n+000e8fe0: 3c2f 6c69 3e0a 3c6c 693e 3c63 6f64 653e
\n+000e8ff0: 636f 6e73 745f 6974 6572 6174 6f72 2062 const_iterator b\n+000e9000: 6567 696e 2829 2063 6f6e 7374 3c2f 636f egin() const return const\n+000e9020: 2069 7465 7261 746f 7220 746f 2062 6567 iterator to beg\n+000e9030: 696e 6e69 6e67 3b3c 2f6c 693e 0a3c 6c69 inning;
iterator \n+000e9050: 656e 6428 293c 2f63 6f64 653e 2072 6574 end()
ret\n+000e9060: 7572 6e20 6974 6572 6174 6f72 2074 6f20 urn iterator to \n+000e9070: 656e 643b 3c2f 6c69 3e0a 3c6c 693e 3c63 end;iterator\n+000e9170: 636f 6465 3e20 7368 6f75 6c64 2062 6520 code> should be \n+000e9180: 6120 666f 7277 6172 6420 6974 6572 6174 a forward iterat\n+000e9190: 6f72 2077 6974 6820 6120 6465 7265 6665 or with a derefe\n+000e91a0: 7265 6e63 6520 6f70 6572 6174 6f72 2074 rence operator t\n+000e91b0: 6f20 6163 6365 7373 2074 6865 2063 6f6e o access the con\n+000e91c0: 7461 696e 6572 2773 2065 6c65 6d65 6e74 tainer's element\n+000e91d0: 732c 2069 7420 6d75 7374 2062 6520 636f s, it must be co\n+000e91e0: 6d70 6172 6162 6c65 2028 6571 7561 6c2f mparable (equal/\n+000e91f0: 756e 6571 7561 6c29 2c20 616e 6420 6265 unequal), and be\n+000e9200: 2070 7265 2d69 6e63 7265 6d65 6e74 6162 pre-incrementab\n+000e9210: 6c65 2028 3c63 6f64 653e 2b2b 6974 3c2f le (
++it\n+000e9220: 636f 6465 3e29 2e20 5468 6520 636f 6e73 code>). The cons\n+000e9230: 7420 6974 6572 6174 6f72 2069 7320 7573 t iterator is us\n+000e9240: 6564 2062 7920 6974 7320 736f 6170 6370 ed by its soapcp\n+000e9250: 7032 2d67 656e 6572 6174 6564 2073 6572 p2-generated ser\n+000e9260: 6961 6c69 7a65 7220 746f 2073 656e 6420 ializer to send \n+000e9270: 6120 7365 7175 656e 6365 206f 6620 584d a sequence of XM\n+000e9280: 4c20 656c 656d 656e 7420 7661 6c75 6573 L element values\n+000e9290: 2e20 5468 6520 3c63 6f64 653e 696e 7365 . The
inse\n+000e92a0: 7274 3c2f 636f 6465 3e20 6d65 7468 6f64 rt
method\n+000e92b0: 2069 7320 7573 6564 2074 6f20 706f 7075 is used to popu\n+000e92c0: 6c61 7465 2061 2063 6f6e 7461 696e 6572 late a container\n+000e92d0: 2077 6974 6820 3c63 6f64 653e 436f 6e74 with Cont\n+000e92e0: 6169 6e65 723a 3a69 7465 7261 746f 7220 ainer::iterator \n+000e92f0: 6920 3d20 636f 6e74 6169 6e65 722e 696e i = container.in\n+000e9300: 7365 7274 2863 6f6e 7461 696e 6572 2e65 sert(container.e\n+000e9310: 6e64 2829 2c20 7661 6c29 3c2f 636f 6465 nd(), val)
.typedef const\n+000e96c0: 7370 616e 3e20 7661 6c75 655f 7479 7065 span> value_type\n+000e96d0: 2020 2020 2020 2661 6d70 3b20 636f 6e73 & cons\n+000e96e0: 745f 7265 6665 7265 6e63 653b 203c 2f64 t_reference; .typedef const_pointer\n+000e97a0: 2020 2020 2020 2020 2020 2063 6f6e 7374 const\n+000e97b0: 5f69 7465 7261 746f 723b 203c 2f64 6976 _iterator; if (pos) .Polymorphi\n-000eadf0: 6320 6479 6e61 6d69 6320 6172 7261 7973 c dynamic arrays\n-000eae00: 2061 6e64 206c 6973 7473 3c2f 6833 3e0a and lists
.\n-000eae10: 3c70 3e50 6f6c 796d 6f72 7068 6963 2061 public ns__Object // members o\n-000eb0b0: 6620 6e73 5f5f 4461 7461 3c2f 7370 616e f ns__Datans__Ob\n-000eb410: 6a65 6374 3c2f 636f 6465 3e20 6261 7365 ject
base\n-000eb420: 2069 6e73 7461 6e63 6573 206f 7220 3c63 instances or xsi:type
\n-000eb4c0: 3c2f 656d 3e20 6174 7472 6962 7574 6520 attribute \n-000eb4d0: 696e 2058 4d4c 2077 6974 6820 7468 6520 in XML with the \n-000eb4e0: 7175 616c 6966 6965 6420 6e61 6d65 206f qualified name o\n-000eb4f0: 6620 7468 6520 636c 6173 732c 2074 6f20 f the class, to \n-000eb500: 6469 7374 696e 6775 6973 6820 6465 7269 distinguish deri\n-000eb510: 7665 6420 696e 7374 616e 6365 7320 6672 ved instances fr\n-000eb520: 6f6d 2074 6865 2062 6173 6520 696e 7374 om the base inst\n-000eb530: 616e 6365 732e 2057 6974 686f 7574 2074 ances. Without t\n-000eb540: 6869 7320 6174 7472 6962 7574 6520 7468 his attribute th\n-000eb550: 6520 6465 7365 7269 616c 697a 6572 2077 e deserializer w\n-000eb560: 696c 6c20 6e6f 7420 696e 7374 616e 7469 ill not instanti\n-000eb570: 6174 6520 7468 6520 6465 7269 7665 6420 ate the derived \n-000eb580: 696e 7374 616e 6365 2062 7574 2061 2062 instance but a b\n-000eb590: 6173 6520 696e 7374 616e 6365 2073 696e ase instance sin\n-000eb5a0: 6365 2074 6865 7265 2069 7320 6e6f 2069 ce there is no i\n-000eb5b0: 6465 6e74 6966 7969 6e67 2069 6e66 6f72 dentifying infor\n-000eb5c0: 6d61 7469 6f6e 2074 6f20 6469 7374 696e mation to distin\n-000eb5d0: 6775 6973 6820 7468 6520 584d 4c20 666f guish the XML fo\n-000eb5e0: 726d 7320 6578 6365 7074 2066 6f72 2074 rms except for t\n-000eb5f0: 6865 203c 656d 3e3c 636f 6465 3e78 7369 he xsi\n-000eb600: 3a74 7970 653c 2f63 6f64 653e 3c2f 656d :type
attribute.ns__O\n-000eb710: 626a 6563 7473 3c2f 636f 6465 3e20 7468 bjects
th\n-000eb720: 6174 2068 6f6c 6420 7661 6c75 6573 206f at hold values o\n-000eb730: 6620 616e 7920 7365 7269 616c 697a 6162 f any serializab\n-000eb740: 6c65 2074 7970 653a 3c2f 703e 0a3c 6469 le type:int __size; \n-000ebb30: 2020 2020 2020 2020 2020 3c73 7061 6e20 \n-000ebb50: 2f2f 2073 697a 6520 6f66 2074 6865 2061 // size of the a\n-000ebb60: 7272 6179 3c2f 7370 616e 3e3c 2f64 6976 rray__wrappe\n-000ebc60: 723c 2f63 6f64 653e 2061 6e64 206d 656d r
and mem\n-000ebc70: 6265 7220 3c63 6f64 653e 5f5f 6172 7261 ber __arra\n-000ebc80: 793c 2f63 6f64 653e 2c20 7768 6963 6820 y
, which \n-000ebc90: 7374 6172 7420 7769 7468 2061 2064 6f75 start with a dou\n-000ebca0: 626c 6520 756e 6465 7273 636f 7265 2e20 ble underscore. \n-000ebcb0: 5468 6573 6520 6e61 6d65 7320 6172 6520 These names are \n-000ebcc0: 6e65 7665 7220 7669 7369 626c 6520 696e never visible in\n-000ebcd0: 2073 6572 6961 6c69 7a65 6420 584d 4c2e serialized XML.\n-000ebce0: 2054 6865 203c 636f 6465 3e5f 5f74 7970 The __typ\n-000ebcf0: 653c 2f63 6f64 653e 206d 656d 6265 7220 e
member \n-000ebd00: 6f66 203c 636f 6465 3e5f 5f77 7261 7070 of __wrapp\n-000ebd10: 6572 3c2f 636f 6465 3e20 6973 2061 203c er
is a <\n-000ebd20: 636f 6465 3e53 4f41 505f 5459 5045 5f54 code>SOAP_TYPE_T\n-000ebd30: 3c2f 636f 6465 3e20 7661 6c75 6520 7468 value th\n-000ebd40: 6174 2069 6465 6e74 6966 6965 7320 7468 at identifies th\n-000ebd50: 6520 7479 7065 203c 636f 6465 3e54 3c2f e type T\n-000ebd60: 636f 6465 3e20 7468 6174 203c 636f 6465 code> that
__item
p\n-000ebd80: 6f69 6e74 7320 746f 2c20 7365 6520 5365 oints to, see Se\n-000ebd90: 6374 696f 6e20 3c61 2063 6c61 7373 3d22 ction Void \n-000ebdc0: 706f 696e 7465 7220 7365 7269 616c 697a pointer serializ\n-000ebdd0: 6174 696f 6e3c 2f61 3e2e 3c2f 703e 0a3c ation..\n-000ebe40: 486f 7720 746f 2063 6861 6e67 6520 7468 How to change th\n-000ebe50: 6520 7461 6720 6e61 6d65 7320 6f66 2061 e tag names of a\n-000ebe60: 7272 6179 2069 7465 6d20 656c 656d 656e rray item elemen\n-000ebe70: 7473 3c2f 6833 3e0a 3c70 3e54 6865 2064 ts
.item\n-000ebec0: 3c2f 636f 6465 3e3c 2f65 6d3e 2c20 7768
, wh\n-000ebed0: 6963 6820 6361 6e20 6265 2063 6861 6e67 ich can be chang\n-000ebee0: 6564 2e20 5468 6520 3c63 6f64 653e 5f5f ed. The __\n-000ebef0: 7074 723c 2f63 6f64 653e 206d 656d 6265 ptr
membe\n-000ebf00: 7220 696e 2061 2073 7472 7563 7420 6f72 r in a struct or\n-000ebf10: 2063 6c61 7373 206f 6620 6120 6479 6e61 class of a dyna\n-000ebf20: 6d69 6320 6172 7261 7920 6d61 7920 6861 mic array may ha\n-000ebf30: 7665 2061 6e20 6f70 7469 6f6e 616c 2073 ve an optional s\n-000ebf40: 7566 6669 7820 7061 7274 2074 6861 7420 uffix part that \n-000ebf50: 7370 6563 6966 6965 7320 7468 6520 6e61 specifies the na\n-000ebf60: 6d65 206f 6620 7468 6520 656c 656d 656e me of the elemen\n-000ebf70: 7420 7461 6720 696e 2058 4d4c 2e20 5468 t tag in XML. Th\n-000ebf80: 6174 2069 732c 2074 6865 2073 7566 6669 at is, the suffi\n-000ebf90: 7820 6973 2070 6172 7420 6f66 2074 6865 x is part of the\n-000ebfa0: 203c 636f 6465 3e5f 5f70 7472 3c2f 636f __ptr member name:\n-000ebfc0: 3c2f 703e 0a3c 6469 7620 636c 6173 733d
.bas\n-000ec560: 6536 3442 696e 6172 7920 7365 7269 616c e64Binary serial\n-000ec570: 697a 6174 696f 6e3c 2f68 323e 0a3c 703e ization
.ba\n-000ec590: 7365 3634 4269 6e61 7279 3c2f 636f 6465 se64Binary
XSD type \n-000ec5b0: 6973 2069 6e74 726f 6475 6365 6420 696e is introduced in\n-000ec5c0: 2061 6e20 696e 7465 7266 6163 6520 6865 an interface he\n-000ec5d0: 6164 6572 2066 696c 6520 666f 7220 736f ader file for so\n-000ec5e0: 6170 6370 7032 2075 7369 6e67 2061 2073 apcpp2 using a s\n-000ec5f0: 7472 7563 7420 6f72 2063 6c61 7373 2074 truct or class t\n-000ec600: 6861 7420 636f 6e74 6169 6e73 2061 6e20 hat contains an \n-000ec610: 6172 7261 7920 6f66 203c 636f 6465 3e75 array of u\n-000ec620: 6e73 6967 6e65 6420 6368 6172 3c2f 636f nsigned char values:
base64Binary
use th\n-000ec9c0: 6520 7361 6d65 2073 7472 7563 7420 6f72 e same struct or\n-000ec9d0: 2063 6c61 7373 2073 7472 7563 7475 7265 class structure\n-000ec9e0: 2c20 6275 7420 7769 7468 2061 6e6f 7468 , but with anoth\n-000ec9f0: 6572 206e 616d 652e 2046 6f72 2065 7861 er name. For exa\n-000eca00: 6d70 6c65 3a3c 2f70 3e0a 3c64 6976 2063 mple:\n-000ece30: 613e 0a68 6578 4269 6e61 7279 2073 6572 a>.hexBinary ser\n-000ece40: 6961 6c69 7a61 7469 6f6e 3c2f 6832 3e0a ialization
.\n-000ece50: 3c70 3e54 6865 203c 656d 3e3c 636f 6465 base64Binary
XSD ty\n-000ece80: 7065 2069 7320 696e 7472 6f64 7563 6564 pe is introduced\n-000ece90: 2069 6e20 616e 2069 6e74 6572 6661 6365 in an interface\n-000ecea0: 2068 6561 6465 7220 6669 6c65 2066 6f72 header file for\n-000eceb0: 2073 6f61 7063 7070 3220 7573 696e 6720 soapcpp2 using \n-000ecec0: 6120 7374 7275 6374 206f 7220 636c 6173 a struct or clas\n-000eced0: 7320 7468 6174 2063 6f6e 7461 696e 7320 s that contains \n-000ecee0: 616e 2061 7272 6179 206f 6620 3c63 6f64 an array of \n-000ed310: 7479 7065 6465 663c 2f63 6f64 653e 2074 typedef
t\n-000ed320: 6f20 696e 7472 6f64 7563 6520 7468 6520 o introduce the \n-000ed330: 6865 7820 7661 7269 616e 743a 3c2f 703e hex variant:xsd\n-000ed730: 3a68 6578 4269 6e61 7279 3c2f 636f 6465 :hexBinary
serialize\n-000ed750: 7273 2e3c 2f70 3e0a 3c70 3ef0 9f94 9d20 rs..<\n-000ed810: 6c69 3e53 4f41 5020 5250 4320 656e 636f li>SOAP RPC enco\n-000ed820: 6469 6e67 2075 7365 7320 584d 4c20 7468 ding uses XML th\n-000ed830: 6174 2069 7320 7265 7374 7269 6374 6564 at is restricted\n-000ed840: 2074 6f20 534f 4150 2073 7472 7563 7475 to SOAP structu\n-000ed850: 7265 7320 746f 2065 6e73 7572 6520 7072 res to ensure pr\n-000ed860: 6f67 7261 6d6d 696e 672d 6c61 6e67 7561 ogramming-langua\n-000ed870: 6765 2069 6e74 6572 6f70 6572 6162 696c ge interoperabil\n-000ed880: 6974 792e 204e 6f74 2061 6c6c 6f77 6564 ity. Not allowed\n-000ed890: 2061 7265 2076 616c 7565 7320 7365 7269 are values seri\n-000ed8a0: 616c 697a 6564 2061 7320 584d 4c20 6174 alized as XML at\n-000ed8b0: 7472 6962 7574 6573 2c20 6172 7261 7973 tributes, arrays\n-000ed8c0: 2073 686f 756c 6420 6265 2073 6572 6961 should be seria\n-000ed8d0: 6c69 7a65 6420 6173 2053 4f41 502d 656e lized as SOAP-en\n-000ed8e0: 636f 6465 6420 6172 7261 7973 2069 6e73 coded arrays ins\n-000ed8f0: 7465 6164 206f 6620 584d 4c20 656c 656d tead of XML elem\n-000ed900: 656e 7420 7265 7065 7469 7469 6f6e 7320 ent repetitions \n-000ed910: 2869 2e65 2e20 3c65 6d3e 3c63 6f64 653e (i.e.
\n-000ed920: 7873 643a 7365 7175 656e 6365 206d 6178 xsd:sequence max\n-000ed930: 4f63 6375 7273 3d22 756e 626f 756e 6465 Occurs=\"unbounde\n-000ed940: 6422 3c2f 636f 6465 3e3c 2f65 6d3e 2069 d\"
i\n-000ed950: 7320 6e6f 7420 616c 6c6f 7765 6429 2c20 s not allowed), \n-000ed960: 616e 6420 3c65 6d3e 3c63 6f64 653e 7873 and xs\n-000ed970: 643a 6368 6f69 6365 3c2f 636f 6465 3e3c d:choice
<\n-000ed980: 2f65 6d3e 2063 6f6d 706f 6e65 6e74 7320 /em> components \n-000ed990: 6172 6520 6e6f 7420 616c 6c6f 7765 642e are not allowed.\n-000ed9a0: 204d 756c 7469 2d72 6566 6572 656e 6365 Multi-reference\n-000ed9b0: 6420 656c 656d 656e 7473 2061 7265 2075 d elements are u\n-000ed9c0: 7365 6420 746f 2073 6572 6961 6c69 7a65 sed to serialize\n-000ed9d0: 2064 6174 6120 7374 7275 6374 7572 6520 data structure \n-000ed9e0: 6772 6170 6873 2e20 4265 6361 7573 6520 graphs. Because \n-000ed9f0: 6164 6469 7469 6f6e 616c 2053 4f41 502d additional SOAP-\n-000eda00: 656e 636f 6469 6e67 2073 7065 6369 6669 encoding specifi\n-000eda10: 6320 6174 7472 6962 7574 6573 2061 7265 c attributes are\n-000eda20: 2070 7265 7365 6e74 2074 6861 7420 6172 present that ar\n-000eda30: 6520 6e6f 7420 6465 6669 6e65 6420 696e e not defined in\n-000eda40: 2074 6865 2058 4d4c 2073 6368 656d 6120 the XML schema \n-000eda50: 286f 6620 7468 6520 5753 444c 292c 2073 (of the WSDL), s\n-000eda60: 7472 6963 7420 584d 4c20 7363 6865 6d61 trict XML schema\n-000eda70: 2076 616c 6964 6174 6f72 7320 6d61 7920 validators may \n-000eda80: 7265 6a65 6374 2053 4f41 502d 656e 636f reject SOAP-enco\n-000eda90: 6465 6420 636f 6e74 656e 742e 2054 6865 ded content. The\n-000edaa0: 2053 4f41 5020 426f 6479 2063 6f6e 7461 SOAP Body conta\n-000edab0: 696e 7320 6174 206d 6f73 7420 6f6e 6520 ins at most one \n-000edac0: 7365 7276 6963 6520 6f70 6572 6174 696f service operatio\n-000edad0: 6e20 7265 7175 6573 7420 656c 656d 656e n request elemen\n-000edae0: 7420 6f72 2061 7420 6d6f 7374 206f 6e65 t or at most one\n-000edaf0: 2073 6572 7669 6365 206f 7065 7261 7469 service operati\n-000edb00: 6f6e 2072 6573 706f 6e73 6520 656c 656d on response elem\n-000edb10: 656e 7420 616e 6420 7468 6520 656e 636f ent and the enco\n-000edb20: 6469 6e67 2073 7479 6c65 2069 7320 696e ding style is in\n-000edb30: 6469 6361 7465 6420 7769 7468 2074 6865 dicated with the\n-000edb40: 203c 656d 3e3c 636f 6465 3e53 4f41 502d SOAP-\n-000edb50: 454e 563a 656e 636f 6469 6e67 5374 796c ENV:encodingStyl\n-000edb60: 653d 222e 2e2e 223c 2f63 6f64 653e 3c2f e=\"...\"
\n-000edb70: 656d 3e20 6174 7472 6962 7574 6520 696e em> attribute in\n-000edb80: 2074 6865 2053 4f41 5020 426f 6479 206f the SOAP Body o\n-000edb90: 7220 6f6e 6520 6f72 206d 6f72 6520 6f66 r one or more of\n-000edba0: 2069 7473 2073 7562 2d65 6c65 6d65 6e74 its sub-element\n-000edbb0: 732e 2054 6869 7320 7374 796c 6520 6973 s. This style is\n-000edbc0: 2073 7065 6369 6669 6564 2066 6f72 2074 specified for t\n-000edbd0: 6865 2065 6e74 6972 6520 7365 7276 6963 he entire servic\n-000edbe0: 6520 6465 636c 6172 6564 2075 6e64 6572 e declared under\n-000edbf0: 206e 616d 6573 7061 6365 2070 7265 6669 namespace prefi\n-000edc00: 7820 3c63 6f64 653e 6e73 3c2f 636f 6465 x ns
with: #SOAP_XML_GRAPH\n-000ede70: 3c2f 636f 6465 3e20 746f 2066 6f72 6365
to force\n-000ede80: 2074 6865 2075 7365 206f 6620 6964 2d72 the use of id-r\n-000ede90: 6566 2074 6f20 6163 6375 7261 7465 6c79 ef to accurately\n-000edea0: 2073 6572 6961 6c69 7a65 2064 6967 7261 serialize digra\n-000edeb0: 7068 7320 616e 6420 6379 636c 6963 2064 phs and cyclic d\n-000edec0: 6174 6120 7374 7275 6374 7572 6573 2e20 ata structures. \n-000eded0: 5468 6520 534f 4150 2042 6f64 7920 6d61 The SOAP Body ma\n-000edee0: 7920 636f 6e74 6169 6e20 616e 7920 6e75 y contain any nu\n-000edef0: 6d62 6572 206f 6620 584d 4c20 656c 656d mber of XML elem\n-000edf00: 656e 7473 2c20 6173 2069 6620 7468 6520 ents, as if the \n-000edf10: 534f 4150 2042 6f64 7920 6973 2074 6865 SOAP Body is the\n-000edf20: 2072 6f6f 7420 6f66 2061 6e20 584d 4c20 root of an XML \n-000edf30: 646f 6375 6d65 6e74 2e20 4e6f 203c 656d document. No SOAP-ENV:\n-000edf50: 656e 636f 6469 6e67 5374 796c 653d 222e encodingStyle=\".\n-000edf60: 2e2e 223c 2f63 6f64 653e 3c2f 656d 3e20 ..\"
\n-000edf70: 6174 7472 6962 7574 6520 7368 6f75 6c64 attribute should\n-000edf80: 2061 7070 6561 7220 696e 206c 6974 6572 appear in liter\n-000edf90: 616c 2063 6f6e 7465 6e74 2e20 5468 6973 al content. This\n-000edfa0: 2073 7479 6c65 2069 7320 7370 6563 6966 style is specif\n-000edfb0: 6965 6420 666f 7220 7468 6520 656e 7469 ied for the enti\n-000edfc0: 7265 2073 6572 7669 6365 2064 6563 6c61 re service decla\n-000edfd0: 7265 6420 756e 6465 7220 6e61 6d65 7370 red under namesp\n-000edfe0: 6163 6520 7072 6566 6978 203c 636f 6465 ace prefix ns
with:\n-000ee000: 203c 6469 7620 636c 6173 733d 2266 7261 SOAP-E\n-000ee200: 4e56 3a65 6e63 6f64 696e 6753 7479 6c65 NV:encodingStyle\n-000ee210: 3d22 2e2e 2e22 3c2f 636f 6465 3e3c 2f65 =\"...\"
attribute sho\n-000ee230: 756c 6420 6170 7065 6172 2069 6e20 6c69 uld appear in li\n-000ee240: 7465 7261 6c20 636f 6e74 656e 742e 2054 teral content. T\n-000ee250: 6869 7320 7374 796c 6520 6973 2073 7065 his style is spe\n-000ee260: 6369 6669 6564 2066 6f72 2074 6865 2065 cified for the e\n-000ee270: 6e74 6972 6520 7365 7276 6963 6520 6465 ntire service de\n-000ee280: 636c 6172 6564 2075 6e64 6572 206e 616d clared under nam\n-000ee290: 6573 7061 6365 2070 7265 6669 7820 3c63 espace prefix -e
style\n-000ee9e0: 3c2f 636f 6465 3e20 6469 7265 6374 6976
directiv\n-000ee9f0: 6573 2079 6f75 2063 616e 2073 7065 6369 es you can speci\n-000eea00: 6679 203c 636f 6465 3e72 7063 3c2f 636f fy rpc or
, or even a cus\n-000eeaa0: 746f 6d20 5552 4920 7468 6174 2069 6e64 tom URI that ind\n-000eeab0: 6963 6174 6573 2073 6f6d 6520 6375 7374 icates some cust\n-000eeac0: 6f6d 206f 7220 7072 6f70 7269 6574 6172 om or proprietar\n-000eead0: 7920 656e 636f 6469 6e67 2066 6f72 6d61 y encoding forma\n-000eeae0: 7420 696e 2058 4d4c 2077 6869 6368 2077 t in XML which w\n-000eeaf0: 696c 6c20 6e6f 7420 696e 7465 726f 7065 ill not interope\n-000eeb00: 7261 7465 2077 6974 6820 534f 4150 2070 rate with SOAP p\n-000eeb10: 726f 6365 7373 6f72 7320 7468 6174 2061 rocessors that a\n-000eeb20: 7265 206e 6f74 2063 6f6d 7061 7469 626c re not compatibl\n-000eeb30: 6520 7769 7468 2074 6865 2073 7065 6369 e with the speci\n-000eeb40: 6669 6564 2065 6e63 6f64 696e 6720 666f fied encoding fo\n-000eeb50: 726d 6174 2e20 5365 6520 616c 736f 2053 rmat. See also S\n-000eeb60: 6563 7469 6f6e 203c 6120 636c 6173 733d ection Directives\n-000eeba0: 2e3c 2f70 3e0a 3c70 3e53 6565 2061 6c73 .doc\n-000eea20: 756d 656e 743c 2f63 6f64 653e 2e20 466f ument
. Fo\n-000eea30: 7220 7468 6520 3c63 6f64 653e 656e 636f r the enco\n-000eea40: 6469 6e67 3c2f 636f 6465 3e20 6469 7265 ding
dire\n-000eea50: 6374 6976 6573 2079 6f75 2063 616e 2073 ctives you can s\n-000eea60: 7065 6369 6679 203c 636f 6465 3e6c 6974 pecify lit\n-000eea70: 6572 616c 3c2f 636f 6465 3e2c 203c 636f eral
, .Seria\n-000eece0: 6c69 7a69 6e67 206d 6978 6564 2063 6f6e lizing mixed con\n-000eecf0: 7465 6e74 2077 6974 6820 6c69 7465 7261 tent with litera\n-000eed00: 6c20 584d 4c20 7374 7269 6e67 733c 2f68 l XML strings.
_XML\n-000eed60: 636f 6465 3e20 7479 7065 2074 6861 7420 code> type that \n-000eed70: 6973 2061 2072 6567 756c 6172 203c 636f is a regular
\n-000eed90: 7374 7269 6e67 206f 7220 796f 7520 6361 string or you ca\n-000eeda0: 6e20 6465 636c 6172 6520 6120 7769 6465 n declare a wide\n-000eedb0: 2063 6861 7261 6374 6572 2073 7472 696e character strin\n-000eedc0: 6720 696e 2061 6e20 696e 7465 7266 6163 g in an interfac\n-000eedd0: 6520 6865 6164 6572 2066 696c 6520 666f e header file fo\n-000eede0: 7220 736f 6170 6370 7032 2061 7320 666f r soapcpp2 as fo\n-000eedf0: 6c6c 6f77 733a 3c2f 703e 0a3c 6469 7620 llows:st\n-000eeeb0: 643a 3a73 7472 696e 673c 2f63 6f64 653e d::string
\n-000eeec0: 206c 6974 6572 616c 2058 4d4c 2074 7970 literal XML typ\n-000eeed0: 653a 3c2f 703e 0a3c 6469 7620 636c 6173 e:.\n-000ef160: 3c6c 693e 584d 4c20 6c69 7465 7261 6c20
..XM\n-000ef250: 4c20 7661 6c69 6461 7469 6f6e 3c2f 6831 L validation
.#SOAP_\n-000ef2d0: 584d 4c5f 5354 5249 4354 3c2f 636f 6465 XML_STRICT
flag. SOAP RPC\n-000ef2f0: 2065 6e63 6f64 696e 6720 6973 2061 6e20 encoding is an \n-000ef300: 584d 4c20 666f 726d 6174 2074 6861 7420 XML format that \n-000ef310: 646f 6573 206e 6f74 2061 6666 6f72 6420 does not afford \n-000ef320: 7374 7269 6374 2058 4d4c 2076 616c 6964 strict XML valid\n-000ef330: 6174 696f 6e2c 2062 6563 6175 7365 206f ation, because o\n-000ef340: 6620 7468 6520 6164 6469 7469 6f6e 206f f the addition o\n-000ef350: 6620 534f 4150 2d73 7065 6369 6669 6320 f SOAP-specific \n-000ef360: 6174 7472 6962 7574 6573 2061 6e64 206f attributes and o\n-000ef370: 7468 6572 2073 6d61 6c6c 2064 6576 6961 ther small devia\n-000ef380: 7469 6f6e 7320 7468 6174 2077 696c 6c20 tions that will \n-000ef390: 6265 2064 6574 6563 7465 6420 6279 2061 be detected by a\n-000ef3a0: 6e20 6167 6772 6573 7369 7665 2058 4d4c n aggressive XML\n-000ef3b0: 2076 616c 6964 6174 6f72 2c20 6c65 6164 validator, lead\n-000ef3c0: 696e 6720 7468 6520 6d65 7373 6167 696e ing the messagin\n-000ef3d0: 6720 6661 696c 7572 6573 2e20 4279 2074 g failures. By t\n-000ef3e0: 6f6e 696e 6720 584d 4c20 7661 6c69 6461 oning XML valida\n-000ef3f0: 7469 6f6e 2064 6f77 6e2c 2069 7420 6865 tion down, it he\n-000ef400: 6c70 7320 746f 2069 6d70 726f 7665 2053 lps to improve S\n-000ef410: 4f41 5020 5250 4320 656e 636f 6469 6e67 OAP RPC encoding\n-000ef420: 2069 6e74 6572 6f70 6572 6162 696c 6974 interoperabilit\n-000ef430: 792e 3c2f 703e 0a3c 703e 5374 7269 6374 y.soap_s\n-000ef4b0: 6574 5f69 6d6f 6465 2873 6f61 702c 2053 et_imode(soap, S\n-000ef4c0: 4f41 505f 584d 4c5f 5354 5249 4354 293c OAP_XML_STRICT)<\n-000ef4d0: 2f63 6f64 653e 206f 7220 3c63 6f64 653e /code> or
\n-000ef4e0: 736f 6170 5f6e 6577 2853 4f41 505f 584d soap_new(SOAP_XM\n-000ef4f0: 4c5f 5354 5249 4354 293c 2f63 6f64 653e L_STRICT)
\n-000ef500: 2c20 7365 6520 5365 6374 696f 6e20 3c61 , see Section Run-time fla\n-000ef540: 6773 3c2f 613e 2066 6f72 2074 6865 2063 gs for the c\n-000ef550: 6f6d 706c 6574 6520 6c69 7374 206f 6620 omplete list of \n-000ef560: 666c 6167 732e 3c2f 703e 0a3c 703e 5468 flags.#SOAP_XML_\n-000ef5c0: 5354 5249 4354 3c2f 636f 6465 3e20 6973 STRICT
is\n-000ef5d0: 2065 6e61 626c 6564 2061 6e64 2076 616c enabled and val\n-000ef5e0: 6964 6174 696f 6e20 636f 6e73 7472 6169 idation constrai\n-000ef5f0: 6e74 7320 6172 6520 7370 6563 6966 6965 nts are specifie\n-000ef600: 6420 696e 2074 6865 2069 6e74 6572 6661 d in the interfa\n-000ef610: 6365 2068 6561 6465 7220 6669 6c65 2e3c ce header file.<\n-000ef620: 2f70 3e0a 3c70 3e55 7365 2063 6f6d 7069 /p>.#\n-000ef640: 5749 5448 5f52 4550 4c41 4345 5f49 4c4c WITH_REPLACE_ILL\n-000ef650: 4547 414c 5f55 5446 383c 2f63 6f64 653e EGAL_UTF8
\n-000ef660: 2074 6f20 666f 7263 6520 7374 7269 6374 to force strict\n-000ef670: 2055 5446 2d38 2074 6578 7420 636f 6e76 UTF-8 text conv\n-000ef680: 6572 7369 6f6e 732c 2077 6869 6368 2072 ersions, which r\n-000ef690: 6570 6c61 6365 7320 696e 7661 6c69 6420 eplaces invalid \n-000ef6a0: 5554 462d 3820 7769 7468 2055 2b46 4646 UTF-8 with U+FFF\n-000ef6b0: 442e 3c2f 703e 0a3c 703e 5365 6520 616c D..Default v\n-000ef7a0: 616c 7565 733c 2f68 323e 0a3c 703e 4465 alues
."\n-000efb50: 6e6f 6e65 2671 756f 743b 3c2f 7370 616e none"; // opti\n-000efb80: 6f6e 616c 2065 6c65 6d65 6e74 2077 6974 onal element wit\n-000efb90: 6820 6465 6661 756c 7420 7661 6c75 6520 h default value \n-000efba0: 2671 756f 743b 6e6f 6e65 2671 756f 743b "none"\n-000efbb0: 203c 2f73 7061 6e3e 3c2f 6469 763e 0a3c so\n-000efd20: 6170 5f6e 6577 5f43 6c61 7373 4e61 6d65 ap_new_ClassName\n-000efd30: 3c2f 636f 6465 3e20 7468 6520 696e 7374
the inst\n-000efd40: 616e 6365 2077 696c 6c20 6265 2069 6e69 ance will be ini\n-000efd50: 7469 616c 697a 6564 2077 6974 6820 6465 tialized with de\n-000efd60: 6661 756c 7420 7661 6c75 6573 2e3c 2f70 fault values..O\n-000efe50: 6363 7572 7265 6e63 6520 636f 6e73 7472 ccurrence constr\n-000efe60: 6169 6e74 733c 2f68 323e 0a3c 703e 4f63 aints
.\n-000eff40: 0a45 6c65 6d65 6e74 7320 7769 7468 206d .Elements with m\n-000eff50: 696e 4f63 6375 7273 2061 6e64 206d 6178 inOccurs and max\n-000eff60: 4f63 6375 7273 2072 6573 7472 6963 7469 Occurs restricti\n-000eff70: 6f6e 733c 2f68 333e 0a3c 703e 546f 2066 ons
.nullptr is optional\n-000f0150: 2061 6e64 2069 6e64 6963 6174 6573 2074 and indicates t\n-000f0160: 6861 7420 7468 6520 6d65 6d62 6572 2069 hat the member i\n-000f0170: 7320 6e69 6c6c 6162 6c65 2028 6753 4f41 s nillable (gSOA\n-000f0180: 5020 7665 7273 696f 6e20 322e 382e 3234 P version 2.8.24\n-000f0190: 206f 7220 6772 6561 7465 7229 2c20 7768 or greater), wh\n-000f01a0: 6963 6820 6d65 616e 7320 7468 6174 2077 ich means that w\n-000f01b0: 6865 6e20 4e55 4c4c 2061 6e20 656d 7074 hen NULL an empt\n-000f01c0: 7920 656c 656d 656e 7420 7769 7468 203c y element with <\n-000f01d0: 656d 3e3c 636f 6465 3e78 7369 3a6e 696c em>
xsi:nil\n-000f01e0: 3d22 7472 7565 223c 2f63 6f64 653e 3c2f =\"true\"
\n-000f01f0: 656d 3e20 6973 2061 6464 6564 2069 6e20 em> is added in \n-000f0200: 7468 6520 7365 7269 616c 697a 6564 2058 the serialized X\n-000f0210: 4d4c 2e3c 2f70 3e0a 3c70 3e54 6865 203c ML.\n-000f0240: 6d61 784f 6363 7572 733c 2f63 6f64 653e maxOccurs
\n-000f0250: 2061 7265 206f 7074 696f 6e61 6c20 7661 are optional va\n-000f0260: 6c75 6573 2074 6861 7420 6d75 7374 2062 lues that must b\n-000f0270: 6520 696e 7465 6765 7220 6c69 7465 7261 e integer litera\n-000f0280: 6c73 2e20 5768 656e 203c 636f 6465 3e6d ls. When m\n-000f0290: 6178 4f63 6375 7273 3c2f 636f 6465 3e20 axOccurs
\n-000f02a0: 6973 206e 6f74 2073 7065 6369 6669 6564 is not specified\n-000f02b0: 2074 6865 6e20 7468 6520 636f 6c6f 6e20 then the colon \n-000f02c0: 6361 6e20 6265 206f 6d69 7474 6564 2e20 can be omitted. \n-000f02d0: 5768 656e 203c 636f 6465 3e6d 696e 4f63 When minOc\n-000f02e0: 6375 7273 3c2f 636f 6465 3e20 6973 206e curs
is n\n-000f02f0: 6f74 2073 7065 6369 6669 6564 2069 7420 ot specified it \n-000f0300: 6973 2061 7373 756d 6564 2074 6f20 6265 is assumed to be\n-000f0310: 206f 6e65 2028 3129 2066 6f72 206e 6f6e one (1) for non\n-000f0320: 2d70 6f69 6e74 6572 206d 656d 6265 7273 -pointer members\n-000f0330: 2074 6861 7420 6172 6520 656c 656d 656e that are elemen\n-000f0340: 7473 2061 6e64 207a 6572 6f20 2830 2920 ts and zero (0) \n-000f0350: 666f 7220 6d65 6d62 6572 7320 7468 6174 for members that\n-000f0360: 2061 7265 2070 6f69 6e74 6572 7320 6f72 are pointers or\n-000f0370: 2061 7265 2061 7474 7269 6275 7465 7320 are attributes \n-000f0380: 2869 2e65 2e20 6861 7665 2061 203c 636f (i.e. have a va\n-000f03d0: 6c75 653c 2f63 6f64 653e 206d 6179 2062 lue
may b\n-000f03e0: 6520 7072 6f76 6964 6564 2061 6e64 2069 e provided and i\n-000f03f0: 7320 6f70 7469 6f6e 616c 2e3c 2f70 3e0a s optional.==\n-000f0440: 636f 6465 3e20 2867 534f 4150 2076 6572 code> (gSOAP ver\n-000f0450: 7369 6f6e 2032 2e38 2e34 3820 6f72 2067 sion 2.8.48 or g\n-000f0460: 7265 6174 6572 292e 3c2f 703e 0a3c 703e reater).
time.x\n-000f1390: 7364 3c2f 636f 6465 3e3c 2f65 6d3e 3a3c sd
:<\n-000f13a0: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>.name=\n-000f1430: 3c73 7061 6e20 636c 6173 733d 2273 7472 &quo\n-000f1450: 743b 7365 636f 6e64 7326 7175 6f74 3b3c t;seconds"<\n-000f1460: 2f73 7061 6e3e 2667 743b 203c 2f64 6976 /span>> "\n-000f1cc0: 7873 643a 7374 7269 6e67 2671 756f 743b xsd:string"\n-000f1cd0: 3c2f 7370 616e 3e26 6774 3b20 3c2f 6469 > .simpleTy\n-000f1ee0: 7065 3c2f 7370 616e 3e26 6774 3b3c 2f64 pe>.// simpleCon\n-000f2260: 7465 6e74 2077 7261 7070 6572 203c 2f73 tent wrapper #SOAP_XM\n-000f2570: 4c5f 5354 5249 4354 3c2f 636f 6465 3e20 L_STRICT
\n-000f2580: 6d6f 6465 2066 6c61 6720 746f 2065 6e61 mode flag to ena\n-000f2590: 626c 6520 7468 6520 7661 6c69 6461 7469 ble the validati\n-000f25a0: 6f6e 206f 6620 7661 6c75 6520 6c65 6e67 on of value leng\n-000f25b0: 7468 2063 6f6e 7374 7261 696e 7473 2e3c th constraints.<\n-000f25c0: 2f70 3e0a 3c70 3e53 6565 2061 6c73 6f20 /p>..Valu\n-000f26b0: 6520 7261 6e67 6520 7265 7374 7269 6374 e range restrict\n-000f26c0: 696f 6e73 3c2f 6833 3e0a 3c70 3e53 696d ions
.low\n-000f2790: 203a 2068 6967 683c 2f63 6f64 653e 2c20 : high
, \n-000f27a0: 7768 6572 6520 3c63 6f64 653e 6c6f 773c where low<\n-000f27b0: 2f63 6f64 653e 2061 6e64 203c 636f 6465 /code> and
high
are\n-000f27d0: 206f 7074 696f 6e61 6c2e 3c2f 703e 0a3c optional.<
on either side\n-000f2860: 206f 6620 7468 6520 3c63 6f64 653e 3a3c of the :<\n-000f2870: 2f63 6f64 653e 2072 616e 6765 206f 7065 /code> range ope\n-000f2880: 7261 746f 723a 3c2f 703e 0a3c 7461 626c rator:.
. .range \n-000f28f0: 2020 3c2f 7468 3e3c 7468 2063 6c61 7373 validat\n-000f2920: 696f 6e20 6368 6563 6b20 2020 203c 2f74 ion check . .1
1 <= x \n-000f29c0: 3c2f 7464 3e3c 2f74 723e 0a3c 7472 2063 . \n-000f2a60: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .<\n-000f2a10: 636f 6465 3e31 203a 3c2f 636f 6465 3e20 code>1 : \n-000f2a20: 2020 3c2f 7464 3e3c 7464 2063 6c61 7373 1 <=\n-000f2a50: 2078 2020 2020 3c2f 7464 3e3c 2f74 723e x . .: 10\n-000f2ab0: 636f 6465 3e20 2020 3c2f 7464 3e3c 7464 code>
x\n-000f2ae0: 2026 6c74 3b3d 2031 3020 2020 203c 2f74 <= 10 . .1 <=\n-000f2b80: 2078 2026 6c74 3b3d 2031 3020 2020 203c x <= 10 <\n-000f2b90: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td> . .1 < x <\n-000f2c30: 3b20 3130 2020 2020 3c2f 7464 3e3c 2f74 ; 10 .. .1 &\n-000f2c90: 6c74 3b20 3130 3c2f 636f 6465 3e20 2020 lt; 10
\n-000f2ca0: 3c2f 7464 3e3c 7464 2063 6c61 7373 3d22 1 < x \n-000f2cd0: 266c 743b 2031 3020 2020 203c 2f74 643e < 10 \n-000f2ce0: 3c2f 7472 3e0a 3c74 7220 636c 6173 733d . .1\n-000f2d30: 203a 2026 6c74 3b20 3130 3c2f 636f 6465 : < 10
1 <\n-000f2d70: 3b3d 2078 2026 6c74 3b20 3130 2020 2020 ;= x < 10 \n-000f2d80: 3c2f 7464 3e3c 2f74 723e 0a3c 7472 2063 . .<\n-000f2dd0: 636f 6465 3e3a 2026 6c74 3b20 3130 3c2f code>: < 10\n-000f2de0: 636f 6465 3e20 2020 3c2f 7464 3e3c 7464 code> x\n-000f2e10: 2026 6c74 3b20 3130 2020 2020 3c2f 7464 < 10 . .\n-000f2ec0: 3c74 7220 636c 6173 733d 226d 6172 6b64 \n-000f2e70: 266c 743b 2031 303c 2f63 6f64 653e 2020 < 10
\n-000f2e80: 203c 2f74 643e 3c74 6420 636c 6173 733d x < 1\n-000f2eb0: 3020 2020 203c 2f74 643e 3c2f 7472 3e0a 0 . .1 <\n-000f2f10: 203a 3c2f 636f 6465 3e20 2020 3c2f 7464 :
1 < x <\n-000f2f50: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td> . \n-000f2ff0: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .1 <\n-000f2fe0: 2078 2020 2020 3c2f 7464 3e3c 2f74 723e x . ..<\n-000f30a0: 703e 466f 7220 6578 616d 706c 653a 3c2f p>For example:\n-000f30b0: 703e 0a3c 6469 7620 636c 6173 733d 2266 p>.1 <\n-000f3040: 3b20 3a20 3130 3c2f 636f 6465 3e20 2020 ; : 10
\n-000f3050: 3c2f 7464 3e3c 7464 2063 6c61 7373 3d22 1 < x \n-000f3080: 266c 743b 3d20 3130 2020 203c 2f74 643e <= 10 \n-000f3090: 3c2f 7472 3e0a 3c2f 7461 626c 653e 0a3c time.\n-000f3a40: 7873 643c 2f63 6f64 653e 3c2f 656d 3e3a xsd
:\n-000f3a50: 3c2f 703e 0a3c 6469 7620 636c 6173 733d value\n-000f3c30: 3d3c 7370 616e 2063 6c61 7373 3d22 7374 =&qu\n-000f3c50: 6f74 3b5b 312d 355d 3f5b 302d 395d 7c36 ot;[1-5]?[0-9]|6\n-000f3c60: 3026 7175 6f74 3b3c 2f73 7061 6e3e 2f26 0"/&\n-000f3c70: 6774 3b20 3c2f 6469 763e 0a3c 6469 7620 gt; xs\n-000f3df0: 643a 746f 7461 6c44 6967 6974 733c 2f63 d:totalDigits
and xsd:frac\n-000f3e20: 7469 6f6e 4469 6769 7473 3c2f 636f 6465 tionDigits
are given\n-000f3e40: 2069 6e20 6120 5853 4420 6669 6c65 2c20 in a XSD file, \n-000f3e50: 7468 656e 2061 2043 2066 6f72 6d61 7420 then a C format \n-000f3e60: 7374 7269 6e67 2069 7320 7072 6f64 7563 string is produc\n-000f3e70: 6564 2074 6f20 6f75 7470 7574 2066 6c6f ed to output flo\n-000f3e80: 6174 696e 6720 706f 696e 7420 7661 6c75 ating point valu\n-000f3e90: 6573 2077 6974 6820 7468 6520 7072 6f70 es with the prop\n-000f3ea0: 6572 2070 7265 6369 7369 6f6e 2061 6e64 er precision and\n-000f3eb0: 2073 6361 6c65 2e20 466f 7220 6578 616d scale. For exam\n-000f3ec0: 706c 653a 3c2f 703e 0a3c 6469 7620 636c ple:"\n-000f4300: 2535 2e32 6626 7175 6f74 3b3c 2f73 7061 %5.2f";n\n-000f48a0: 735f 5f72 6563 6f72 643c 2f63 6f64 653e s__record
\n-000f48b0: 2073 7472 7563 7420 6973 2073 6572 6961 struct is seria\n-000f48c0: 6c69 7a65 6420 7769 7468 2071 7561 6c69 lized with quali\n-000f48d0: 6669 6564 2065 6c65 6d65 6e74 203c 636f fied element t\n-000f4910: 7970 653c 2f63 6f64 653e 3a3c 2f70 3e0a ype
:ns:recor\n-000f4980: 643c 2f73 7061 6e3e 203c 7370 616e 2063 d t\n-000f49a0: 7970 653c 2f73 7061 6e3e 3d3c 7370 616e ype="...\n-000f49d0: 2671 756f 743b 3c2f 7370 616e 3e26 6774 ">\n-000f49e0: 3b20 3c2f 6469 763e 0a3c 6469 7620 636c ; nam\n-000f4e00: 653c 2f63 6f64 653e 2069 7320 756e 7175 e
is unqu\n-000f4e10: 616c 6966 6965 6420 616e 6420 3c63 6f64 alified and ns:recor\n-000f4ea0: 643c 2f73 7061 6e3e 203c 7370 616e 2063 d n\n-000f4ec0: 733a 7479 7065 3c2f 7370 616e 3e3d 3c73 s:type="\n-000f4ef0: 2e2e 2e26 7175 6f74 3b3c 2f73 7061 6e3e ..."\n-000f4f00: 2667 743b 203c 2f64 6976 3e0a 3c64 6976 > x.xsdschema:\n-000f59d0: 3c2f 703e 0a3c 6469 7620 636c 6173 733d
minOccurs="0"\n-000f5ea0: 7370 616e 3e20 3c73 7061 6e20 636c 6173 span> maxO\n-000f5ec0: 6363 7572 733c 2f73 7061 6e3e 3d3c 7370 ccurs=nillable=\n-000f5f40: 2671 756f 743b 7472 7565 2671 756f 743b "true"\n-000f5f50: 3c2f 7370 616e 3e20 3c73 7061 6e20 636c fo\n-000f5f70: 726d 3c2f 7370 616e 3e3d 3c73 7061 6e20 rm="qual\n-000f5fa0: 6966 6965 6426 7175 6f74 3b3c 2f73 7061 ified"/> element<\n-000f6150: 2f73 7061 6e3e 203c 7370 616e 2063 6c61 /span> ref\n-000f6170: 3c2f 7370 616e 3e3d 3c73 7061 6e20 636c ="y:zip&\n-000f61a0: 7175 6f74 3b3c 2f73 7061 6e3e 203c 7370 quot; maxOc\n-000f6220: 6375 7273 3c2f 7370 616e 3e3d 3c73 7061 curs=complexT\n-000f62f0: 7970 653c 2f73 7061 6e3e 2667 743b 203c ype> <\n-000f6300: 2f64 6976 3e0a 3c64 6976 2063 6c61 7373 /div>..XM\n-000f6680: 4c20 6e61 6d65 7370 6163 6573 2061 6e64 L namespaces and\n-000f6690: 2074 6865 206e 616d 6573 7061 6365 206d the namespace m\n-000f66a0: 6170 7069 6e67 2074 6162 6c65 3c2f 6831 apping table
.__<\n-000f7050: 2f63 6f64 653e 2920 696e 2061 6e20 6964 /code>) in an id\n-000f7060: 656e 7469 6669 6572 206f 7220 6279 2075 entifier or by u\n-000f7070: 7369 6e67 2063 6f6c 6f6e 206e 6f74 6174 sing colon notat\n-000f7080: 696f 6e2c 2073 6565 2053 6563 7469 6f6e ion, see Section\n-000f7090: 203c 6120 636c 6173 733d 2265 6c22 2068 C/C++ i\n-000f70c0: 6465 6e74 6966 6965 7220 6e61 6d65 2074 dentifier name t\n-000f70d0: 6f20 584d 4c20 7461 6720 6e61 6d65 2074 o XML tag name t\n-000f70e0: 7261 6e73 6c61 7469 6f6e 3c2f 613e 2e3c ranslation.<\n-000f70f0: 2f70 3e0a 3c70 3e41 6e20 6f70 7469 6f6e /p>.
-\n-000f71e0: 3c2f 636f 6465 3e29 2061 7265 2073 696e
) are sin\n-000f71f0: 676c 652d 6368 6172 6163 7465 7220 7769 gle-character wi\n-000f7200: 6c64 6361 7264 7320 616e 6420 6173 7465 ldcards and aste\n-000f7210: 7269 736b 7320 283c 636f 6465 3e2a 3c2f risks (*\n-000f7220: 636f 6465 3e29 2061 7265 206d 756c 7469 code>) are multi\n-000f7230: 2d63 6861 7261 6374 6572 2077 696c 6463 -character wildc\n-000f7240: 6172 6473 2e20 466f 7220 6578 616d 706c ards. For exampl\n-000f7250: 652c 2074 6f20 6163 6365 7074 2061 6c74 e, to accept alt\n-000f7260: 6572 6e61 7469 7665 2076 6572 7369 6f6e ernative version\n-000f7270: 7320 6f66 2058 4d4c 2073 6368 656d 6173 s of XML schemas\n-000f7280: 2077 6974 6820 6469 6666 6572 656e 7420 with different \n-000f7290: 6175 7468 6f72 696e 6720 6461 7465 732c authoring dates,\n-000f72a0: 2066 6f75 7220 6461 7368 6573 2063 616e four dashes can\n-000f72b0: 2062 6520 7573 6564 2069 6e20 706c 6163 be used in plac\n-000f72c0: 6520 6f66 2074 6865 2073 7065 6369 6669 e of the specifi\n-000f72d0: 6320 6461 7465 7320 696e 2074 6865 206e c dates in the n\n-000f72e0: 616d 6573 7061 6365 206d 6170 7069 6e67 amespace mapping\n-000f72f0: 2074 6162 6c65 2070 6174 7465 726e 3a3c table pattern:<\n-000f7300: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>.
http://tempu\n-000f8150: 7269 2e6f 7267 2f70 7265 6669 782e 7873 ri.org/prefix.xs\n-000f8160: 643c 2f61 3e3c 2f63 6f64 653e 3c2f 656d d
for each names\n-000f8180: 7061 6365 203c 656d 3e3c 636f 6465 3e70 pace p\n-000f8190: 7265 6669 783c 2f63 6f64 653e 3c2f 656d refix
. The soapcpp2 \n-000f81b0: 746f 6f6c 2061 6c73 6f20 6765 6e65 7261 tool also genera\n-000f81c0: 7465 7320 6120 5753 444c 2061 6e64 206f tes a WSDL and o\n-000f81d0: 6e65 206f 7220 6d6f 7265 2058 5344 2066 ne or more XSD f\n-000f81e0: 696c 6573 2c20 6f6e 6520 666f 7220 6561 iles, one for ea\n-000f81f0: 6368 2058 4d4c 206e 616d 6573 7061 6365 ch XML namespace\n-000f8200: 2e3c 2f70 3e0a 3c70 3e57 6865 6e20 7061 .\n-000f8530: 5f51 4e61 6d65 3c2f 636f 6465 3e20 7479 _QName
ty\n-000f8540: 7065 206f 7220 6120 514e 616d 6520 6465 pe or a QName de\n-000f8550: 636c 6172 6564 2077 6974 6820 3c63 6f64 clared with "\n-000f8b40: 6874 7470 3a2f 2f74 656d 7075 7269 2e6f http://tempuri.o\n-000f8b50: 7267 2f62 2e78 7364 2671 756f 743b 3c2f rg/b.xsd"\n-000f8b60: 7370 616e 3e20 7d2c 203c 2f64 6976 3e0a span> }, xmlns\n-000f8e50: 3d3c 7370 616e 2063 6c61 7373 3d22 7374 =&qu\n-000f8e70: 6f74 3b68 7474 703a 2f2f 7465 6d70 7572 ot;http://tempur\n-000f8e80: 692e 6f72 672f 622e 7873 6426 7175 6f74 i.org/b.xsd"\n-000f8e90: 3b3c 2f73 7061 6e3e 2667 743b 2e2e 2e26 ;>...&\n-000f8ea0: 6c74 3b2f 3c73 7061 6e20 636c 6173 733d lt;/el\n-000f8ec0: 743c 2f73 7061 6e3e 2667 743b 3c2f 6469 t>.// use the f\n-000f96d0: 6972 7374 206e 616d 6573 7061 6365 2074 irst namespace t\n-000f96e0: 6162 6c65 3c2f 7370 616e 3e3c 2f64 6976 ablesoap_serve\n-000f99d0: 3c2f 613e 3c2f 636f 6465 3e2e 2043 6861
. Cha\n-000f99e0: 6e67 696e 6720 7468 6520 6e61 6d65 7370 nging the namesp\n-000f99f0: 6163 6573 2074 6162 6c65 2069 6e20 7365 aces table in se\n-000f9a00: 7276 6963 6520 6f70 6572 6174 696f 6e73 rvice operations\n-000f9a10: 2068 6173 206e 6f20 6566 6665 6374 2e3c has no effect.<\n-000f9a20: 2f70 3e0a 3c70 3e54 6865 2058 4d4c 206d /p>.xmlsn\n-000f9a70: 3c2f 636f 6465 3e3c 2f65 6d3e 206e 616d
nam\n-000f9a80: 6573 7061 6365 2062 696e 6469 6e67 7320 espace bindings \n-000f9a90: 696e 2074 6865 2072 6f6f 7420 656c 656d in the root elem\n-000f9aa0: 656e 742c 2077 6869 6368 2069 7320 6765 ent, which is ge\n-000f9ab0: 6e65 7261 6c6c 7920 6d6f 7265 2065 6666 nerally more eff\n-000f9ac0: 6963 6965 6e74 2066 6f72 206c 6172 6765 icient for large\n-000f9ad0: 7220 584d 4c20 646f 6375 6d65 6e74 7320 r XML documents \n-000f9ae0: 696e 2077 6869 6368 206f 7468 6572 7769 in which otherwi\n-000f9af0: 7365 2074 6865 203c 656d 3e3c 636f 6465 se the xmlsn
namespace bin\n-000f9b20: 6469 6e67 7320 7769 6c6c 2062 6520 7370 dings will be sp\n-000f9b30: 7269 6e6b 6c65 6420 7468 726f 7567 686f rinkled througho\n-000f9b40: 7574 2e20 4279 2063 6f6e 7472 6173 742c ut. By contrast,\n-000f9b50: 2063 616e 6f6e 6963 616c 2058 4d4c 2072 canonical XML r\n-000f9b60: 6571 7569 7265 7320 3c65 6d3e 3c63 6f64 equires #\n-000f9bd0: 534f 4150 5f58 4d4c 5f43 414e 4f4e 4943 SOAP_XML_CANONIC\n-000f9be0: 414c 3c2f 636f 6465 3e20 636f 6e74 6578 AL
contex\n-000f9bf0: 7420 666c 6167 2070 726f 6475 6365 7320 t flag produces \n-000f9c00: 4331 344e 2065 7863 6c75 7369 7665 2058 C14N exclusive X\n-000f9c10: 4d4c 206d 6573 7361 6765 7320 616e 6420 ML messages and \n-000f9c20: 646f 6375 6d65 6e74 732c 2077 6869 6368 documents, which\n-000f9c30: 2065 6c69 6d69 6e61 7465 7320 756e 7573 eliminates unus\n-000f9c40: 6564 203c 656d 3e3c 636f 6465 3e78 6d6c ed xml\n-000f9c50: 736e 3c2f 636f 6465 3e3c 2f65 6d3e 206e sn
n\n-000f9c60: 616d 6573 7061 6365 2062 696e 6469 6e67 amespace binding\n-000f9c70: 7320 6672 6f6d 2058 4d4c 2e20 556e 666f s from XML. Unfo\n-000f9c80: 7274 756e 6174 656c 792c 2074 6865 2063 rtunately, the c\n-000f9c90: 7572 7265 6e74 2043 3134 4e20 7374 616e urrent C14N stan\n-000f9ca0: 6461 7264 2069 7320 6275 6767 7920 7769 dard is buggy wi\n-000f9cb0: 7468 2072 6573 7065 6374 2074 6f20 5853 th respect to XS\n-000f9cc0: 4420 514e 616d 6520 636f 6e74 656e 742c D QName content,\n-000f9cd0: 2062 6563 6175 7365 2070 7265 6669 7865 because prefixe\n-000f9ce0: 7320 7573 6564 2069 6e20 514e 616d 6520 s used in QName \n-000f9cf0: 636f 6e74 656e 7420 6172 6520 6e6f 7420 content are not \n-000f9d00: 636f 6e73 6964 6572 6564 2075 7469 6c69 considered utili\n-000f9d10: 7a65 642e 2054 6865 2067 534f 4150 2065 zed. The gSOAP e\n-000f9d20: 6e67 696e 6520 636f 6e73 6964 6572 7320 ngine considers \n-000f9d30: 514e 616d 6520 636f 6e74 656e 7420 7072 QName content pr\n-000f9d40: 6566 6978 6573 2075 7469 6c69 7a65 6420 efixes utilized \n-000f9d50: 616e 6420 7468 6572 6566 6f72 6520 7072 and therefore pr\n-000f9d60: 6f64 7563 6573 2063 6f72 7265 6374 6564 oduces corrected\n-000f9d70: 2063 616e 6f6e 6963 616c 697a 6564 2058 canonicalized X\n-000f9d80: 4d4c 206f 7574 7075 7420 7468 6174 2070 ML output that p\n-000f9d90: 7265 7665 6e74 7320 7468 6520 6c6f 7373 revents the loss\n-000f9da0: 206f 6620 6e61 6d65 7370 6163 6520 696e of namespace in\n-000f9db0: 666f 726d 6174 696f 6e20 666f 7220 514e formation for QN\n-000f9dc0: 616d 6573 2e3c 2f70 3e0a 3c70 3ef0 9f94 ames..SOAP Head\n-000f9e30: 6572 2070 726f 6365 7373 696e 673c 2f68 er processing.
struct t__transaction\n-000fa1b0: 3c2f 6469 763e 0a3c 6469 7620 636c 6173 //gsoap ns s\n-000fa410: 6572 7669 6365 206d 6574 686f 642d 696e ervice method-in\n-000fa420: 7075 742d 6865 6164 6572 2d70 6172 743a put-header-part:\n-000fa430: 2077 6562 6d65 7468 6f64 2074 5f5f 7472 webmethod t__tr\n-000fa440: 616e 7361 6374 696f 6e3c 2f73 7061 6e3e ansaction\n-000fa450: 3c2f 6469 763e 0a3c 6469 7620 636c 6173 must\n-000fa4d0: 556e 6465 7273 7461 6e64 3c2f 636f 6465 Understand
qualifier spec\n-000fa4f0: 6966 6965 7320 7468 6174 2074 6865 2065 ifies that the e\n-000fa500: 6c65 6d65 6e74 206d 7573 7420 6265 2070 lement must be p\n-000fa510: 726f 6365 7373 6564 2062 7920 7468 6520 rocessed by the \n-000fa520: 534f 4150 2070 726f 6365 7373 6f72 2061 SOAP processor a\n-000fa530: 6e64 2063 616e 6e6f 7420 6265 2069 676e nd cannot be ign\n-000fa540: 6f72 6564 2069 6620 7468 6520 7072 6f63 ored if the proc\n-000fa550: 6573 736f 7220 6861 7320 6e6f 206c 6f67 essor has no log\n-000fa560: 6963 2069 6e20 706c 6163 6520 666f 7220 ic in place for \n-000fa570: 7468 6973 2053 4f41 5020 6865 6164 6572 this SOAP header\n-000fa580: 2c20 7768 6963 6820 6973 2064 6f6e 6520 , which is done \n-000fa590: 6279 2061 6464 696e 6720 6120 3c65 6d3e by adding a \n-000fa5a0: 3c63 6f64 653e 534f 4150 2d45 4e56 3a6d SOAP-ENV:m\n-000fa5b0: 7573 7455 6e64 6572 7374 616e 643d 2274 ustUnderstand=\"t\n-000fa5c0: 7275 6522 3c2f 636f 6465 3e3c 2f65 6d3e rue\"
\n-000fa5d0: 2061 7474 7269 6275 7465 2074 6f20 7468 attribute to th\n-000fa5e0: 6520 3c65 6d3e 3c63 6f64 653e 743a 7472 e t:tr\n-000fa5f0: 616e 7361 6374 696f 6e3c 2f63 6f64 653e ansaction
\n-000fa600: 3c2f 656d 3e20 656c 656d 656e 742e 2054 element. T\n-000fa610: 6865 2073 6f61 7063 7070 322d 6765 6e65 he soapcpp2-gene\n-000fa620: 7261 7465 6420 7365 7269 616c 697a 6572 rated serializer\n-000fa630: 7320 6f62 6579 2074 6869 7320 7361 6665 s obey this safe\n-000fa640: 7479 2070 7269 6e63 6970 6c65 2e3c 2f70 ty principle.t__tr\n-000fa6b0: 616e 7361 6374 696f 6e3c 2f63 6f64 653e ansaction
\n-000fa6c0: 2c20 6173 2063 616e 2062 6520 7365 656e , as can be seen\n-000fa6d0: 2069 6e20 7468 6520 6765 6e65 7261 7465 in the generate\n-000fa6e0: 6420 5753 444c 2062 696e 6469 6e67 3a3c d WSDL binding:<\n-000fa6f0: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>./\n-000fb0c0: 2f67 736f 6170 206e 7320 7365 7276 6963 /gsoap ns servic\n-000fb0d0: 6520 6d65 7468 6f64 2d6f 7574 7075 742d e method-output-\n-000fb0e0: 6865 6164 6572 2d70 6172 743a 3c2f 636f header-part:
t__tr\n-000fb170: 616e 7361 6374 696f 6e3c 2f63 6f64 653e ansaction
\n-000fb180: 206d 656d 6265 723a 3c2f 703e 0a3c 6469 member://.//gsoap ns s\n-000fcb20: 6572 7669 6365 206d 6574 686f 642d 6865 ervice method-he\n-000fcb30: 6164 6572 2d70 6172 743a 206c 6f67 696e ader-part: login\n-000fcb40: 2068 5f5f 7472 616e 7361 6374 696f 6e20 h__transaction \n-000fcb50: 3c2f 7370 616e 3e3c 2f64 6976 3e0a 3c64 n\n-000fcc50: 735f 5f73 6561 7263 683c 2f63 6f64 653e s__search
\n-000fcc60: 2075 7365 7320 6f6e 6c79 2074 6865 2066 uses only the f\n-000fcc70: 6972 7374 2068 6561 6465 7220 7061 7274 irst header part\n-000fcc80: 2c20 7468 656e 2074 6869 7320 6973 2064 , then this is d\n-000fcc90: 6563 6c61 7265 6420 6173 3a3c 2f70 3e0a eclared as:.SOAP\n-000fd520: 2046 6175 6c74 2070 726f 6365 7373 696e Fault processin\n-000fd530: 673c 2f68 313e 0a3c 703e 4120 6275 696c g
.struct \n-000fda00: 534f 4150 5f45 4e56 5f5f 4465 7461 696c SOAP_ENV__Detail\n-000fda10: 3c2f 613e 202a 3c61 2063 6c61 7373 3d22 *detail;\n-000fda80: 203c 2f64 6976 3e0a 3c64 6976 2063 6c61 struct SO\n-000fdb00: 4150 5f45 4e56 5f5f 436f 6465 3c2f 613e AP_ENV__Code\n-000fdb10: 202a 3c61 2063 6c61 7373 3d22 636f 6465 *SOAP_ENV__Code<\n-000fdb80: 2f61 3e3b 203c 7370 616e 2063 6c61 7373 /a>; // mu\n-000fdba0: 7374 2062 6520 6120 534f 4150 5f45 4e56 st be a SOAP_ENV\n-000fdbb0: 5f5f 436f 6465 2073 7472 7563 7420 6465 __Code struct de\n-000fdbc0: 6669 6e65 6420 6265 6c6f 7720 3c2f 7370 fined below S\n-00100080: 4f41 505f 454e 565f 5f46 6175 6c74 3c2f OAP_ENV__Fault\n-00100090: 613e 3c2f 636f 6465 3e20 6172 6520 534f a>
are SO\n-001000a0: 4150 2031 2e31 2073 7065 6369 6669 632e AP 1.1 specific.\n-001000b0: 2054 6865 206c 6173 7420 6669 7665 206d The last five m\n-001000c0: 656d 6265 7273 2061 7265 2053 4f41 5020 embers are SOAP \n-001000d0: 312e 3220 7370 6563 6966 6963 2e20 596f 1.2 specific. Yo\n-001000e0: 7520 6361 6e20 7265 6465 6669 6e65 2074 u can redefine t\n-001000f0: 6865 7365 2073 7472 7563 7475 7265 7320 hese structures \n-00100100: 696e 2074 6865 2069 6e74 6572 6661 6365 in the interface\n-00100110: 2068 6561 6465 7220 6669 6c65 2066 6f72 header file for\n-00100120: 2073 6f61 7063 7070 322e 2046 6f72 2065 soapcpp2. For e\n-00100130: 7861 6d70 6c65 2c20 796f 7520 6361 6e20 xample, you can \n-00100140: 7573 6520 6120 3c63 6f64 653e 636c 6173 use a clas\n-00100150: 733c 2f63 6f64 653e 2066 6f72 2074 6865 s
for the\n-00100160: 203c 636f 6465 3e3c 6120 636c 6173 733d \n-001001c0: 534f 4150 5f45 4e56 5f5f 4661 756c 743c SOAP_ENV__Fault<\n-001001d0: 2f61 3e3c 2f63 6f64 653e 2061 6e64 2061 /a>
and a\n-001001e0: 6464 206d 6574 686f 6473 2066 6f72 2063 dd methods for c\n-001001f0: 6f6e 7665 6e69 656e 6365 2e3c 2f70 3e0a onvenience.SO\n-00100270: 4150 5f45 4e56 5f5f 4465 7461 696c 3c2f AP_ENV__Detail\n-00100280: 613e 3c2f 636f 6465 3e20 7374 7275 6374 a>
struct\n-00100290: 7572 6520 6361 6e20 6265 2063 6861 6e67 ure can be chang\n-001002a0: 6564 2074 6f20 7468 6520 6e65 6564 7320 ed to the needs \n-001002b0: 6f66 2057 6562 2073 6572 7669 6365 2061 of Web service a\n-001002c0: 7070 6c69 6361 7469 6f6e 2074 6f20 636f pplication to co\n-001002d0: 6d6d 756e 6963 6174 6520 7370 6563 6966 mmunicate specif\n-001002e0: 6963 2066 6175 6c74 2064 6174 6120 7374 ic fault data st\n-001002f0: 7275 6374 7572 6573 2c20 6275 7420 7468 ructures, but th\n-00100300: 6973 2069 7320 6765 6e65 7261 6c6c 7920 is is generally \n-00100310: 6e6f 7420 6e65 6365 7373 6172 7920 6265 not necessary be\n-00100320: 6361 7573 6520 7468 6520 6170 706c 6963 cause the applic\n-00100330: 6174 696f 6e2d 7370 6563 6966 6963 2053 ation-specific S\n-00100340: 4f41 5020 4661 756c 7420 6465 7461 696c OAP Fault detail\n-00100350: 7320 6361 6e20 6265 2073 6572 6961 6c69 s can be seriali\n-00100360: 7a65 6420 7669 6120 7468 6520 3c63 6f64 zed via the fault<\n-00100390: 2f63 6f64 653e 206d 656d 6265 7273 2069 /code> members i\n-001003a0: 6e20 7468 6520 3c63 6f64 653e 3c61 2063 n the
\n-001004c0: 2061 6e64 203c 636f 6465 3e66 6175 6c74 and SOA\n-00100410: 505f 454e 565f 5f44 6574 6169 6c3c 2f61 P_ENV__Detail
member,\n-00100430: 2073 6565 2053 6563 7469 6f6e 203c 6120 see Section Void pointer s\n-00100470: 6572 6961 6c69 7a61 7469 6f6e 3c2f 613e erialization\n-00100480: 206f 6e20 7468 6520 7365 7269 616c 697a on the serializ\n-00100490: 6174 696f 6e20 6f66 2064 6174 6120 7265 ation of data re\n-001004a0: 6665 7272 6564 2074 6f20 6279 203c 636f ferred to by fault\n-001004d0: 3c2f 636f 6465 3e2e 3c2f 703e 0a3c 703e
.soap_sen\n-001005d0: 6465 725f 6661 756c 743c 2f61 3e3c 2f63 der_fault or
points to this\n-001007c0: 2053 4f41 5020 4661 756c 742e 2054 6865 SOAP Fault. The\n-001007d0: 2053 4f41 5020 4661 756c 7420 6973 2073 SOAP Fault is s\n-001007e0: 656e 7420 746f 2074 6865 2063 6c69 656e ent to the clien\n-001007f0: 742e 2054 6865 2063 6c69 656e 7420 706f t. The client po\n-00100800: 7075 6c61 7465 7320 6120 534f 4150 2046 pulates a SOAP F\n-00100810: 6175 6c74 2073 7472 7563 7475 7265 2074 ault structure t\n-00100820: 6861 7420 636f 6e74 6169 6e73 2074 6865 hat contains the\n-00100830: 2053 4f41 5020 4661 756c 7420 6d65 7373 SOAP Fault mess\n-00100840: 6167 6520 7769 7468 2064 6574 6169 6c73 age with details\n-00100850: 2e3c 2f70 3e0a 3c70 3e53 6572 7665 722d .so\n-00100690: 6170 5f72 6563 6569 7665 725f 6661 756c ap_receiver_faul\n-001006a0: 743c 2f61 3e3c 2f63 6f64 653e 2c20 7468 t
, th\n-001006b0: 656e 2074 6865 2053 4f41 5020 4661 756c en the SOAP Faul\n-001006c0: 7420 7374 7275 6374 7572 6520 6973 2070 t structure is p\n-001006d0: 6f70 756c 6174 6564 2061 6e64 203c 636f opulated and soap_recei\n-001009f0: 7665 725f 6661 756c 743c 2f61 3e3c 2f63 ver_fault. The
\n-00100a10: 3c61 2063 6c61 7373 3d22 656c 2220 6872 so\n-00100ab0: 6170 5f73 656e 6465 725f 6661 756c 743c ap_sender_fault<\n-00100ac0: 2f61 3e3c 2f63 6f64 653e 2063 616c 6c20 /a>
call \n-00100ad0: 7368 6f75 6c64 2062 6520 7573 6564 2074 should be used t\n-00100ae0: 6f20 696e 666f 726d 2074 6861 7420 7468 o inform that th\n-00100af0: 6520 7365 6e64 6572 2069 7320 6174 2066 e sender is at f\n-00100b00: 6175 6c74 2061 6e64 2074 6865 2073 656e ault and the sen\n-00100b10: 6465 7220 2863 6c69 656e 7429 2073 686f der (client) sho\n-00100b20: 756c 6420 6e6f 7420 7265 2d73 656e 6420 uld not re-send \n-00100b30: 7468 6520 7265 7175 6573 742e 2054 6865 the request. The\n-00100b40: 203c 636f 6465 3e3c 6120 636c 6173 733d soap_rece\n-00100bf0: 6976 6572 5f66 6175 6c74 3c2f 613e 3c2f iver_fault\n-00100c00: 636f 6465 3e20 6361 6c6c 2073 686f 756c code> call shoul\n-00100c10: 6420 6265 2075 7365 6420 746f 2069 6e64 d be used to ind\n-00100c20: 6963 6174 6520 6120 7465 6d70 6f72 6172 icate a temporar\n-00100c30: 7920 7365 7276 6572 2d73 6964 6520 7072 y server-side pr\n-00100c40: 6f62 6c65 6d2c 2073 6f20 6120 7365 6e64 oblem, so a send\n-00100c50: 6572 2028 636c 6965 6e74 2920 6361 6e20 er (client) can \n-00100c60: 7265 2d73 656e 6420 7468 6520 7265 7175 re-send the requ\n-00100c70: 6573 7420 6c61 7465 722e 2046 6f72 2065 est later. For e\n-00100c80: 7861 6d70 6c65 3a3c 2f70 3e0a 3c64 6976 xample:
"\n-00101190: 5265 736f 7572 6365 2074 656d 706f 7261 Resource tempora\n-001011a0: 7269 6c79 2075 6e61 7661 696c 6162 6c65 rily unavailable\n-001011b0: 2671 756f 743b 3c2f 7370 616e 3e2c 203c ", <\n-001011c0: 7370 616e 2063 6c61 7373 3d22 7374 7269 span class=\"stri\n-001011d0: 6e67 6c69 7465 7261 6c22 3e26 7175 6f74 ngliteral\">"\n-001011e0: 3b26 6c74 3b65 7272 6f72 636f 6465 2078 ;<errorcode x\n-001011f0: 6d6c 6e73 3d26 2333 393b 6874 7470 3a2f mlns='http:/\n-00101200: 2f74 656d 7075 7269 2e6f 7267 2623 3339 /tempuri.org'\n-00101210: 3b26 6774 3b31 3233 266c 743b 2f65 7272 ;>123</err\n-00101220: 6f72 636f 6465 2667 743b 266c 743b 6572 orcode><er\n-00101230: 726f 7269 6e66 6f20 786d 6c6e 733d 2623 rorinfo xmlns=\n-00101240: 3339 3b68 7474 703a 2f2f 7465 6d70 7572 39;http://tempur\n-00101250: 692e 6f72 6726 2333 393b 2667 743b 6162 i.org'>ab\n-00101260: 6326 6c74 3b2f 6572 726f 7269 6e66 6f26 c</errorinfo&\n-00101270: 6774 3b26 7175 6f74 3b3c 2f73 7061 6e3e gt;"\n-00101280: 293b 3c2f 6469 763e 0a3c 2f64 6976 3e3c );#SOAP_FA\n-00101480: 554c 543c 2f63 6f64 653e 2e20 466f 7220 ULT
. For \n-00101490: 6578 616d 706c 653a 3c2f 703e 0a3c 6469 example:profile token\n-00103830: 7370 616e 3e20 3c73 7061 6e20 636c 6173 span> Prof\n-00103850: 696c 6554 6f6b 656e 3c2f 7370 616e 3e20 ileToken \n-00103860: 3c73 7061 6e20 636c 6173 733d 226b 6579 does not exist.<\n-001038c0: 2f73 7061 6e3e 266c 743b 2f3c 7370 616e /span></SOAP-ENV:Te\n-001038f0: 7874 3c2f 7370 616e 3e26 6774 3b3c 2f64 xt>.\n-00103a70: 6d75 7461 626c 653c 2f63 6f64 653e 2c20 mutable
, \n-00103a80: 7768 6963 6820 6d65 616e 7320 7468 6174 which means that\n-00103a90: 2072 652d 6465 636c 6172 6174 696f 6e73 re-declarations\n-00103aa0: 206f 6620 7468 6520 7374 7275 6374 7572 of the structur\n-00103ab0: 6573 2061 7265 2070 6572 6d69 7474 6564 es are permitted\n-00103ac0: 2061 6e64 2061 6464 6974 696f 6e61 6c20 and additional \n-00103ad0: 6d65 6d62 6572 7320 6172 6520 636f 6c6c members are coll\n-00103ae0: 6563 7465 6420 696e 746f 206f 6e65 2066 ected into one f\n-00103af0: 696e 616c 2073 7472 7563 7475 7265 2062 inal structure b\n-00103b00: 7920 7468 6520 736f 6170 6370 7032 2074 y the soapcpp2 t\n-00103b10: 6f6f 6c2e 3c2f 703e 0a3c 703e 466f 7220 ool.//gsoap ns s\n-00103f90: 6572 7669 6365 206d 6574 686f 642d 6661 ervice method-fa\n-00103fa0: 756c 743a 206c 6f67 696e 2066 5f5f 696e ult: login f__in\n-00103fb0: 7661 6c69 6420 3c2f 7370 616e 3e3c 2f64 valid ..MIME at\n-00104170: 7461 6368 6d65 6e74 733c 2f68 313e 0a3c tachments
.<\n-00104180: 703e 5468 6520 6753 4f41 5020 746f 6f6c p>The gSOAP tool\n-00104190: 6b69 7420 7375 7070 6f72 7473 204d 494d kit supports MIM\n-001041a0: 4520 6174 7461 6368 6d65 6e74 7320 6173 E attachments as\n-001041b0: 2070 6572 2053 4f41 5020 7769 7468 2041 per SOAP with A\n-001041c0: 7474 6163 686d 656e 7473 2028 5377 4129 ttachments (SwA)\n-001041d0: 2073 7065 6369 6669 6361 7469 6f6e 203c specification <\n-001041e0: 6120 6872 6566 3d22 6874 7470 3a2f 2f77 a href=\"http://w\n-001041f0: 7777 2e77 332e 6f72 672f 5452 2f53 4f41 ww.w3.org/TR/SOA\n-00104200: 502d 6174 7461 6368 6d65 6e74 7322 3e68 P-attachments\">h\n-00104210: 7474 703a 2f2f 7777 772e 7733 2e6f 7267 ttp://www.w3.org\n-00104220: 2f54 522f 534f 4150 2d61 7474 6163 686d /TR/SOAP-attachm\n-00104230: 656e 7473 3c2f 613e 2e3c 2f70 3e0a 3c70 ents..soa\n-00104700: 705f 7365 745f 6d69 6d65 5f61 7474 6163 p_set_mime_attac\n-00104710: 686d 656e 743c 2f61 3e3c 2f63 6f64 653e hment
\n-00104720: 2e20 5468 6520 6669 7273 7420 6675 6e63 . The first func\n-00104730: 7469 6f6e 2069 7320 666f 7220 696e 6974 tion is for init\n-00104740: 6961 6c69 7a61 7469 6f6e 2070 7572 706f ialization purpo\n-00104750: 7365 7320 616e 6420 7468 6520 6c61 7474 ses and the latt\n-00104760: 6572 2066 756e 6374 696f 6e20 6973 2075 er function is u\n-00104770: 7365 6420 746f 2073 7065 6369 6679 206d sed to specify m\n-00104780: 6574 6120 6461 7461 2061 6e64 2063 6f6e eta data and con\n-00104790: 7465 6e74 2064 6174 6120 666f 7220 6561 tent data for ea\n-001047a0: 6368 2061 7474 6163 686d 656e 742e 3c2f ch attachment.\n-001047b0: 703e 0a3c 703e 5365 6520 616c 736f 2041 p>.vo\n-00104960: 6964 203c 6120 636c 6173 733d 2265 6c22 id soap_set_mim\n-001049e0: 6528 7374 7275 6374 2073 6f61 7020 2a73 e(struct soap *s\n-001049f0: 6f61 702c 2063 6f6e 7374 2063 6861 7220 oap, const char \n-00104a00: 2a62 6f75 6e64 6172 792c 2063 6f6e 7374 *boundary, const\n-00104a10: 2063 6861 7220 2a73 7461 7274 293c 2f61 char *start)
This fu\n-00104a30: 6e63 7469 6f6e 2065 6e61 626c 6573 2073 nction enables s\n-00104a40: 656e 6469 6e67 204d 494d 4520 6174 7461 ending MIME atta\n-00104a50: 6368 6d65 6e74 732e 2054 6869 7320 6675 chments. This fu\n-00104a60: 6e63 7469 6f6e 2069 7320 6765 6e65 7261 nction is genera\n-00104a70: 6c6c 7920 6e6f 7420 7265 7175 6972 6564 lly not required\n-00104a80: 2077 6865 6e20 7468 6520 636f 6e74 6578 when the contex\n-00104a90: 7420 6973 2069 6e69 7469 616c 697a 6564 t is initialized\n-00104aa0: 2077 6974 6820 3c63 6f64 653e 2353 4f41 with #SOA\n-00104ab0: 505f 454e 435f 4d49 4d45 3c2f 636f 6465 P_ENC_MIME
, because MIME \n-00104ad0: 6174 7461 6368 6d65 6e74 7320 6172 6520 attachments are \n-00104ae0: 6175 746f 6d61 7469 6361 6c6c 7920 6465 automatically de\n-00104af0: 7465 6374 6564 2061 7320 3c63 6f64 653e tected as \n-00104b00: 3c61 2063 6c61 7373 3d22 656c 2220 6872 xs\n-00104b70: 645f 5f62 6173 6536 3442 696e 6172 793c d__base64Binary<\n-00104b80: 2f61 3e3c 2f63 6f64 653e 2061 6e64 203c /a>
and <\n-00104b90: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>_xop_\n-00104c00: 5f49 6e63 6c75 6465 3c2f 613e 3c2f 636f _Include structures i\n-00104c20: 6e20 7468 6520 6461 7461 2074 6f20 7365 n the data to se\n-00104c30: 7269 616c 697a 6520 6173 2061 6e20 584d rialize as an XM\n-00104c40: 4c20 6d65 7373 6167 6520 7769 7468 2074 L message with t\n-00104c50: 6865 2061 7474 6163 686d 656e 7473 2061 he attachments a\n-00104c60: 7574 6f6d 6174 6963 616c 6c79 2061 6464 utomatically add\n-00104c70: 6564 206f 7220 4d49 4d45 2061 7474 6163 ed or MIME attac\n-00104c80: 686d 656e 7473 2063 616e 2062 6520 6578 hments can be ex\n-00104c90: 706c 6963 6974 6c79 2061 6464 6564 2077 plicitly added w\n-00104ca0: 6974 6820 3c63 6f64 653e 3c61 2063 6c61 ith soap_set_mime_a\n-00104d40: 7474 6163 686d 656e 743c 2f61 3e3c 2f63 ttachment. Parameter \n-00104d60: 3c63 6f64 653e 626f 756e 6461 7279 3c2f
boundary\n-00104d70: 636f 6465 3e20 7370 6563 6966 6965 7320 code> specifies \n-00104d80: 6120 4d49 4d45 2062 6f75 6e64 6172 7920 a MIME boundary \n-00104d90: 7374 7269 6e67 206f 7220 4e55 4c4c 2074 string or NULL t\n-00104da0: 6f20 6861 7665 2074 6865 2065 6e67 696e o have the engin\n-00104db0: 6520 6765 6e65 7261 7465 2061 204d 494d e generate a MIM\n-00104dc0: 4520 626f 756e 6461 7279 2073 7472 696e E boundary strin\n-00104dd0: 672e 2050 6172 616d 6574 6572 203c 636f g. Parameter
\n-00104df0: 7370 6563 6966 6965 7320 7468 6520 7374 specifies the st\n-00104e00: 6172 7420 636f 6e74 656e 7420 4944 2066 art content ID f\n-00104e10: 6f72 2074 6865 2066 6972 7374 204d 494d or the first MIM\n-00104e20: 4520 626f 6479 2063 6f6e 7461 696e 696e E body containin\n-00104e30: 6720 7468 6520 534f 4150 206f 7220 584d g the SOAP or XM\n-00104e40: 4c20 6d65 7373 6167 652e 2057 6865 6e20 L message. When \n-00104e50: 4e55 4c4c 2c20 7468 6520 7374 6172 7420 NULL, the start \n-00104e60: 4944 206f 6620 7468 6520 534f 4150 206d ID of the SOAP m\n-00104e70: 6573 7361 6765 2069 7320 3c65 6d3e 3c63 essage is int so\n-00104ec0: 6170 5f73 6574 5f6d 696d 655f 6174 7461 ap_set_mime_atta\n-00104ed0: 6368 6d65 6e74 2873 7472 7563 7420 736f chment(struct so\n-00104ee0: 6170 202a 736f 6170 2c20 6368 6172 202a ap *soap, char *\n-00104ef0: 7074 722c 2073 697a 655f 7420 7369 7a65 ptr, size_t size\n-00104f00: 2c20 656e 756d 2073 6f61 705f 6d69 6d65 , enum soap_mime\n-00104f10: 5f65 6e63 6f64 696e 6720 656e 636f 6469 _encoding encodi\n-00104f20: 6e67 2c20 636f 6e73 7420 6368 6172 202a ng, const char *\n-00104f30: 7479 7065 2c20 636f 6e73 7420 6368 6172 type, const char\n-00104f40: 202a 6964 2c20 636f 6e73 7420 6368 6172 *id, const char\n-00104f50: 202a 6c6f 6361 7469 6f6e 2c20 636f 6e73 *location, cons\n-00104f60: 7420 6368 6172 202a 6465 7363 7269 7074 t char *descript\n-00104f70: 696f 6e29 3c2f 636f 6465 3e20 5468 6973 ion)
This\n-00104f80: 2066 756e 6374 696f 6e20 6164 6473 2061 function adds a\n-00104f90: 204d 494d 4520 6174 7461 6368 6d65 6e74 MIME attachment\n-00104fa0: 2074 6f20 6120 534f 4150 2f58 4d4c 206d to a SOAP/XML m\n-00104fb0: 6573 7361 6765 2074 6f20 7365 6e64 2e20 essage to send. \n-00104fc0: 5468 6520 7370 6563 6966 6965 6420 3c63 The specified size
en\n-00105030: 636f 6469 6e67 3c2f 636f 6465 3e20 7061 coding
pa\n-00105040: 7261 6d65 7465 7220 6973 2061 203c 636f rameter is a id\n-00105250: 3c2f 636f 6465 3e20 7061 7261 6d65 7465
paramete\n-00105260: 7220 756e 6971 7565 6c79 2069 6465 6e74 r uniquely ident\n-00105270: 6966 6965 7320 7468 6520 6174 7461 6368 ifies the attach\n-00105280: 6d65 6e74 2069 6e20 7468 6520 6d65 7373 ment in the mess\n-00105290: 6167 652c 2077 6869 6368 2063 616e 2062 age, which can b\n-001052a0: 6520 6f6d 6974 7465 6420 6279 2073 7065 e omitted by spe\n-001052b0: 6369 6679 696e 6720 4e55 4c4c 2e20 5468 cifying NULL. Th\n-001052c0: 6520 3c63 6f64 653e 6c6f 6361 7469 6f6e e location\n-001052d0: 3c2f 636f 6465 3e20 7061 7261 6d65 7465
paramete\n-001052e0: 7220 7370 6563 6966 6965 7320 6120 6c6f r specifies a lo\n-001052f0: 6361 7469 6f6e 2073 7472 696e 6720 6f72 cation string or\n-00105300: 204e 554c 4c2e 2054 6865 203c 636f 6465 NULL. The description
#SOAP_O\n-00105370: 4b3c 2f63 6f64 653e 206f 7220 6120 3c63 K
or a void so\n-001054e0: 6170 5f63 6c72 5f6d 696d 6528 7374 7275 ap_clr_mime(stru\n-001054f0: 6374 2073 6f61 7020 2a73 6f61 7029 3c2f ct soap *soap)\n-00105500: 613e 3c2f 636f 6465 3e20 5468 6973 2066 a>
This f\n-00105510: 756e 6374 696f 6e20 6469 7361 626c 6573 unction disables\n-00105520: 204d 494d 4520 6174 7461 6368 6d65 6e74 MIME attachment\n-00105530: 7320 7375 6368 2061 7320 6166 7465 7220 s such as after \n-00105540: 7365 6e64 696e 6720 6120 6d75 6c74 6970 sending a multip\n-00105550: 6172 742d 7265 6c61 7465 6420 6d65 7373 art-related mess\n-00105560: 6167 6520 7769 7468 2061 7474 6163 686d age with attachm\n-00105570: 656e 7473 2074 6f20 7377 6974 6368 2062 ents to switch b\n-00105580: 6163 6b20 746f 206e 6f6e 2d6d 756c 7469 ack to non-multi\n-00105590: 7061 7274 2d72 656c 6174 6564 206d 6573 part-related mes\n-001055a0: 7361 6769 6e67 2c20 756e 6c65 7373 2074 saging, unless t\n-001055b0: 6865 2064 6174 6120 746f 2073 6572 6961 he data to seria\n-001055c0: 6c69 7a65 2061 7320 6120 6d65 7373 6167 lize as a messag\n-001055d0: 6520 636f 6e74 6169 6e73 2061 7474 6163 e contains attac\n-001055e0: 686d 656e 7473 2073 7563 6820 6173 203c hments such as <\n-001055f0: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>xsd__base64Bi\n-00105670: 6e61 7279 3c2f 613e 3c2f 636f 6465 3e20 nary \n-00105680: 666f 7220 4d49 4d45 2061 7474 6163 686d for MIME attachm\n-00105690: 656e 7473 2061 6e64 203c 636f 6465 3e3c ents and <\n-001056a0: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-001056b0: 663d 2273 7472 7563 745f 5f78 6f70 5f5f f=\"struct__xop__\n-001056c0: 5f5f 5f69 6e63 6c75 6465 2e68 746d 6c22 ___include.html\"\n-001056d0: 2074 6974 6c65 3d22 584f 5020 696e 636c title=\"XOP incl\n-001056e0: 7564 6520 7374 7275 6374 7572 6520 7769 ude structure wi\n-001056f0: 7468 2061 7474 6163 686d 656e 7420 6461 th attachment da\n-00105700: 7461 2e22 3e5f 786f 705f 5f49 6e63 6c75 ta.\">_xop__Inclu\n-00105710: 6465 3c2f 613e 3c2f 636f 6465 3e20 666f de
fo\n-00105720: 7220 4d54 4f4d 2061 7474 6163 686d 656e r MTOM attachmen\n-00105730: 7473 2e3c 2f6c 693e 0a3c 2f75 6c3e 0a3c ts.soa\n-001057e0: 705f 7365 745f 6d69 6d65 3c2f 613e 3c2f p_set_mime\n-001057f0: 636f 6465 3e2c 2079 6f75 2068 6176 6520 code>, you have \n-00105800: 746f 206d 616b 6520 7375 7265 2074 6865 to make sure the\n-00105810: 2062 6f75 6e64 6172 7920 6361 6e6e 6f74 boundary cannot\n-00105820: 206d 6174 6368 2061 6e79 2070 6172 7473 match any parts\n-00105830: 206f 6620 7468 6520 6d65 7373 6167 6520 of the message \n-00105840: 616e 6420 6174 7461 6368 6d65 6e74 7320 and attachments \n-00105850: 7468 6174 2079 6f75 2061 7265 2073 656e that you are sen\n-00105860: 6469 6e67 2c20 6265 6361 7573 6520 7468 ding, because th\n-00105870: 6520 626f 756e 6461 7279 2064 656c 696e e boundary delin\n-00105880: 6561 7465 7320 7468 6520 6174 7461 6368 eates the attach\n-00105890: 6d65 6e74 732e 3c2f 703e 0a3c 703e 5468 ments.
soap_\n-00105a60: 656e 643c 2f61 3e3c 2f63 6f64 653e 206f end
o\n-00105a70: 7220 7768 656e 2061 206d 6573 7361 6765 r when a message\n-00105a80: 2069 7320 7265 6365 6976 6564 2e20 5468 is received. Th\n-00105a90: 6572 6566 6f72 652c 2063 616c 6c20 3c63 erefore, call href\n-00105c60: 3c2f 636f 6465 3e3c 2f65 6d3e 2061 7474
att\n-00105c70: 7269 6275 7465 732e 2054 6865 203c 636f ributes. The href
claim\n-00106f60: 5f5f 666f 726d 3c2f 636f 6465 3e20 7374 __form
st\n-00106f70: 7275 6374 2069 7320 6465 636c 6172 6564 ruct is declared\n-00106f80: 2069 6e20 7468 6520 696e 7465 7266 6163 in the interfac\n-00106f90: 6520 6865 6164 6572 2066 696c 6520 6173 e header file as\n-00106fa0: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 :struct claim__form \n-00107000: 6469 763e 0a3c 6469 7620 636c 6173 733d div>.href
or other \n-00107130: 6174 7472 6962 7574 6573 2066 6f72 2072 attributes for r\n-00107140: 6566 6572 7269 6e67 2074 6f20 7468 6520 eferring to the \n-00107150: 4d49 4d45 2061 7474 6163 686d 656e 7473 MIME attachments\n-00107160: 2069 7320 6f70 7469 6f6e 616c 2061 6363 is optional acc\n-00107170: 6f72 6469 6e67 2074 6f20 7468 6520 5377 ording to the Sw\n-00107180: 4120 7374 616e 6461 7264 2e20 4d54 4f4d A standard. MTOM\n-00107190: 206f 6e20 7468 6520 6f74 6865 7220 6861 on the other ha\n-001071a0: 6e64 206d 616e 6461 7465 7320 7468 6520 nd mandates the \n-001071b0: 7573 6520 6f66 203c 656d 3e3c 636f 6465 use of href
with XOP eleme\n-001071e0: 6e74 732e 3c2f 703e 0a3c 703e 546f 2061 nts.<\n-0010a2a0: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0010a2b0: 663d 2267 726f 7570 5f5f 6772 6f75 705f f=\"group__group_\n-0010a2c0: 5f63 6f6e 7465 7874 2e68 746d 6c23 6761 _context.html#ga\n-0010a2d0: 3831 6130 3039 6165 3165 6138 3235 6130 81a009ae1ea825a0\n-0010a2e0: 3565 3532 3431 6532 6237 6138 6563 6539 5e5241e2b7a8ece9\n-0010a2f0: 2220 7469 746c 653d 2244 656c 6574 6520 \" title=\"Delete \n-0010a300: 616c 6c20 6461 7461 2066 726f 6d20 6865 all data from he\n-0010a310: 6170 206d 656d 6f72 7920 6d61 6e61 6765 ap memory manage\n-0010a320: 6420 6279 2074 6865 2073 7065 6369 6669 d by the specifi\n-0010a330: 6564 2073 6f61 7020 636f 6e74 6578 7420 ed soap context \n-0010a340: 616e 6420 7265 6c65 6173 6520 7468 6520 and release the \n-0010a350: 6672 6565 6420 6d65 6d6f 7279 2062 2e2e freed memory b..\n-0010a360: 2e22 3e73 6f61 705f 656e 643c 2f61 3e3c .\">soap_end<\n-0010a370: 2f63 6f64 653e 2072 656d 6f76 6573 2061 /code> removes a\n-0010a380: 6c6c 206f 6620 7468 6520 7265 6365 6976 ll of the receiv\n-0010a390: 6564 204d 494d 4520 6461 7461 2e20 546f ed MIME data. To\n-0010a3a0: 2070 7265 7365 7276 6520 616e 2061 7474 preserve an att\n-0010a3b0: 6163 686d 656e 7420 696e 206d 656d 6f72 achment in memor\n-0010a3c0: 792c 2075 7365 203c 636f 6465 3e3c 6120 y, use
\n-0010a4c0: 6d65 6d62 6572 206f 6620 7468 6520 3c63 member of the soap_unlink\n-0010a4a0: 3c2f 636f 6465 3e20 6f6e 2074 6865 203c
on the <\n-0010a4b0: 636f 6465 3e70 7472 3c2f 636f 6465 3e20 code>ptr<\n-0010a570: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0010a580: 663d 2267 726f 7570 5f5f 6772 6f75 705f f=\"group__group_\n-0010a590: 5f63 6f6e 7465 7874 2e68 746d 6c23 6761 _context.html#ga\n-0010a5a0: 3634 3362 6233 6364 6331 3932 6563 3064 643bb3cdc192ec0d\n-0010a5b0: 6331 6138 3434 3834 3938 6461 6234 3031 c1a8448498dab401\n-0010a5c0: 2220 7469 746c 653d 2255 6e6c 696e 6b20 \" title=\"Unlink \n-0010a5d0: 6120 626c 6f63 6b20 6f66 2068 6561 7020 a block of heap \n-0010a5e0: 6d65 6d6f 7279 206d 616e 6167 6564 2062 memory managed b\n-0010a5f0: 7920 7468 6520 7370 6563 6966 6965 6420 y the specified \n-0010a600: 736f 6170 2063 6f6e 7465 7874 2c20 746f soap context, to\n-0010a610: 2072 656c 6561 7365 2074 6865 206d 656d release the mem\n-0010a620: 6f72 7920 6578 706c 6963 6974 6c79 2e2e ory explicitly..\n-0010a630: 2e22 3e73 6f61 705f 756e 6c69 6e6b 3c2f .\">soap_unlink\n-0010a640: 613e 3c2f 636f 6465 3e20 6675 6e63 7469 a>
functi\n-0010a650: 6f6e 2063 616e 2062 6520 7573 6564 2074 on can be used t\n-0010a660: 6f20 7072 6576 656e 7420 6465 616c 6c6f o prevent deallo\n-0010a670: 6361 7469 6f6e 206f 6620 6465 7365 7269 cation of deseri\n-0010a680: 616c 697a 6564 2064 6174 612e 3c2f 703e alized data..DIME\n-0010a6f0: 2061 7474 6163 686d 656e 7473 3c2f 6831 attachments
.#SOAP_MAXD\n-0010a830: 494d 4553 495a 453c 2f63 6f64 653e 2e20 IMESIZE
. \n-0010a840: 5468 6973 206c 696d 6974 2063 616e 2062 This limit can b\n-0010a850: 6520 6368 616e 6765 6420 6173 206e 6565 e changed as nee\n-0010a860: 6465 642e 2057 6974 6820 7374 7265 616d ded. With stream\n-0010a870: 696e 6720 4449 4d45 2075 7369 6e67 2063 ing DIME using c\n-0010a880: 616c 6c62 6163 6b20 6675 6e63 7469 6f6e allback function\n-0010a890: 732c 2064 6174 6120 6861 6e64 6c65 7273 s, data handlers\n-0010a8a0: 2061 7265 2075 7365 6420 746f 2070 6173 are used to pas\n-0010a8b0: 7320 7468 6520 6461 7461 2074 6f20 616e s the data to an\n-0010a8c0: 6420 6672 6f6d 2061 2072 6573 6f75 7263 d from a resourc\n-0010a8d0: 6520 6672 6f6d 2077 6869 6368 2074 6f20 e from which to \n-0010a8e0: 6665 7463 6820 7468 6520 6461 7461 2074 fetch the data t\n-0010a8f0: 6f20 7365 6e64 206f 7220 6461 7461 2074 o send or data t\n-0010a900: 6f20 7374 6f72 652c 2073 7563 6820 6173 o store, such as\n-0010a910: 2061 2066 696c 6520 6f72 2064 6576 6963 a file or devic\n-0010a920: 652e 2053 6565 2053 6563 7469 6f6e 203c e. See Section <\n-0010a930: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0010a940: 663d 2269 6e64 6578 2e68 746d 6c23 4449 f=\"index.html#DI\n-0010a950: 4d45 7374 7265 616d 696e 6722 3e53 7472 MEstreaming\">Str\n-0010a960: 6561 6d69 6e67 2044 494d 453c 2f61 3e20 eaming DIME \n-0010a970: 2e3c 2f70 3e0a 3c70 3e46 6f72 2064 6574 ..
.<\n-0010b710: 703e 5468 6573 6520 6675 6e63 7469 6f6e p>These function\n-0010b720: 7320 616c 6c6f 7720 4449 4d45 2061 7474 s allow DIME att\n-0010b730: 6163 686d 656e 7473 2074 6f20 6265 2061 achments to be a\n-0010b740: 6464 6564 2074 6f20 534f 4150 206d 6573 dded to SOAP mes\n-0010b750: 7361 6765 7320 7769 7468 6f75 7420 7265 sages without re\n-0010b760: 7175 6972 696e 6720 6d65 7373 6167 6520 quiring message \n-0010b770: 626f 6479 2072 6566 6572 656e 6365 732e body references.\n-0010b780: 2054 6869 7320 6973 2061 6c73 6f20 7265 This is also re\n-0010b790: 6665 7272 6564 2074 6f20 6173 2074 6865 ferred to as the\n-0010b7a0: 206f 7065 6e20 4449 4d45 2061 7474 6163 open DIME attac\n-0010b7b0: 686d 656e 7420 7374 796c 652e 2054 6865 hment style. The\n-0010b7c0: 2063 6c6f 7365 6420 6174 7461 6368 6d65 closed attachme\n-0010b7d0: 6e74 2073 7479 6c65 2072 6571 7569 7265 nt style require\n-0010b7e0: 7320 616c 6c20 4449 4d45 2061 7474 6163 s all DIME attac\n-0010b7f0: 686d 656e 7473 2074 6f20 6265 2072 6566 hments to be ref\n-0010b800: 6572 656e 6365 6420 6672 6f6d 2074 6865 erenced from the\n-0010b810: 2053 4f41 5020 6d65 7373 6167 6520 626f SOAP message bo\n-0010b820: 6479 2077 6974 6820 3c65 6d3e 3c63 6f64 dy with xsd__ba\n-0010ae60: 7365 3634 4269 6e61 7279 3c2f 613e 3c2f se64Binary\n-0010ae70: 636f 6465 3e20 616e 6420 3c63 6f64 653e code> and
.\n-0010b040: 3c2f 6c69 3e0a 3c6c 693e 3c63 6f64 653e \n-0010ae80: 3c61 2063 6c61 7373 3d22 656c 2220 6872 _xop__Incl\n-0010aef0: 7564 653c 2f61 3e3c 2f63 6f64 653e 2073 ude
s\n-0010af00: 7472 7563 7475 7265 7320 696e 2074 6865 tructures in the\n-0010af10: 2064 6174 6120 746f 2073 6572 6961 6c69 data to seriali\n-0010af20: 7a65 2061 7320 616e 2058 4d4c 206d 6573 ze as an XML mes\n-0010af30: 7361 6765 2077 6974 6820 7468 6520 6174 sage with the at\n-0010af40: 7461 6368 6d65 6e74 7320 6175 746f 6d61 tachments automa\n-0010af50: 7469 6361 6c6c 7920 6164 6465 6420 6f72 tically added or\n-0010af60: 2044 494d 4520 6174 7461 6368 6d65 6e74 DIME attachment\n-0010af70: 7320 6361 6e20 6265 2065 7870 6c69 6369 s can be explici\n-0010af80: 746c 7920 6164 6465 6420 7769 7468 203c tly added with <\n-0010af90: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>soap\n-0010b020: 5f73 6574 5f64 696d 655f 6174 7461 6368 _set_dime_attach\n-0010b030: 6d65 6e74 3c2f 613e 3c2f 636f 6465 3e2e ment\n-0010b050: 696e 7420 736f 6170 5f73 6574 5f64 696d int soap_set_dim\n-0010b060: 655f 6174 7461 6368 6d65 6e74 2873 7472 e_attachment(str\n-0010b070: 7563 7420 736f 6170 202a 736f 6170 2c20 uct soap *soap, \n-0010b080: 6368 6172 202a 7074 722c 2073 697a 655f char *ptr, size_\n-0010b090: 7420 7369 7a65 2c20 636f 6e73 7420 6368 t size, const ch\n-0010b0a0: 6172 202a 7479 7065 2c20 636f 6e73 7420 ar *type, const \n-0010b0b0: 6368 6172 202a 6964 2c20 756e 7369 676e char *id, unsign\n-0010b0c0: 6564 2073 686f 7274 206f 7074 7970 652c ed short optype,\n-0010b0d0: 2063 6f6e 7374 2063 6861 7220 2a6f 7074 const char *opt\n-0010b0e0: 696f 6e29 3c2f 636f 6465 3e20 5468 6973 ion)
This\n-0010b0f0: 2066 756e 6374 696f 6e20 6164 6473 2061 function adds a\n-0010b100: 2044 494d 4520 6174 7461 6368 6d65 6e74 DIME attachment\n-0010b110: 2074 6f20 7468 6520 584d 4c20 6d65 7373 to the XML mess\n-0010b120: 6167 6520 746f 2073 656e 642e 2054 6865 age to send. The\n-0010b130: 2073 7065 6369 6669 6564 203c 636f 6465 specified ptr
poin\n-0010b150: 7473 2074 6f20 7468 6520 6461 7461 2074 ts to the data t\n-0010b160: 6f20 7365 6e64 206f 6620 6c65 6e67 7468 o send of length\n-0010b170: 2073 7065 6369 6669 6564 2062 7920 3c63 specified by type<\n-0010b1a0: 2f63 6f64 653e 2070 6172 616d 6574 6572 /code> parameter\n-0010b1b0: 2069 6e64 6963 6174 6573 2074 6865 204d indicates the M\n-0010b1c0: 494d 4520 7479 7065 206f 6620 7468 6520 IME type of the \n-0010b1d0: 6461 7461 206f 7220 6361 6e20 6265 204e data or can be N\n-0010b1e0: 554c 4c2e 2054 6865 203c 636f 6465 3e69 ULL. The
i\n-0010b1f0: 643c 2f63 6f64 653e 2070 6172 616d 6574 d
paramet\n-0010b200: 6572 2075 6e69 7175 656c 7920 6964 656e er uniquely iden\n-0010b210: 7469 6669 6573 2074 6865 2061 7474 6163 tifies the attac\n-0010b220: 686d 656e 7420 696e 2074 6865 206d 6573 hment in the mes\n-0010b230: 7361 6765 2c20 7768 6963 6820 6361 6e20 sage, which can \n-0010b240: 6265 206f 6d69 7474 6564 2062 7920 7370 be omitted by sp\n-0010b250: 6563 6966 7969 6e67 204e 554c 4c2e 2054 ecifying NULL. T\n-0010b260: 6865 203c 636f 6465 3e6f 7074 696f 6e3c he option<\n-0010b270: 2f63 6f64 653e 2070 6172 616d 6574 6572 /code> parameter\n-0010b280: 2069 7320 616e 206f 7074 696f 6e20 7375 is an option su\n-0010b290: 6368 2061 7320 6120 6465 7363 7269 7074 ch as a descript\n-0010b2a0: 696f 6e20 6f66 2074 6865 2064 6174 6120 ion of the data \n-0010b2b0: 616e 6420 3c63 6f64 653e 6f70 7479 7065 and
optype\n-0010b2c0: 3c2f 636f 6465 3e20 6973 2061 2075 7365
is a use\n-0010b2d0: 722d 6465 6669 6e65 6420 6f70 7469 6f6e r-defined option\n-0010b2e0: 2074 7970 6520 2861 7320 7065 7220 4449 type (as per DI\n-0010b2f0: 4d45 206f 7074 696f 6e20 7370 6563 6966 ME option specif\n-0010b300: 6963 6174 696f 6e20 666f 726d 6174 292e ication format).\n-0010b310: 2054 6865 203c 636f 6465 3e70 7472 3c2f The ptr\n-0010b320: 636f 6465 3e20 7061 7261 6d65 7465 7220 code> parameter \n-0010b330: 6d75 7374 2062 6520 7065 7273 6973 7465 must be persiste\n-0010b340: 6e74 2e20 5468 6520 3c63 6f64 653e 7074 nt. The
pt\n-0010b350: 723c 2f63 6f64 653e 2070 6172 616d 6574 r
paramet\n-0010b360: 6572 2070 6173 7365 6420 746f 2074 6869 er passed to thi\n-0010b370: 7320 6675 6e63 7469 6f6e 206d 7573 7420 s function must \n-0010b380: 6265 2070 6572 7369 7374 656e 7420 696e be persistent in\n-0010b390: 206d 656d 6f72 7920 756e 7469 6c20 7468 memory until th\n-0010b3a0: 6520 6174 7461 6368 6d65 6e74 2077 6173 e attachment was\n-0010b3b0: 2073 656e 742e 2052 6574 7572 6e73 203c sent. Returns <\n-0010b3c0: 636f 6465 3e23 534f 4150 5f4f 4b3c 2f63 code>#SOAP_OK\n-0010b3e0: 3c61 2063 6c61 7373 3d22 656c 2220 6872 soap_status\n-0010b4a0: 3c2f 636f 6465 3e20 6572 726f 7220 636f
error co\n-0010b4b0: 6465 2e3c 2f6c 693e 0a3c 6c69 3e3c 636f de._\n-0010b6e0: 786f 705f 5f49 6e63 6c75 6465 3c2f 613e xop__Include\n-0010b6f0: 3c2f 636f 6465 3e20 7374 7275 6374 7572
structur\n-0010b700: 6573 2e3c 2f6c 693e 0a3c 2f75 6c3e 0a3c es.\n-0010b980: 613e 0a52 6574 7269 6576 696e 6720 6120 a>.Retrieving a \n-0010b990: 636f 6c6c 6563 7469 6f6e 206f 6620 4449 collection of DI\n-0010b9a0: 4d45 2061 7474 6163 686d 656e 7473 3c2f ME attachments\n-0010b9b0: 6832 3e0a 3c70 3e44 494d 4520 6174 7461 h2>.
optio\n-0010cd80: 6e73 3c2f 636f 6465 3e20 636f 6e74 656e ns
conten\n-0010cd90: 7420 6973 2066 6f72 6d61 7474 6564 2061 t is formatted a\n-0010cda0: 6363 6f72 6469 6e67 2074 6f20 7468 6520 ccording to the \n-0010cdb0: 4449 4d45 2073 7065 6369 6669 6361 7469 DIME specificati\n-0010cdc0: 6f6e 3a20 7468 6520 6669 7273 7420 7477 on: the first tw\n-0010cdd0: 6f20 6279 7465 7320 6172 6520 7265 7365 o bytes are rese\n-0010cde0: 7276 6564 2066 6f72 2074 6865 206f 7074 rved for the opt\n-0010cdf0: 696f 6e20 7479 7065 2c20 7468 6520 6e65 ion type, the ne\n-0010ce00: 7874 2074 776f 2062 7974 6573 2073 746f xt two bytes sto\n-0010ce10: 7265 2074 6865 2073 697a 6520 6f66 2074 re the size of t\n-0010ce20: 6865 206f 7074 696f 6e20 6461 7461 2c20 he option data, \n-0010ce30: 666f 6c6c 6f77 6564 2062 7920 7468 6520 followed by the \n-0010ce40: 2862 696e 6172 7929 206f 7074 696f 6e20 (binary) option \n-0010ce50: 6461 7461 2e3c 2f70 3e0a 3c70 3e41 2063 data.soap_end removes all\n-0010cf50: 206f 6620 7468 6520 7265 6365 6976 6564 of the received\n-0010cf60: 2044 494d 4520 6461 7461 2e20 546f 2070 DIME data. To p\n-0010cf70: 7265 7365 7276 6520 616e 2061 7474 6163 reserve an attac\n-0010cf80: 686d 656e 7420 696e 206d 656d 6f72 792c hment in memory,\n-0010cf90: 2075 7365 203c 636f 6465 3e3c 6120 636c use
struc\n-0010d130: 742e 2054 6865 203c 636f 6465 3e3c 6120 t. The s\n-0010d060: 6f61 705f 756e 6c69 6e6b 3c2f 613e 3c2f oap_unlink\n-0010d070: 636f 6465 3e20 6f6e 2074 6865 203c 636f code> on the
me\n-0010d090: 6d62 6572 206f 6620 7468 6520 3c63 6f64 mber of the soap_unlink\n-0010d210: 3c2f 636f 6465 3e20 6675 6e63 7469 6f6e
function\n-0010d220: 2063 616e 2062 6520 7573 6564 2074 6f20 can be used to \n-0010d230: 7072 6576 656e 7420 6465 616c 6c6f 6361 prevent dealloca\n-0010d240: 7469 6f6e 206f 6620 6465 7365 7269 616c tion of deserial\n-0010d250: 697a 6564 2064 6174 612e 3c2f 703e 0a3c ized data..\n-0010d2c0: 5365 7269 616c 697a 696e 6720 6269 6e61 Serializing bina\n-0010d2d0: 7279 2064 6174 6120 7769 7468 2044 494d ry data with DIM\n-0010d2e0: 4520 6174 7461 6368 6d65 6e74 733c 2f68 E attachments.
xsd__ba\n-0010d390: 7365 3634 4269 6e61 7279 3c2f 613e 3c2f se64Binary\n-0010d3a0: 636f 6465 3e20 616e 6420 3c63 6f64 653e code> and
\n-0010d3b0: 3c61 2063 6c61 7373 3d22 656c 2220 6872 xsd__hex\n-0010d420: 4269 6e61 7279 3c2f 613e 3c2f 636f 6465 Binary
types can be s\n-0010d440: 6572 6961 6c69 7a65 6420 616e 6420 6465 erialized and de\n-0010d450: 7365 7269 616c 697a 6564 2061 7320 4449 serialized as DI\n-0010d460: 4d45 2061 7474 6163 686d 656e 7473 2077 ME attachments w\n-0010d470: 6865 6e20 6f6e 6520 6f72 206d 6f72 6520 hen one or more \n-0010d480: 6f66 2074 6865 2065 7874 7261 206d 656d of the extra mem\n-0010d490: 6265 7273 203c 636f 6465 3e69 643c 2f63 bers id,
are non-NULL. \n-0010d4e0: 5468 6573 6520 6174 7461 6368 6d65 6e74 These attachment\n-0010d4f0: 7320 7769 6c6c 2062 6520 6175 746f 6d61 s will be automa\n-0010d500: 7469 6361 6c6c 7920 7472 616e 736d 6974 tically transmit\n-0010d510: 7465 6420 7072 696f 7220 746f 2074 6865 ted prior to the\n-0010d520: 2073 6571 7565 6e63 6520 6f66 2073 6563 sequence of sec\n-0010d530: 6f6e 6461 7279 2044 494d 4520 6174 7461 ondary DIME atta\n-0010d540: 6368 6d65 6e74 7320 6465 6669 6e65 6420 chments defined \n-0010d550: 6279 2074 6865 2075 7365 7220 7769 7468 by the user with\n-0010d560: 203c 636f 6465 3e3c 6120 636c 6173 733d type\n-0010d4b0: 3c2f 636f 6465 3e2c 2061 6e64 203c 636f
, and so\n-0010d5f0: 6170 5f73 6574 5f64 696d 655f 6174 7461 ap_set_dime_atta\n-0010d600: 6368 6d65 6e74 3c2f 613e 3c2f 636f 6465 chment
as explained i\n-0010d620: 6e20 7468 6520 7072 6576 696f 7573 2073 n the previous s\n-0010d630: 6563 7469 6f6e 2e20 5468 6520 7365 7269 ection. The seri\n-0010d640: 616c 697a 6174 696f 6e20 7072 6f63 6573 alization proces\n-0010d650: 7320 6973 2061 7574 6f6d 6174 6564 2066 s is automated f\n-0010d660: 6f72 2053 4f41 5020 656e 636f 6465 6420 or SOAP encoded \n-0010d670: 6d65 7373 6167 6573 2061 6e64 2044 494d messages and DIM\n-0010d680: 4520 6174 7461 6368 6d65 6e74 7320 7769 E attachments wi\n-0010d690: 6c6c 2062 6520 7365 6e64 2065 7665 6e20 ll be send even \n-0010d6a0: 7768 656e 203c 636f 6465 3e3c 6120 636c when soap\n-0010d720: 5f73 6574 5f64 696d 653c 2f61 3e3c 2f63 _set_dime or
soap_set_di\n-0010d7d0: 6d65 5f61 7474 6163 686d 656e 743c 2f61 me_attachment
are not\n-0010d7f0: 2075 7365 642e 2046 6f72 206e 6f6e 2d53 used. For non-S\n-0010d800: 4f41 502d 656e 636f 6465 6420 6d65 7373 OAP-encoded mess\n-0010d810: 6167 6573 2073 7563 6820 6173 2064 6f63 ages such as doc\n-0010d820: 756d 656e 742f 6c69 7465 7261 6c20 6d65 ument/literal me\n-0010d830: 7373 6167 6573 2079 6f75 206d 7573 7420 ssages you must \n-0010d840: 7374 696c 6c20 6361 6c6c 203c 636f 6465 still call soap_set_dime<\n-0010d8d0: 2f61 3e3c 2f63 6f64 653e 2074 6f20 656e /a>
to en\n-0010d8e0: 6162 6c65 2073 656e 6469 6e67 206d 6573 able sending mes\n-0010d8f0: 7361 6765 7320 7769 7468 2061 7474 6163 sages with attac\n-0010d900: 686d 656e 7473 2e3c 2f70 3e0a 3c70 3e54 hments.id\n-0010ed60: 636f 6465 3e20 6f72 203c 636f 6465 3e74 code> or
t\n-0010ed70: 7970 653c 2f63 6f64 653e 206d 656d 6265 ype
membe\n-0010ed80: 7220 7661 6c75 6573 2061 7265 206e 6f6e r values are non\n-0010ed90: 2d4e 554c 4c20 6174 2072 756e 2074 696d -NULL at run tim\n-0010eda0: 652c 2074 6865 2064 6174 6120 7769 6c6c e, the data will\n-0010edb0: 2062 6520 7365 7269 616c 697a 6564 2061 be serialized a\n-0010edc0: 7320 6120 4449 4d45 2061 7474 6163 686d s a DIME attachm\n-0010edd0: 656e 742e 3c2f 703e 0a3c 703e 5468 6520 ent.href<\n-0010ee20: 2f63 6f64 653e 3c2f 656d 3e20 6174 7472 /code>
attr\n-0010ee30: 6962 7574 6573 2e20 5468 6973 2067 656e ibutes. This gen\n-0010ee40: 6572 616c 6c79 2077 6f72 6b73 2077 696c erally works wil\n-0010ee50: 6c20 7769 7468 2053 4f41 5020 5250 4320 l with SOAP RPC \n-0010ee60: 656e 636f 6465 6420 6d65 7373 6167 696e encoded messagin\n-0010ee70: 672c 2062 6563 6175 7365 203c 656d 3e3c g, because <\n-0010ee80: 636f 6465 3e68 7265 663c 2f63 6f64 653e code>href\n-0010ee90: 3c2f 656d 3e20 6174 7472 6962 7574 6573 attributes\n-0010eea0: 2061 7265 2070 6572 6d69 7474 6564 2e20 are permitted. \n-0010eeb0: 486f 7765 7665 722c 2077 6974 6820 646f However, with do\n-0010eec0: 6375 6d65 6e74 2f6c 6974 6572 616c 2073 cument/literal s\n-0010eed0: 7479 6c65 2074 6865 2072 6566 6572 656e tyle the referen\n-0010eee0: 6369 6e67 206d 6563 6861 6e69 736d 206d cing mechanism m\n-0010eef0: 7573 7420 6265 2065 7870 6c69 6369 746c ust be explicitl\n-0010ef00: 7920 6465 6669 6e65 6420 696e 2074 6865 y defined in the\n-0010ef10: 2073 6368 656d 6120 6f66 2074 6865 2062 schema of the b\n-0010ef20: 696e 6172 7920 7479 7065 2e20 5468 6572 inary type. Ther\n-0010ef30: 6566 6f72 652c 204d 544f 4d20 6973 2074 efore, MTOM is t\n-0010ef40: 6865 2070 7265 6665 7272 6564 2061 7474 he preferred att\n-0010ef50: 6163 686d 656e 7420 6d65 6368 616e 6973 achment mechanis\n-0010ef60: 6d20 666f 7220 646f 6375 6d65 6e74 2f6c m for document/l\n-0010ef70: 6974 6572 616c 2073 7479 6c65 206d 6573 iteral style mes\n-0010ef80: 7361 6769 6e67 2e3c 2f70 3e0a 3c70 3e54 saging.char *__ptr; .xsd:base64\n-0010f750: 4269 6e61 7279 3c2f 636f 6465 3e3c 2f65 Binary
, such that th\n-0010f770: 6520 6461 7461 2063 616e 2062 6520 7365 e data can be se\n-0010f780: 7269 616c 697a 6564 2061 7320 4449 4d45 rialized as DIME\n-0010f790: 2061 7474 6163 686d 656e 7473 2075 7369 attachments usi\n-0010f7a0: 6e67 203c 656d 3e3c 636f 6465 3e68 7265 ng hre\n-0010f7b0: 663c 2f63 6f64 653e 3c2f 656d 3e20 6174 f
at\n-0010f7c0: 7472 6962 7574 6573 2066 6f72 2072 6566 tributes for ref\n-0010f7d0: 6572 656e 6369 6e67 2e20 5768 656e 2061 erencing. When a\n-0010f7e0: 2064 6966 6665 7265 6e74 2061 7474 7269 different attri\n-0010f7f0: 6275 7465 2069 7320 746f 2062 6520 7573 bute is to be us\n-0010f800: 6564 2c20 7468 6973 206d 7573 7420 6265 ed, this must be\n-0010f810: 2065 7870 6c69 6369 746c 7920 6465 6669 explicitly defi\n-0010f820: 6e65 643a 3c2f 703e 0a3c 6469 7620 636c ned:loca\n-0010fb80: 7469 6f6e 3c2f 636f 6465 3e3c 2f65 6d3e tion
\n-0010fb90: 2061 7474 7269 6275 7465 2064 6566 696e attribute defin\n-0010fba0: 6564 2069 6e20 7468 6520 636f 6e74 656e ed in the conten\n-0010fbb0: 7420 7265 6665 7265 6e63 6520 7363 6865 t reference sche\n-0010fbc0: 6d61 2c20 6173 2064 6566 696e 6564 2069 ma, as defined i\n-0010fbd0: 6e20 6f6e 6520 6f66 2074 6865 2076 656e n one of the ven\n-0010fbe0: 646f 7227 7320 7370 6563 6966 6963 2057 dor's specific W\n-0010fbf0: 5344 4c20 6578 7465 6e73 696f 6e73 2066 SDL extensions f\n-0010fc00: 6f72 2044 494d 4520 3c61 2068 7265 663d or DIME htt\n-0010fc60: 703a 2f2f 7777 772e 676f 7464 6f74 6e65 p://www.gotdotne\n-0010fc70: 742e 636f 6d2f 7465 616d 2f78 6d6c 5f77 t.com/team/xml_w\n-0010fc80: 7373 7065 6373 2f64 696d 652f 5753 444c sspecs/dime/WSDL\n-0010fc90: 2d45 7874 656e 7369 6f6e 2d66 6f72 2d44 -Extension-for-D\n-0010fca0: 494d 452e 6874 6d3c 2f61 3e2e 3c2f 703e IME.htm.xsd__\n-0010fd90: 6261 7365 3634 4269 6e61 7279 3c2f 613e base64Binary\n-0010fda0: 3c2f 636f 6465 3e20 616e 6420 3c63 6f64
and href\n-0010fe80: 3c2f 636f 6465 3e3c 2f65 6d3e 2061 7474
att\n-0010fe90: 7269 6275 7465 7320 746f 2072 6566 6572 ributes to refer\n-0010fea0: 2074 6f20 7468 6573 6520 6174 7461 6368 to these attach\n-0010feb0: 6d65 6e74 732e 2049 6620 736f 2c20 7468 ments. If so, th\n-0010fec0: 6520 6269 6e61 7279 2064 6174 6120 7479 e binary data ty\n-0010fed0: 7065 203c 636f 6465 3e5f 5f70 7472 3c2f pe __ptr\n-0010fee0: 636f 6465 3e20 616e 6420 3c63 6f64 653e code> and
\n-0010fef0: 5f5f 7369 7a65 3c2f 636f 6465 3e20 6d65 __size
me\n-0010ff00: 6d62 6572 7320 6172 6520 7365 7420 746f mbers are set to\n-0010ff10: 2074 6865 206c 6f63 6174 696f 6e20 696e the location in\n-0010ff20: 206d 656d 6f72 7920 6f66 2074 6865 2061 memory of the a\n-0010ff30: 7474 6163 686d 656e 7420 6461 7461 2061 ttachment data a\n-0010ff40: 6e64 206c 656e 6774 682c 2072 6573 7065 nd length, respe\n-0010ff50: 6374 6976 656c 792e 3c2f 703e 0a3c 703e ctively.__ptr\n-0010ffe0: 636f 6465 3e20 6d65 6d62 6572 2069 7320 code> member is \n-0010fff0: 4e55 4c4c 2061 6e64 2074 6865 203c 636f NULL and the
mem\n-00110010: 6265 7220 7265 6665 7273 2074 6f20 7468 ber refers to th\n-00110020: 6520 6578 7465 726e 616c 2064 6174 6120 e external data \n-00110030: 736f 7572 6365 2e3c 2f70 3e0a 3c70 3e54 source.dime_id\n-00110050: 5f66 6f72 6d61 743c 2f63 6f64 653e 2061 _format
a\n-00110060: 7474 7269 6275 7465 206f 6620 7468 6520 ttribute of the \n-00110070: 6375 7272 656e 7420 636f 6e74 6578 7420 current context \n-00110080: 6361 6e20 6265 2073 6574 2074 6f20 7468 can be set to th\n-00110090: 6520 6465 6661 756c 7420 666f 726d 6174 e default format\n-001100a0: 206f 6620 4449 4d45 2069 6420 6d65 6d62 of DIME id memb\n-001100b0: 6572 732e 2054 6865 2066 6f72 6d61 7420 ers. The format \n-001100c0: 7374 7269 6e67 206d 7573 7420 636f 6e74 string must cont\n-001100d0: 6169 6e20 6120 3c63 6f64 653e 643c 2f63 ain a d format spec\n-001100f0: 6966 6965 7220 286f 7220 616e 7920 6f74 ifier (or any ot\n-00110100: 6865 7220 3c63 6f64 653e 696e 743c 2f63 her
int-based forma\n-00110120: 7420 7370 6563 6966 6965 7229 2e20 5468 t specifier). Th\n-00110130: 6520 7661 6c75 6520 6f66 2074 6869 7320 e value of this \n-00110140: 7370 6563 6966 6965 7220 6973 2061 206e specifier is a n\n-00110150: 6f6e 2d6e 6567 6174 6976 6520 696e 7465 on-negative inte\n-00110160: 6765 722c 2077 6974 6820 7a65 726f 2062 ger, with zero b\n-00110170: 6569 6e67 2074 6865 2076 616c 7565 206f eing the value o\n-00110180: 6620 7468 6520 4449 4d45 2061 7474 6163 f the DIME attac\n-00110190: 686d 656e 7420 6964 2066 6f72 2074 6865 hment id for the\n-001101a0: 2053 4f41 5020 6d65 7373 6167 652e 2046 SOAP message. F\n-001101b0: 6f72 2065 7861 6d70 6c65 2c3c 2f70 3e0a or example,
"\n-001103a0: 6964 2d25 7826 7175 6f74 3b3c 2f73 7061 id-%x";
..Strea\n-00110730: 6d69 6e67 2044 494d 453c 2f68 323e 0a3c ming DIME
.<\n-00110740: 703e 5374 7265 616d 696e 6720 4449 4d45 p>Streaming DIME\n-00110750: 2069 7320 6163 6869 6576 6564 2077 6974 is achieved wit\n-00110760: 6820 6361 6c6c 6261 636b 2066 756e 6374 h callback funct\n-00110770: 696f 6e73 2074 6f20 6665 7463 6820 616e ions to fetch an\n-00110780: 6420 7374 6f72 6520 6461 7461 2064 7572 d store data dur\n-00110790: 696e 6720 7472 616e 736d 6973 7369 6f6e ing transmission\n-001107a0: 2e20 5468 7265 6520 6675 6e63 7469 6f6e . Three function\n-001107b0: 2063 616c 6c62 6163 6b73 2066 6f72 2073 callbacks for s\n-001107c0: 7472 6561 6d69 6e67 2044 494d 4520 6f75 treaming DIME ou\n-001107d0: 7470 7574 2061 6e64 2074 6872 6565 2063 tput and three c\n-001107e0: 616c 6c62 6163 6b73 2066 6f72 2073 7472 allbacks for str\n-001107f0: 6561 6d69 6e67 2044 494d 4520 696e 7075 eaming DIME inpu\n-00110800: 7420 6172 6520 6176 6169 6c61 626c 652e t are available.\n-00110810: 3c2f 703e 0a3c 756c 3e0a 3c6c 693e 3c63 ..
.soap\n-00110a10: 3a3a 6664 696d 6572 6561 643c 2f61 3e3c ::fdimeread<\n-00110a20: 2f63 6f64 653e 2063 616c 6c62 6163 6b20 /code> callback \n-00110a30: 756e 7469 6c20 6e6f 206d 6f72 6520 6461 until no more da\n-00110a40: 7461 2069 7320 6176 6169 6c61 626c 6520 ta is available \n-00110a50: 616e 6420 7468 6520 3c63 6f64 653e 3c61 and the
soap::fdime\n-00110b00: 7265 6164 636c 6f73 653c 2f61 3e3c 2f63 readclose
handle parameter c\n-00110b60: 6f6e 7461 696e 7320 7468 6520 7661 6c75 ontains the valu\n-00110b70: 6520 6f66 2074 6865 203c 636f 6465 3e5f e of the
\n-00110d10: 2c20 3c63 6f64 653e 6964 3c2f 636f 6465 , _\n-00110b80: 5f70 7472 3c2f 636f 6465 3e20 6d65 6d62 _ptr
memb\n-00110b90: 6572 2076 6172 6961 626c 6520 6f66 2074 er variable of t\n-00110ba0: 6865 2061 7474 6163 686d 656e 7420 7374 he attachment st\n-00110bb0: 7275 6374 2f63 6c61 7373 2077 6974 6820 ruct/class with \n-00110bc0: 6461 7461 2028 652e 672e 203c 636f 6465 data (e.g. x\n-00110c40: 7364 5f5f 6261 7365 3634 4269 6e61 7279 sd__base64Binary\n-00110c50: 3c2f 613e 3c2f 636f 6465 3e20 6f72 203c
or <\n-00110c60: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>_xop_\n-00110cd0: 5f49 6e63 6c75 6465 3c2f 613e 3c2f 636f _Include with _\n-00110cf0: 5f70 7472 3c2f 636f 6465 3e2c 203c 636f _ptr
, id
, type and
\n-00110e10: 616e 6420 3c63 6f64 653e 5f5f 7369 7a65 and o\n-00110d40: 7074 696f 6e73 3c2f 636f 6465 3e20 6d65 ptions
me\n-00110d50: 6d62 6572 7329 2c20 7768 6963 6820 7368 mbers), which sh\n-00110d60: 6f75 6c64 2062 6520 6120 706f 696e 7465 ould be a pointe\n-00110d70: 7220 746f 2073 7065 6369 6669 6320 696e r to specific in\n-00110d80: 666f 726d 6174 696f 6e20 7375 6368 2061 formation such a\n-00110d90: 7320 6120 6669 6c65 2064 6573 6372 6970 s a file descrip\n-00110da0: 746f 7220 6f72 2061 2070 6f69 6e74 6572 tor or a pointer\n-00110db0: 2074 6f20 6120 736f 6d65 2061 7070 6c69 to a some appli\n-00110dc0: 6361 7469 6f6e 2d73 7065 6369 6669 6320 cation-specific \n-00110dd0: 6461 7461 2074 6f20 6265 2070 6173 7365 data to be passe\n-00110de0: 6420 746f 2074 6869 7320 6361 6c6c 6261 d to this callba\n-00110df0: 636b 2e20 426f 7468 2074 6865 203c 636f ck. Both the __size\n-00110e20: 3c2f 636f 6465 3e20 6d65 6d62 6572 7320
members \n-00110e30: 6f66 2074 6865 2061 7474 6163 686d 656e of the attachmen\n-00110e40: 7420 7374 7275 6374 2f63 6c61 7373 2073 t struct/class s\n-00110e50: 686f 756c 6420 6861 7665 2062 6565 6e20 hould have been \n-00110e60: 7365 7420 6279 2074 6865 2061 7070 6c69 set by the appli\n-00110e70: 6361 7469 6f6e 2070 7269 6f72 2074 6f20 cation prior to \n-00110e80: 7468 6520 7365 7269 616c 697a 6174 696f the serializatio\n-00110e90: 6e20 6f66 2074 6865 206d 6573 7361 6765 n of the message\n-00110ea0: 2077 6974 6820 6174 7461 6368 6d65 6e74 with attachment\n-00110eb0: 732e 2049 6620 7468 6520 3c63 6f64 653e s. If the \n-00110ec0: 5f5f 7369 7a65 3c2f 636f 6465 3e20 6973 __size
is\n-00110ed0: 207a 6572 6f20 616e 6420 4854 5450 2063 zero and HTTP c\n-00110ee0: 6875 6e6b 696e 6720 6973 2065 6e61 626c hunking is enabl\n-00110ef0: 6564 2028 7769 7468 203c 636f 6465 3e23 ed (with #\n-00110f00: 534f 4150 5f49 4f5f 4348 554e 4b3c 2f63 SOAP_IO_CHUNK), then chun\n-00110f20: 6b65 6420 4449 4d45 2061 7474 6163 686d ked DIME attachm\n-00110f30: 656e 7473 2061 7265 2073 656e 742c 2073 ents are sent, s\n-00110f40: 6565 203c 636f 6465 3e3c 6120 636c 6173 ee
soap::f\n-00110fe0: 6469 6d65 7265 6164 3c2f 613e 3c2f 636f dimeread. The
i\n-00111000: 643c 2f63 6f64 653e 2c20 3c63 6f64 653e d
, \n-00111010: 7479 7065 3c2f 636f 6465 3e20 616e 6420 type
and \n-00111020: 3c63 6f64 653e 6f70 7469 6f6e 733c 2f63 options parameters \n-00111040: 6172 6520 7468 6520 3c63 6f64 653e 6964 are the
id\n-00111050: 3c2f 636f 6465 3e20 286f 7074 696f 6e61
(optiona\n-00111060: 6c20 4944 292c 203c 636f 6465 3e74 7970 l ID), typ\n-00111070: 653c 2f63 6f64 653e 2028 6120 4d49 4d45 e
(a MIME\n-00111080: 2074 7970 6529 2061 6e64 203c 636f 6465 type) and options
\n-001110a0: 2844 494d 4520 6f70 7469 6f6e 7320 6172 (DIME options ar\n-001110b0: 6520 7365 7420 7769 7468 203c 636f 6465 e set with \n-00111130: 736f 6170 5f64 696d 655f 6f70 7469 6f6e soap_dime_option\n-00111140: 3c2f 613e 3c2f 636f 6465 3e29 206f 6620
) of \n-00111150: 7468 6520 6174 7461 6368 6d65 6e74 2073 the attachment s\n-00111160: 7472 7563 742f 636c 6173 732c 2072 6573 truct/class, res\n-00111170: 7065 6374 6976 656c 792c 206f 6620 7768 pectively, of wh\n-00111180: 6963 6820 6174 206c 6561 7374 206f 6e65 ich at least one\n-00111190: 206d 656d 6265 7220 7368 6f75 6c64 2062 member should b\n-001111a0: 6520 6e6f 6e2d 4e55 4c4c 2e20 5468 6520 e non-NULL. The \n-001111b0: 6361 6c6c 6261 636b 2073 686f 756c 6420 callback should \n-001111c0: 7265 7475 726e 2074 6865 203c 636f 6465 return the handle
p\n-001111e0: 6172 616d 6574 6572 2076 616c 7565 206f arameter value o\n-001111f0: 7220 616e 6f74 6865 7220 706f 696e 7465 r another pointe\n-00111200: 7220 7661 6c75 652c 2077 6869 6368 2069 r value, which i\n-00111210: 7320 7061 7373 6564 2061 7320 7468 6520 s passed as the \n-00111220: 6e65 7720 3c63 6f64 653e 6861 6e64 6c65 new handle\n-00111230: 3c2f 636f 6465 3e20 7061 7261 6d65 7465
paramete\n-00111240: 7220 746f 203c 636f 6465 3e3c 6120 636c r to soap:\n-001112e0: 3a66 6469 6d65 7265 6164 3c2f 613e 3c2f :fdimeread\n-001112f0: 636f 6465 3e20 616e 6420 3c63 6f64 653e code> and
\n-00111300: 3c61 2063 6c61 7373 3d22 656c 2220 6872 soap::fdi\n-001113a0: 6d65 7265 6164 636c 6f73 653c 2f61 3e3c mereadclose<\n-001113b0: 2f63 6f64 653e 2063 616c 6c62 6163 6b73 /code> callbacks\n-001113c0: 2e20 5768 656e 2061 6e20 6572 726f 7220 . When an error \n-001113d0: 6f63 6375 7272 6564 2069 6e20 7468 6973 occurred in this\n-001113e0: 2063 616c 6c62 6163 6b2c 2074 6865 2063 callback, the c\n-001113f0: 616c 6c62 6163 6b20 7368 6f75 6c64 2072 allback should r\n-00111400: 6574 7572 6e20 4e55 4c4c 2061 6e64 2073 eturn NULL and s\n-00111410: 6574 203c 636f 6465 3e3c 6120 636c 6173 et
s\n-001114c0: 6f61 703a 3a65 7272 6f72 3c2f 613e 3c2f oap::error\n-001114d0: 636f 6465 3e20 746f 2061 6e20 6572 726f code> to an erro\n-001114e0: 7220 636f 6465 2c20 652e 672e 2075 7369 r code, e.g. usi\n-001114f0: 6e67 203c 636f 6465 3e3c 6120 636c 6173 ng
\n-001116a0: 2074 6f20 3c63 6f64 653e 2353 4f41 505f to soap_re\n-001115a0: 6365 6976 6572 5f66 6175 6c74 3c2f 613e ceiver_fault\n-001115b0: 3c2f 636f 6465 3e2e 2054 6865 2063 616c
. The cal\n-001115c0: 6c62 6163 6b20 6d61 7920 7265 7475 726e lback may return\n-001115d0: 204e 554c 4c20 616e 6420 7365 7420 3c63 NULL and set #SOAP_\n-001116b0: 4f4b 3c2f 636f 6465 3e20 7768 656e 2074 OK
when t\n-001116c0: 6869 7320 7370 6563 6966 6963 2044 494d his specific DIM\n-001116d0: 4520 6174 7461 6368 6d65 6e74 2073 686f E attachment sho\n-001116e0: 756c 6420 6e6f 7420 746f 2062 6520 7374 uld not to be st\n-001116f0: 7265 616d 6564 2061 6e64 2074 6865 2065 reamed and the e\n-00111700: 6e67 696e 6520 7769 6c6c 2073 696d 706c ngine will simpl\n-00111710: 7920 736b 6970 2069 742e 3c2f 6c69 3e0a y skip it.size_t\n-00111730: 2028 2a73 6f61 702e 6664 696d 6572 6561 (*soap.fdimerea\n-00111740: 6429 2873 7472 7563 7420 736f 6170 202a d)(struct soap *\n-00111750: 736f 6170 2c20 766f 6964 202a 6861 6e64 soap, void *hand\n-00111760: 6c65 2c20 6368 6172 202a 6275 662c 2073 le, char *buf, s\n-00111770: 697a 655f 7420 6c65 6e29 3c2f 636f 6465 ize_t len)
This callback \n-00111790: 6973 2063 616c 6c65 6420 6279 2074 6865 is called by the\n-001117a0: 2065 6e67 696e 6520 746f 2072 6561 6420 engine to read \n-001117b0: 6120 6368 756e 6b20 6f66 2061 7474 6163 a chunk of attac\n-001117c0: 686d 656e 7420 6461 7461 2074 6f20 7472 hment data to tr\n-001117d0: 616e 736d 6974 2e20 5468 6520 3c63 6f64 ansmit. The bu\n-001118f0: 663c 2f63 6f64 653e 2070 6172 616d 6574 f
paramet\n-00111900: 6572 2069 7320 7468 6520 6275 6666 6572 er is the buffer\n-00111910: 206f 6620 6c65 6e67 7468 203c 636f 6465 of length len
into\n-00111930: 2077 6869 6368 2061 2063 6875 6e6b 206f which a chunk o\n-00111940: 6620 6461 7461 2073 686f 756c 6420 6265 f data should be\n-00111950: 2077 7269 7474 656e 2062 7920 7468 6520 written by the \n-00111960: 6361 6c6c 6261 636b 2e20 5468 6520 6163 callback. The ac\n-00111970: 7475 616c 2061 6d6f 756e 7420 6f66 2064 tual amount of d\n-00111980: 6174 6120 7772 6974 7465 6e20 696e 746f ata written into\n-00111990: 2074 6865 2062 7566 6665 7220 6d61 7920 the buffer may \n-001119a0: 6265 206c 6573 7320 7468 616e 203c 636f be less than soap::error\n-00111ae0: 613e 3c2f 636f 6465 3e20 7368 6f75 6c64 a>
should\n-00111af0: 2062 6520 7365 742e 2054 6865 203c 636f be set. The xsd__base64B\n-00111bd0: 696e 6172 793c 2f61 3e3c 2f63 6f64 653e inary
\n-00111be0: 206f 7220 3c63 6f64 653e 3c61 2063 6c61 or \n-00111c50: 5f78 6f70 5f5f 496e 636c 7564 653c 2f61 _xop__Include
with __size\n-00111c90: 636f 6465 3e2c 203c 636f 6465 3e69 643c code>,
id<\n-00111ca0: 2f63 6f64 653e 2c20 3c63 6f64 653e 7479 /code>,
ty\n-00111cb0: 7065 3c2f 636f 6465 3e20 616e 6420 3c63 pe
and __si\n-00111d50: 7a65 3c2f 636f 6465 3e20 696e 6469 6361 ze
indica\n-00111d60: 7465 7320 7468 6520 746f 7461 6c20 7369 tes the total si\n-00111d70: 7a65 206f 6620 7468 6520 6174 7461 6368 ze of the attach\n-00111d80: 6d65 6e74 2064 6174 6120 746f 2062 6520 ment data to be \n-00111d90: 7472 616e 736d 6974 7465 642e 2049 6620 transmitted. If \n-00111da0: 7468 6520 3c63 6f64 653e 5f5f 7369 7a65 the __size\n-00111db0: 3c2f 636f 6465 3e20 6d65 6d62 6572 2076
member v\n-00111dc0: 6172 6961 626c 6520 6973 207a 6572 6f20 ariable is zero \n-00111dd0: 616e 6420 4854 5450 2063 6875 6e6b 696e and HTTP chunkin\n-00111de0: 6720 6973 2065 6e61 626c 6564 2028 7769 g is enabled (wi\n-00111df0: 7468 203c 636f 6465 3e23 534f 4150 5f49 th #SOAP_I\n-00111e00: 4f5f 4348 554e 4b3c 2f63 6f64 653e 292c O_CHUNK
),\n-00111e10: 2074 6865 6e20 4449 4d45 2063 6875 6e6b then DIME chunk\n-00111e20: 6564 2074 7261 6e73 6665 7273 2061 7265 ed transfers are\n-00111e30: 2061 6374 6976 6174 6564 2062 7920 7468 activated by th\n-00111e40: 6520 656e 6769 6e65 2c20 7768 6963 6820 e engine, which \n-00111e50: 6973 206d 6f72 6520 666c 6578 6962 6c65 is more flexible\n-00111e60: 2073 696e 6365 2074 6865 2061 7474 6163 since the attac\n-00111e70: 686d 656e 7420 6461 7461 2073 697a 6520 hment data size \n-00111e80: 646f 6573 206e 6f74 206e 6565 6420 746f does not need to\n-00111e90: 2062 6520 6465 7465 726d 696e 6564 2069 be determined i\n-00111ea0: 6e20 6164 7661 6e63 652e 2054 6f20 7573 n advance. To us\n-00111eb0: 6520 4449 4d45 2063 6875 6e6b 6564 2074 e DIME chunked t\n-00111ec0: 7261 6e73 6665 7273 2c20 656e 6162 6c65 ransfers, enable\n-00111ed0: 2048 5454 5020 6368 756e 6b69 6e67 2077 HTTP chunking w\n-00111ee0: 6974 6820 3c63 6f64 653e 2353 4f41 505f ith #SOAP_\n-00111ef0: 494f 5f43 4855 4e4b 3c2f 636f 6465 3e20 IO_CHUNK
\n-00111f00: 2861 6c73 6f20 3c63 6f64 653e 2353 4f41 (also #SOA\n-00111f10: 505f 494f 5f53 544f 5245 3c2f 636f 6465 P_IO_STORE
can be used, b\n-00111f30: 7574 2074 6869 7320 6275 6666 6572 7320 ut this buffers \n-00111f40: 7468 6520 656e 7469 7265 206d 6573 7361 the entire messa\n-00111f50: 6765 2069 6e20 6d65 6d6f 7279 2062 6566 ge in memory bef\n-00111f60: 6f72 6520 7472 616e 736d 6973 7369 6f6e ore transmission\n-00111f70: 2920 616e 6420 7365 7420 7468 6520 3c63 ) and set the \n-00112040: 6c65 6e3c 2f63 6f64 653e 2062 7974 6573 len
bytes\n-00112050: 2075 6e6c 6573 7320 7468 6520 6c61 7374 unless the last\n-00112060: 2064 6174 6120 6368 756e 6b20 6973 2072 data chunk is r\n-00112070: 6561 6368 6564 2061 6e64 2066 6577 6572 eached and fewer\n-00112080: 2062 7974 6573 2061 7265 2072 6574 7572 bytes are retur\n-00112090: 6e65 642e 3c2f 6c69 3e0a 3c6c 693e 3c63 ned.handl\n-00112150: 653c 2f63 6f64 653e 2070 6172 616d 6574 e
paramet\n-00112160: 6572 2063 6f6e 7461 696e 7320 7468 6520 er contains the \n-00112170: 6861 6e64 6c65 2072 6574 7572 6e65 6420 handle returned \n-00112180: 6279 2074 6865 203c 636f 6465 3e3c 6120 by the soap::fdimer\n-00112230: 6561 646f 7065 6e3c 2f61 3e3c 2f63 6f64 eadopen callback.
void\n-00112260: 202a 282a 736f 6170 2e66 6469 6d65 7772 *(*soap.fdimewr\n-00112270: 6974 656f 7065 6e29 2873 7472 7563 7420 iteopen)(struct \n-00112280: 736f 6170 202a 736f 6170 2c20 636f 6e73 soap *soap, cons\n-00112290: 7420 6368 6172 202a 6964 2c20 636f 6e73 t char *id, cons\n-001122a0: 7420 6368 6172 202a 7479 7065 2c20 636f t char *type, co\n-001122b0: 6e73 7420 6368 6172 202a 6f70 7469 6f6e nst char *option\n-001122c0: 7329 3c2f 636f 6465 3e20 4361 6c6c 6564 s)
Called\n-001122d0: 2062 7920 7468 6520 746f 2073 7461 7274 by the to start\n-001122e0: 2072 6563 6569 7669 6e67 2061 2073 7472 receiving a str\n-001122f0: 6561 6d69 6e67 2044 494d 4520 6174 7461 eaming DIME atta\n-00112300: 6368 6d65 6e74 2e20 5468 6973 2063 616c chment. This cal\n-00112310: 6c62 6163 6b20 6f70 656e 7320 6120 7374 lback opens a st\n-00112320: 7265 616d 2074 6f20 7374 6172 7420 7772 ream to start wr\n-00112330: 6974 696e 6720 7468 6520 6174 7461 6368 iting the attach\n-00112340: 6d65 6e74 2064 6174 6120 7265 6365 6976 ment data receiv\n-00112350: 6564 2e20 5468 6520 6163 7475 616c 2064 ed. The actual d\n-00112360: 6174 6120 7374 7265 616d 2077 696c 6c20 ata stream will \n-00112370: 6265 2077 7269 7474 656e 2069 6e20 6368 be written in ch\n-00112380: 756e 6b73 2075 7369 6e67 2074 6865 203c unks using the <\n-00112390: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>soap::fdim\n-00112430: 6577 7269 7465 3c2f 613e 3c2f 636f 6465 ewrite callback until\n-00112450: 206e 6f20 6d6f 7265 2064 6174 6120 6973 no more data is\n-00112460: 2061 7661 696c 6162 6c65 2061 6e64 2074 available and t\n-00112470: 6865 203c 636f 6465 3e3c 6120 636c 6173 he \n-00112510: 736f 6170 3a3a 6664 696d 6577 7269 7465 soap::fdimewrite\n-00112520: 636c 6f73 653c 2f61 3e3c 2f63 6f64 653e close
\n-00112530: 2063 616c 6c62 6163 6b20 6973 2063 616c callback is cal\n-00112540: 6c65 6420 746f 2063 6c6f 7365 2074 6865 led to close the\n-00112550: 2073 7472 6561 6d2e 2054 6865 203c 636f stream. The option\n-00112590: 733c 2f63 6f64 653e 2070 6172 616d 6574 s
paramet\n-001125a0: 6572 7320 6172 6520 7468 6520 3c63 6f64 ers are the options\n-001125e0: 3c2f 636f 6465 3e20 6f66 2074 6865 2061
of the a\n-001125f0: 7474 6163 686d 656e 7420 7374 7275 6374 ttachment struct\n-00112600: 2f63 6c61 7373 2028 652e 672e 203c 636f /class (e.g. _xo\n-00112710: 705f 5f49 6e63 6c75 6465 3c2f 613e 3c2f p__Include\n-00112720: 636f 6465 3e20 7769 7468 203c 636f 6465 code> with
__ptr
, <\n-00112740: 636f 6465 3e5f 5f73 697a 653c 2f63 6f64 code>__sizeid
type<\n-00112770: 2f63 6f64 653e 2061 6e64 203c 636f 6465 /code> and
options
\n-00112790: 6d65 6d62 6572 7329 2c20 7265 7370 6563 members), respec\n-001127a0: 7469 7665 6c79 2e20 5468 6520 6361 6c6c tively. The call\n-001127b0: 6261 636b 2073 686f 756c 6420 7265 7475 back should retu\n-001127c0: 726e 2061 2068 616e 646c 652c 2077 6869 rn a handle, whi\n-001127d0: 6368 2069 7320 7061 7373 6564 2074 6f20 ch is passed to \n-001127e0: 7468 6520 3c63 6f64 653e 3c61 2063 6c61 the soap:\n-00112880: 3a66 6469 6d65 7772 6974 653c 2f61 3e3c :fdimewrite<\n-00112890: 2f63 6f64 653e 2061 6e64 203c 636f 6465 /code> and
soap::fd\n-00112940: 696d 6577 7269 7465 636c 6f73 653c 2f61 imewriteclose
callbac\n-00112960: 6b73 2e20 5468 6520 3c63 6f64 653e 5f5f ks. The __\n-00112970: 7074 723c 2f63 6f64 653e 206d 656d 6265 ptr
membe\n-00112980: 7220 7661 7269 6162 6c65 206f 6620 7468 r variable of th\n-00112990: 6520 6174 7461 6368 6d65 6e74 2073 7472 e attachment str\n-001129a0: 7563 742f 636c 6173 7320 6973 2073 6574 uct/class is set\n-001129b0: 2062 7920 7468 6520 656e 6769 6e65 2074 by the engine t\n-001129c0: 6f20 7468 6520 7661 6c75 6520 6f66 2074 o the value of t\n-001129d0: 6869 7320 6861 6e64 6c65 2e20 5468 6520 his handle. The \n-001129e0: 3c63 6f64 653e 5f5f 7369 7a65 3c2f 636f __size member varia\n-00112a00: 626c 6520 6973 2073 6574 2074 6f20 7468 ble is set to th\n-00112a10: 6520 7369 7a65 206f 6620 7468 6520 6174 e size of the at\n-00112a20: 7461 6368 6d65 6e74 2072 6563 6569 7665 tachment receive\n-00112a30: 642e 2054 6865 206d 6178 696d 756d 2044 d. The maximum D\n-00112a40: 494d 4520 6174 7461 6368 6d65 6e74 2073 IME attachment s\n-00112a50: 697a 6520 7265 6365 6976 6564 2069 7320 ize received is \n-00112a60: 6c69 6d69 7465 6420 6279 203c 636f 6465 limited by
#SOAP_MAXDIMESI\n-00112a80: 5a45 3c2f 636f 6465 3e2e 3c2f 6c69 3e0a ZE
.int (*\n-00112aa0: 736f 6170 2e66 6469 6d65 7772 6974 6529 soap.fdimewrite)\n-00112ab0: 2873 7472 7563 7420 736f 6170 202a 736f (struct soap *so\n-00112ac0: 6170 2c20 766f 6964 202a 6861 6e64 6c65 ap, void *handle\n-00112ad0: 2c20 636f 6e73 7420 6368 6172 202a 6275 , const char *bu\n-00112ae0: 662c 2073 697a 655f 7420 6c65 6e29 3c2f f, size_t len)\n-00112af0: 636f 6465 3e20 5468 6973 2063 616c 6c62 code> This callb\n-00112b00: 6163 6b20 6973 2063 616c 6c65 6420 6279 ack is called by\n-00112b10: 2074 6865 2065 6e67 696e 6520 746f 2077 the engine to w\n-00112b20: 7269 7465 2061 2063 6875 6e6b 206f 6620 rite a chunk of \n-00112b30: 6174 7461 6368 6d65 6e74 2064 6174 6120 attachment data \n-00112b40: 7265 6365 6976 6564 2e20 5468 6520 3c63 received. The
parameter cont\n-00112b70: 6169 6e73 2074 6865 2068 616e 646c 6520 ains the handle \n-00112b80: 7265 7475 726e 6564 2062 7920 7468 6520 returned by the \n-00112b90: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 soa\n-00112c30: 703a 3a66 6469 6d65 7772 6974 656f 7065 p::fdimewriteope\n-00112c40: 6e3c 2f61 3e3c 2f63 6f64 653e 2063 616c n
cal\n-00112c50: 6c62 6163 6b2e 2054 6865 203c 636f 6465 lback. The buf
para\n-00112c70: 6d65 7465 7220 636f 6e74 6169 6e73 2074 meter contains t\n-00112c80: 6865 2064 6174 6120 6f66 206c 656e 6774 he data of lengt\n-00112c90: 6820 3c63 6f64 653e 6c65 6e3c 2f63 6f64 h len. Returns
or a so\n-00112d80: 6170 5f73 7461 7475 733c 2f61 3e3c 2f63 ap_status (int) error\n-00112da0: 2063 6f64 652e 3c2f 6c69 3e0a 3c6c 693e code.
void (*soa\n-00112dc0: 702e 6664 696d 6577 7269 7465 636c 6f73 p.fdimewriteclos\n-00112dd0: 6529 2873 7472 7563 7420 736f 6170 202a e)(struct soap *\n-00112de0: 736f 6170 2c20 766f 6964 202a 6861 6e64 soap, void *hand\n-00112df0: 6c65 293c 2f63 6f64 653e 2054 6869 7320 le)
This \n-00112e00: 6361 6c6c 6261 636b 2069 7320 6361 6c6c callback is call\n-00112e10: 6564 2062 7920 7468 6520 656e 6769 6e65 ed by the engine\n-00112e20: 2074 6f20 636c 6f73 6520 7468 6520 4449 to close the DI\n-00112e30: 4d45 2061 7474 6163 686d 656e 7420 7374 ME attachment st\n-00112e40: 7265 616d 2061 6674 6572 2077 7269 7469 ream after writi\n-00112e50: 6e67 2e20 5468 6520 3c63 6f64 653e 6861 ng. The ha\n-00112e60: 6e64 6c65 3c2f 636f 6465 3e20 7061 7261 ndle
para\n-00112e70: 6d65 7465 7220 636f 6e74 6169 6e73 2074 meter contains t\n-00112e80: 6865 2068 616e 646c 6520 7265 7475 726e he handle return\n-00112e90: 6564 2062 7920 7468 6520 3c63 6f64 653e ed by the \n-00112ea0: 3c61 2063 6c61 7373 3d22 656c 2220 6872 soap::fdi\n-00112f40: 6d65 7772 6974 656f 7065 6e3c 2f61 3e3c mewriteopen<\n-00112f50: 2f63 6f64 653e 2063 616c 6c62 6163 6b2e /code> callback.\n-00112f60: 3c2f 6c69 3e0a 3c2f 756c 3e0a 3c70 3e49
// don't\n-00113aa0: 206b 6e6f 7720 7468 6520 7369 7a65 2c20 know the size, \n-00113ab0: 736f 2062 7566 6665 7220 6974 203c 2f73 so buffer it char *type, const char *options) \n-00114380: 6469 763e 0a3c 6469 7620 636c 6173 733d div>.void *handle, #SOAP_\n-00116df0: 454e 435f 5a4c 4942 3c2f 636f 6465 3e20 ENC_ZLIB
\n-00116e00: 6361 6e20 6265 2075 7365 6420 7769 7468 can be used with\n-00116e10: 2044 494d 4520 746f 2063 6f6d 7072 6573 DIME to compres\n-00116e20: 7320 7468 6520 656e 7469 7265 206d 6573 s the entire mes\n-00116e30: 7361 6765 2e20 486f 7765 7665 722c 2063 sage. However, c\n-00116e40: 6f6d 7072 6573 7369 6f6e 2072 6571 7569 ompression requi\n-00116e50: 7265 7320 6275 6666 6572 696e 6720 746f res buffering to\n-00116e60: 2064 6574 6572 6d69 6e65 2074 6865 2048 determine the H\n-00116e70: 5454 5020 636f 6e74 656e 7420 6c65 6e67 TTP content leng\n-00116e80: 7468 2068 6561 6465 722c 2077 6869 6368 th header, which\n-00116e90: 2063 616e 6365 6c73 2074 6865 2062 656e cancels the ben\n-00116ea0: 6566 6974 7320 6f66 2073 7472 6561 6d69 efits of streami\n-00116eb0: 6e67 2044 494d 452e 2054 6f20 6176 6f69 ng DIME. To avoi\n-00116ec0: 6420 7468 6973 2c20 796f 7520 7368 6f75 d this, you shou\n-00116ed0: 6c64 2075 7365 2063 6875 6e6b 6564 2048 ld use chunked H\n-00116ee0: 5454 5020 2877 6974 6820 7468 6520 6f75 TTP (with the ou\n-00116ef0: 7470 7574 2d6d 6f64 6520 3c63 6f64 653e tput-mode \n-00116f00: 2353 4f41 505f 494f 5f43 4855 4e4b 3c2f #SOAP_IO_CHUNK\n-00116f10: 636f 6465 3e20 666c 6167 2920 7769 7468 code> flag) with\n-00116f20: 2063 6f6d 7072 6573 7369 6f6e 2061 6e64 compression and\n-00116f30: 2073 7472 6561 6d69 6e67 2044 494d 452e streaming DIME.\n-00116f40: 2041 7420 7468 6520 7365 7276 6572 2073 At the server s\n-00116f50: 6964 652c 2077 6865 6e20 796f 7520 7365 ide, when you se\n-00116f60: 7420 3c63 6f64 653e 2353 4f41 505f 494f t
, the eng\n-00117020: 696e 6520 7769 6c6c 2061 7574 6f6d 6174 ine will automat\n-00117030: 6963 616c 6c79 2072 6576 6572 7420 746f ically revert to\n-00117040: 2062 7566 6665 7269 6e67 2028 3c63 6f64 buffering (#SOAP_IO\n-00116f70: 5f43 4855 4e4b 3c2f 636f 6465 3e20 6265 _CHUNK
be\n-00116f80: 666f 7265 2063 616c 6c69 6e67 203c 636f fore calling (soap-&\n-001170a0: 6774 3b6f 6d6f 6465 2026 616d 703b 2053 gt;omode & S\n-001170b0: 4f41 505f 494f 2920 3d3d 2053 4f41 505f OAP_IO) == SOAP_\n-001170c0: 494f 5f43 4855 4e4b 3c2f 636f 6465 3e20 IO_CHUNK
\n-001170d0: 746f 2073 6565 2069 6620 7468 6520 636c to see if the cl\n-001170e0: 6965 6e74 2061 6363 6570 7473 2063 6875 ient accepts chu\n-001170f0: 6e6b 696e 672e 204d 6f72 6520 696e 666f nking. More info\n-00117100: 726d 6174 696f 6e20 6162 6f75 7420 7374 rmation about st\n-00117110: 7265 616d 696e 6720 6368 756e 6b65 6420 reaming chunked \n-00117120: 4449 4d45 2063 616e 2062 6520 666f 756e DIME can be foun\n-00117130: 6420 696e 2053 6563 7469 6f6e 203c 6120 d in Section Stream\n-00117170: 696e 6720 6368 756e 6b65 6420 4449 4d45 ing chunked DIME\n-00117180: 3c2f 613e 202e 3c2f 703e 0a3c 646c 2063 .
..\n-00117340: 5374 7265 616d 696e 6720 6368 756e 6b65 Streaming chunke\n-00117350: 6420 4449 4d45 3c2f 6832 3e0a 3c70 3e54 d DIME
.__si\n-001174a0: 7a65 3c2f 636f 6465 3e20 6d65 6d62 6572 ze
member\n-001174b0: 206f 6620 616e 2061 7474 6163 686d 656e of an attachmen\n-001174c0: 7420 746f 207a 6572 6f20 616e 6420 656e t to zero and en\n-001174d0: 6162 6c65 2044 494d 4520 6368 756e 6b69 able DIME chunki\n-001174e0: 6e67 2e20 5468 6520 4449 4d45 203c 636f ng. The DIME so\n-001176e0: 6170 3a3a 6664 696d 6572 6561 643c 2f61 ap::fdimeread
should \n-00117700: 7265 7475 726e 2074 6865 2076 616c 7565 return the value\n-00117710: 206f 6620 7468 6520 6c61 7374 203c 636f of the last buf
#SOAP_IO_STORE<\n-001177d0: 2f63 6f64 653e 2066 6c61 672c 2062 7574 /code> flag, but\n-001177e0: 2074 6861 7420 6361 6e63 656c 7320 7468 that cancels th\n-001177f0: 6520 6265 6e65 6669 7473 206f 6620 7374 e benefits of st\n-00117800: 7265 616d 696e 6720 4449 4d45 2e3c 2f70 reaming DIME.
\n-00117870: 0a57 5344 4c20 6269 6e64 696e 6773 2066 .WSDL bindings f\n-00117880: 6f72 2044 494d 4520 6174 7461 6368 6d65 or DIME attachme\n-00117890: 6e74 733c 2f68 323e 0a3c 703e 5468 6520 nts
.x\n-00117a70: 7364 5f5f 6261 7365 3634 4269 6e61 7279 sd__base64Binary\n-00117a80: 3c2f 613e 3c2f 636f 6465 3e20 7374 7275
stru\n-00117a90: 6374 206f 7220 636c 6173 7320 666f 7220 ct or class for \n-00117aa0: 646f 6375 6d65 6e74 2f6c 6974 6572 616c document/literal\n-00117ab0: 206d 6573 7361 6769 6e67 2e3c 2f70 3e0a messaging..MTOM a\n-00117bc0: 7474 6163 686d 656e 7473 3c2f 6831 3e0a ttachments
.\n-00117bd0: 3c70 3e4d 544f 4d20 284d 6573 7361 6765 xop:Inclu\n-00117f50: 6465 3c2f 636f 6465 3e3c 2f65 6d3e 2069 de
i\n-00117f60: 7320 6465 6669 6e65 6420 696e 2074 6865 s defined in the\n-00117f70: 2069 6e74 6572 6661 6365 2068 6561 6465 interface heade\n-00117f80: 7220 6669 6c65 2061 7320 6120 3c63 6f64 r file as a import/\n-00118190: 786f 702e 683c 2f63 6f64 653e 3c2f 656d xop.h
file:i\n-00118fd0: 643c 2f63 6f64 653e 2c20 3c63 6f64 653e d
, \n-00118fe0: 7479 7065 3c2f 636f 6465 3e2c 2061 6e64 type
, and\n-00118ff0: 203c 636f 6465 3e6f 7074 696f 6e3c 2f63 option members ena\n-00119010: 626c 6520 4d54 4f4d 2061 7474 6163 686d ble MTOM attachm\n-00119020: 656e 7473 2066 6f72 2074 6865 2064 6174 ents for the dat\n-00119030: 6120 706f 696e 7465 6420 746f 2062 7920 a pointed to by \n-00119040: 3c63 6f64 653e 5f5f 7074 723c 2f63 6f64
__ptr of size
__size
. \n-00119070: 5468 6520 7072 6f63 6573 7320 666f 7220 The process for \n-00119080: 7365 6e64 696e 6720 616e 6420 7265 6365 sending and rece\n-00119090: 6976 696e 6720 4d54 4f4d 2058 4f50 2061 iving MTOM XOP a\n-001190a0: 7474 6163 686d 656e 7473 2069 7320 6675 ttachments is fu\n-001190b0: 6c6c 7920 6175 746f 6d61 7465 642e 2054 lly automated. T\n-001190c0: 6865 203c 636f 6465 3e69 643c 2f63 6f64 he id member refere\n-001190e0: 6e63 6573 2074 6865 2061 7474 6163 686d nces the attachm\n-001190f0: 656e 742c 2074 7970 6963 616c 6c79 2061 ent, typically a\n-00119100: 2063 6f6e 7465 6e74 2069 6420 4349 4420 content id CID \n-00119110: 6f72 2055 5549 4420 7768 6963 6820 6361 or UUID which ca\n-00119120: 6e20 6265 206f 6274 6169 6e65 6420 7769 n be obtained wi\n-00119130: 7468 203c 636f 6465 3e3c 6120 636c 6173 th
member can be \n-00119290: 7573 6564 2074 6f20 7069 6767 792d 6261 used to piggy-ba\n-001192a0: 636b 2064 6573 6372 6970 7469 7665 2074 ck descriptive t\n-001192b0: 6578 7420 7769 7468 2061 6e20 6174 7461 ext with an atta\n-001192c0: 6368 6d65 6e74 2e20 5468 6520 6f72 6465 chment. The orde\n-001192d0: 7220 6f66 2074 6865 2064 6563 6c61 7261 r of the declara\n-001192e0: 7469 6f6e 206f 6620 7468 6520 6d65 6d62 tion of the memb\n-001192f0: 6572 7320 6973 2073 6967 6e69 6669 6361 ers is significa\n-00119300: 6e74 2e3c 2f70 3e0a 3c70 3e59 6f75 2063 nt.soap_r\n-001191c0: 616e 645f 7575 6964 3c2f 613e 3c2f 636f and_uuid. When set to\n-001191e0: 204e 554c 4c2c 2061 2075 6e69 7175 6520 NULL, a unique \n-001191f0: 4349 4420 6973 2061 7574 6f6d 6174 6963 CID is automatic\n-00119200: 616c 6c79 2075 7365 642e 2054 6865 203c ally used. The <\n-00119210: 636f 6465 3e74 7970 653c 2f63 6f64 653e code>type
\n-00119220: 2066 6965 6c64 2073 7065 6369 6669 6573 field specifies\n-00119230: 2074 6865 2072 6571 7569 7265 6420 4d49 the required MI\n-00119240: 4d45 2074 7970 6520 6f66 2074 6865 2062 ME type of the b\n-00119250: 696e 6172 7920 6461 7461 2c20 616e 6420 inary data, and \n-00119260: 7468 6520 6f70 7469 6f6e 616c 203c 636f the optional x__myData\n-00119970: 5479 7065 3c2f 636f 6465 3e20 6973 2073 Type
is s\n-00119980: 6572 6961 6c69 7a65 6420 616e 6420 6569 erialized and ei\n-00119990: 7468 6572 206f 7220 626f 7468 2074 6865 ther or both the\n-001199a0: 203c 636f 6465 3e69 643c 2f63 6f64 653e id
\n-001199b0: 2061 6e64 203c 636f 6465 3e74 7970 653c and type<\n-001199c0: 2f63 6f64 653e 206d 656d 6265 7273 2061 /code> members a\n-001199d0: 7265 206e 6f6e 2d4e 554c 4c2c 2074 6865 re non-NULL, the\n-001199e0: 2064 6174 6120 6973 2074 7261 6e73 6d69 data is transmi\n-001199f0: 7474 6564 2061 7320 4d54 4f4d 204d 494d tted as MTOM MIM\n-00119a00: 4520 6174 7461 6368 6d65 6e74 2069 6620 E attachment if \n-00119a10: 7468 6520 3c63 6f64 653e 2353 4f41 505f the
#SOAP_\n-00119a20: 454e 435f 4d54 4f4d 3c2f 636f 6465 3e20 ENC_MTOM
\n-00119a30: 666c 6167 2069 7320 7365 7420 696e 2074 flag is set in t\n-00119a40: 6865 2067 534f 4150 2773 2073 6f61 7020 he gSOAP's soap \n-00119a50: 7374 7275 6374 2063 6f6e 7465 7874 3a3c struct context:<\n-00119a60: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>.#import\n-0011a370: 2026 7175 6f74 3b69 6d70 6f72 742f 786f "import/xo\n-0011a380: 702e 6826 7175 6f74 3b3c 2f73 7061 6e3e p.h"\n-0011a390: 203c 2f64 6976 3e0a 3c64 6976 2063 6c61 char *xmime5__con\n-0011a620: 7465 6e74 5479 7065 3b20 203c 7370 616e tentType; // and its cont\n-0011a650: 656e 7454 7970 6520 3c2f 7370 616e 3e3c entType <\n-0011a660: 2f64 6976 3e0a 3c64 6976 2063 6c61 7373 /div>.//gsoap x\n-0011a7d0: 2073 6572 7669 6365 206d 6574 686f 642d service method-\n-0011a7e0: 6d69 6d65 2d74 7970 653a 3c2f 636f 6465 mime-type:
directive indi\n-0011a800: 6361 7465 7320 7468 6174 2074 6869 7320 cates that this \n-0011a810: 6f70 6572 6174 696f 6e20 6163 6365 7074 operation accept\n-0011a820: 7320 3c65 6d3e 3c63 6f64 653e 7465 7874 s text\n-0011a830: 2f78 6d6c 3c2f 636f 6465 3e3c 2f65 6d3e /xml
\n-0011a840: 204d 494d 4520 6174 7461 6368 6d65 6e74 MIME attachment\n-0011a850: 732e 2053 6565 2074 6865 2053 4f41 502d s. See the SOAP-\n-0011a860: 7769 7468 2d41 7474 6163 686d 656e 7420 with-Attachment \n-0011a870: 7370 6563 6966 6963 6174 696f 6e20 666f specification fo\n-0011a880: 7220 7468 6520 4d49 4d45 2074 7970 6573 r the MIME types\n-0011a890: 2074 6f20 7573 6520 2866 6f72 2065 7861 to use (for exa\n-0011a8a0: 6d70 6c65 2c20 3c63 6f64 653e 2a2f 2a3c mple, */*<\n-0011a8b0: 2f63 6f64 653e 2069 7320 6120 7769 6c64 /code> is a wild\n-0011a8c0: 6361 7264 292e 2049 6620 7468 6520 6f70 card). If the op\n-0011a8d0: 6572 6174 696f 6e20 6861 7320 6d6f 7265 eration has more\n-0011a8e0: 2074 6861 6e20 6f6e 6520 6174 7461 6368 than one attach\n-0011a8f0: 6d65 6e74 2c20 6a75 7374 2072 6570 6561 ment, just repea\n-0011a900: 7420 7468 6973 2064 6972 6563 7469 7665 t this directive\n-0011a910: 2066 6f72 2065 6163 6820 6174 7461 6368 for each attach\n-0011a920: 6d65 6e74 2079 6f75 2077 616e 7420 746f ment you want to\n-0011a930: 2062 696e 6420 746f 2074 6865 206f 7065 bind to the ope\n-0011a940: 7261 7469 6f6e 2e3c 2f70 3e0a 3c70 3e54 ration.
\n-0011ac80: 3c2f 613e 0a53 656e 6469 6e67 2061 6e64 .Sending and\n-0011ac90: 2072 6563 6569 7669 6e67 204d 544f 4d20 receiving MTOM \n-0011aca0: 6174 7461 6368 6d65 6e74 733c 2f68 323e attachments
\n-0011acb0: 0a3c 703e 4120 7265 6365 6976 6572 206d .soap<\n-0011ad80: 2f63 6f64 653e 2063 6f6e 7465 7874 2e20 /code> context. \n-0011ad90: 4f74 6865 7277 6973 652c 2074 6865 2072 Otherwise, the r\n-0011ada0: 6567 756c 6172 204d 494d 4520 6174 7461 egular MIME atta\n-0011adb0: 6368 6d65 6e74 206d 6563 6861 6e69 736d chment mechanism\n-0011adc0: 2028 5377 4129 2077 696c 6c20 6265 2075 (SwA) will be u\n-0011add0: 7365 6420 746f 2073 746f 7265 2061 7474 sed to store att\n-0011ade0: 6163 686d 656e 7473 2e3c 2f70 3e0a 3c70 achments.
typemap.\n-0011aea0: 6461 743c 2f63 6f64 653e 3c2f 656d 3e20 dat
\n-0011aeb0: 6669 6c65 2064 6566 696e 6573 2074 6865 file defines the\n-0011aec0: 2058 4f50 206e 616d 6573 7061 6365 2061 XOP namespace a\n-0011aed0: 6e64 2058 4d4c 204d 494d 4520 6e61 6d65 nd XML MIME name\n-0011aee0: 7370 6163 6573 2061 7320 696d 706f 7274 spaces as import\n-0011aef0: 6564 206e 616d 6573 7061 6365 733a 203c ed namespaces: <\n-0011af00: 2f70 3e3c 7072 6520 636c 6173 733d 2266 /p>xop \n-0011af20: 3d20 266c 743b 6874 7470 3a2f 2f77 7777 = <http://www\n-0011af30: 2e77 332e 6f72 672f 3230 3034 2f30 382f .w3.org/2004/08/\n-0011af40: 786f 702f 696e 636c 7564 6526 6774 3b20 xop/include> \n-0011af50: 0a78 6d69 6d65 3520 3d20 266c 743b 6874 .xmime5 = <ht\n-0011af60: 7470 3a2f 2f77 7777 2e77 332e 6f72 672f tp://www.w3.org/\n-0011af70: 3230 3035 2f30 352f 786d 6c6d 696d 6526 2005/05/xmlmime&\n-0011af80: 6774 3b20 0a78 6d69 6d65 3420 3d20 266c gt; .xmime4 = &l\n-0011af90: 743b 6874 7470 3a2f 2f77 7777 2e77 332e t;http://www.w3.\n-0011afa0: 6f72 672f 3230 3034 2f31 312f 786d 6c6d org/2004/11/xmlm\n-0011afb0: 696d 6526 6774 3b0a 3c2f 7072 653e 3c70 ime>.
_xo\n-0011b110: 705f 5f49 6e63 6c75 6465 3c2f 613e 3c2f p__Include\n-0011b120: 636f 6465 3e20 656c 656d 656e 7420 746f code> element to\n-0011b130: 2068 616e 646c 6520 584f 5020 666f 7220 handle XOP for \n-0011b140: 4d54 4f4d 2e20 5468 6973 203c 636f 6465 MTOM. This
_xop__Inc\n-0011b1c0: 6c75 6465 3c2f 613e 3c2f 636f 6465 3e20 lude
\n-0011b1d0: 656c 656d 656e 7420 6973 2064 6566 696e element is defin\n-0011b1e0: 6564 2069 6e20 3c65 6d3e 3c63 6f64 653e ed in \n-0011b1f0: 786f 702e 683c 2f63 6f64 653e 3c2f 656d xop.h
. Therefore, th\n-0011b210: 6520 6269 6e64 696e 6773 2073 686f 776e e bindings shown\n-0011b220: 2061 626f 7665 2077 696c 6c20 6e6f 7420 above will not \n-0011b230: 7472 616e 736c 6174 6520 7468 6520 584f translate the XO\n-0011b240: 5020 616e 6420 584d 4c20 4d49 4d45 2073 P and XML MIME s\n-0011b250: 6368 656d 6173 2074 6f20 636f 6465 2c20 chemas to code, \n-0011b260: 6275 7420 6765 6e65 7261 7465 7320 3c63 but generates #import<\n-0011b3b0: 2f63 6f64 653e 2073 7461 7465 6d65 6e74 /code> statement\n-0011b3c0: 7320 6172 6520 6f6e 6c79 2061 6464 6564 s are only added\n-0011b3d0: 2066 6f72 2074 686f 7365 206e 616d 6573 for those names\n-0011b3e0: 7061 6365 7320 7468 6174 2061 7265 2061 paces that are a\n-0011b3f0: 6374 7561 6c6c 7920 7573 6564 2e3c 2f70 ctually used.
#im\n-0011b460: 706f 7274 2022 786f 702e 6822 3c2f 636f port \"xop.h\" from a WSDL \n-0011b480: 7468 6174 2072 6566 6572 656e 6365 7320 that references \n-0011b490: 584f 502c 2066 6f72 2065 7861 6d70 6c65 XOP, for example\n-0011b4a0: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 :
#import\n-0011b4f0: 2026 7175 6f74 3b78 6f70 2e68 2671 756f "xop.h&quo\n-0011b500: 743b 3c2f 7370 616e 3e20 3c2f 6469 763e t; struct ns__Data *in, \n-0011b780: 3c73 7061 6e20 636c 6173 733d 226b 6579 struct ns__Data *ou\n-0011b7b0: 7429 3b3c 2f64 6976 3e0a 3c2f 6469 763e t);xop\n-0011c190: 5f5f 496e 636c 7564 652e 7479 7065 3c2f __Include.type\n-0011c1a0: 636f 6465 3e20 6d65 6d62 6572 206d 7573 code> member mus\n-0011c1b0: 7420 6265 2073 6574 2074 6f20 7472 616e t be set to tran\n-0011c1c0: 736d 6974 204d 544f 4d20 6174 7461 6368 smit MTOM attach\n-0011c1d0: 6d65 6e74 732c 206f 7468 6572 7769 7365 ments, otherwise\n-0011c1e0: 2069 6e6c 696e 6520 6261 7365 3634 2058 inline base64 X\n-0011c1f0: 4d4c 2077 696c 6c20 6265 2073 656e 742e ML will be sent.\n-0011c200: 3c2f 703e 0a3c 703e 4174 2074 6865 2073
int ns__echoData(\n-0011c2d0: 3c73 7061 6e20 636c 6173 733d 226b 6579 struct soap<\n-0011c320: 2f61 3e20 2a3c 6120 636c 6173 733d 2263 /a> *soap\n-0011c350: 3c2f 613e 2c20 3c73 7061 6e20 636c 6173 , stru\n-0011c370: 6374 3c2f 7370 616e 3e20 6e73 5f5f 4461 ct ns__Da\n-0011c380: 7461 202a 696e 2c20 3c73 7061 6e20 636c ta *in, st\n-0011c3a0: 7275 6374 3c2f 7370 616e 3e20 6e73 5f5f ruct ns__\n-0011c3b0: 6461 7461 202a 6f75 7429 203c 2f64 6976 data *out) #SOAP_E\n-0011c500: 4e43 5f4d 544f 4d3c 2f63 6f64 653e 2066 NC_MTOM
f\n-0011c510: 6c61 6720 746f 2069 6e69 7469 616c 697a lag to initializ\n-0011c520: 6520 7468 6520 3c63 6f64 653e 3c61 2063 e the soap\n-0011c580: 3c2f 636f 6465 3e20 636f 6e74 6578 7420
context \n-0011c590: 746f 2072 6563 6569 7665 2061 6e64 2073 to receive and s\n-0011c5a0: 656e 6420 4d54 4f4d 2061 7474 6163 686d end MTOM attachm\n-0011c5b0: 656e 7473 2e3c 2f70 3e0a 3c70 3ef0 9f94 ents..St\n-0011c620: 7265 616d 696e 6720 4d49 4d45 2f4d 544f reaming MIME/MTO\n-0011c630: 4d3c 2f68 323e 0a3c 703e 5374 7265 616d M
.\n-0011c720: 0a3c 6c69 3e3c 636f 6465 3e76 6f69 6420 .
void \n-0011c730: 2a28 2a73 6f61 702e 666d 696d 6572 6561 *(*soap.fmimerea\n-0011c740: 646f 7065 6e29 2873 7472 7563 7420 736f dopen)(struct so\n-0011c750: 6170 202a 736f 6170 2c20 766f 6964 202a ap *soap, void *\n-0011c760: 6861 6e64 6c65 2c20 636f 6e73 7420 6368 handle, const ch\n-0011c770: 6172 202a 6964 2c20 636f 6e73 7420 6368 ar *id, const ch\n-0011c780: 6172 202a 7479 7065 2c20 636f 6e73 7420 ar *type, const \n-0011c790: 6368 6172 202a 6465 7363 7269 7074 696f char *descriptio\n-0011c7a0: 6e29 3c2f 636f 6465 3e20 5468 6973 2063 n)
This c\n-0011c7b0: 616c 6c62 6163 6b20 6973 2063 616c 6c65 allback is calle\n-0011c7c0: 6420 6279 2074 6865 2065 6e67 696e 6520 d by the engine \n-0011c7d0: 746f 2073 7461 7274 2073 656e 6469 6e67 to start sending\n-0011c7e0: 2061 2073 7472 6561 6d69 6e67 204d 494d a streaming MIM\n-0011c7f0: 452f 4d54 4f4d 2061 7474 6163 686d 656e E/MTOM attachmen\n-0011c800: 742e 2054 6869 7320 6361 6c6c 6261 636b t. This callback\n-0011c810: 206f 7065 6e73 2061 2073 7472 6561 6d20 opens a stream \n-0011c820: 746f 2073 7461 7274 2072 6561 6469 6e67 to start reading\n-0011c830: 2074 6865 2061 7474 6163 686d 656e 7420 the attachment \n-0011c840: 6461 7461 2074 6f20 7365 6e64 2e20 5468 data to send. Th\n-0011c850: 6520 6163 7475 616c 2064 6174 6120 7374 e actual data st\n-0011c860: 7265 616d 2077 696c 6c20 6265 2072 6561 ream will be rea\n-0011c870: 6420 696e 2063 6875 6e6b 7320 7573 696e d in chunks usin\n-0011c880: 6720 7468 6520 3c63 6f64 653e 3c61 2063 g the soap::fmimeread\n-0011c930: 3c2f 613e 3c2f 636f 6465 3e20 6361 6c6c
call\n-0011c940: 6261 636b 2075 6e74 696c 206e 6f20 6d6f back until no mo\n-0011c950: 7265 2064 6174 6120 6973 2061 7661 696c re data is avail\n-0011c960: 6162 6c65 2061 6e64 2074 6865 203c 636f able and the handle
p\n-0011ca70: 6172 616d 6574 6572 2063 6f6e 7461 696e arameter contain\n-0011ca80: 7320 7468 6520 7661 6c75 6520 6f66 2074 s the value of t\n-0011ca90: 6865 203c 636f 6465 3e5f 5f70 7472 3c2f he __ptr\n-0011caa0: 636f 6465 3e20 6d65 6d62 6572 2076 6172 code> member var\n-0011cab0: 6961 626c 6520 6f66 2074 6865 2061 7474 iable of the att\n-0011cac0: 6163 686d 656e 7420 7374 7275 6374 2f63 achment struct/c\n-0011cad0: 6c61 7373 2077 6974 6820 6461 7461 2028 lass with data (\n-0011cae0: 652e 672e 203c 636f 6465 3e3c 6120 636c e.g.
members of the\n-0011cd50: 2061 7474 6163 686d 656e 7420 7374 7275 attachment stru\n-0011cd60: 6374 2f63 6c61 7373 2073 686f 756c 6420 ct/class should \n-0011cd70: 6861 7665 2062 6565 6e20 7365 7420 6279 have been set by\n-0011cd80: 2074 6865 2061 7070 6c69 6361 7469 6f6e the application\n-0011cd90: 2070 7269 6f72 2074 6f20 7468 6520 7365 prior to the se\n-0011cda0: 7269 616c 697a 6174 696f 6e20 6f66 2074 rialization of t\n-0011cdb0: 6865 206d 6573 7361 6765 2077 6974 6820 he message with \n-0011cdc0: 6174 7461 6368 6d65 6e74 732e 2049 6620 attachments. If \n-0011cdd0: 7468 6520 3c63 6f64 653e 5f5f 7369 7a65 the xsd__ba\n-0011cb60: 7365 3634 4269 6e61 7279 3c2f 613e 3c2f se64Binary\n-0011cb70: 636f 6465 3e20 6f72 203c 636f 6465 3e3c code> or
a\n-0011cc50: 6e64 203c 636f 6465 3e6f 7074 696f 6e73 nd <\n-0011cb80: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0011cb90: 663d 2273 7472 7563 745f 5f78 6f70 5f5f f=\"struct__xop__\n-0011cba0: 5f5f 5f69 6e63 6c75 6465 2e68 746d 6c22 ___include.html\"\n-0011cbb0: 2074 6974 6c65 3d22 584f 5020 696e 636c title=\"XOP incl\n-0011cbc0: 7564 6520 7374 7275 6374 7572 6520 7769 ude structure wi\n-0011cbd0: 7468 2061 7474 6163 686d 656e 7420 6461 th attachment da\n-0011cbe0: 7461 2e22 3e5f 786f 705f 5f49 6e63 6c75 ta.\">_xop__Inclu\n-0011cbf0: 6465 3c2f 613e 3c2f 636f 6465 3e20 7769 de
wi\n-0011cc00: 7468 203c 636f 6465 3e5f 5f70 7472 3c2f th __ptr\n-0011cc10: 636f 6465 3e2c 203c 636f 6465 3e5f 5f73 code>,
, __s\n-0011cc20: 697a 653c 2f63 6f64 653e 2c20 3c63 6f64 ize
, options\n-0011cc60: 3c2f 636f 6465 3e20 6d65 6d62 6572 7329
members)\n-0011cc70: 2c20 7768 6963 6820 7368 6f75 6c64 2062 , which should b\n-0011cc80: 6520 6120 706f 696e 7465 7220 746f 2073 e a pointer to s\n-0011cc90: 7065 6369 6669 6320 696e 666f 726d 6174 pecific informat\n-0011cca0: 696f 6e20 7375 6368 2061 7320 6120 6669 ion such as a fi\n-0011ccb0: 6c65 2064 6573 6372 6970 746f 7220 6f72 le descriptor or\n-0011ccc0: 2061 2070 6f69 6e74 6572 2074 6f20 6120 a pointer to a \n-0011ccd0: 736f 6d65 2061 7070 6c69 6361 7469 6f6e some application\n-0011cce0: 2d73 7065 6369 6669 6320 6461 7461 2074 -specific data t\n-0011ccf0: 6f20 6265 2070 6173 7365 6420 746f 2074 o be passed to t\n-0011cd00: 6869 7320 6361 6c6c 6261 636b 2e20 426f his callback. Bo\n-0011cd10: 7468 2074 6865 203c 636f 6465 3e5f 5f70 th the __p\n-0011cd20: 7472 3c2f 636f 6465 3e20 616e 6420 3c63 tr
and __size\n-0011cde0: 3c2f 636f 6465 3e20 6973 207a 6572 6f20
is zero \n-0011cdf0: 616e 6420 4854 5450 2063 6875 6e6b 696e and HTTP chunkin\n-0011ce00: 6720 6973 2065 6e61 626c 6564 2028 7769 g is enabled (wi\n-0011ce10: 7468 203c 636f 6465 3e23 534f 4150 5f49 th #SOAP_I\n-0011ce20: 4f5f 4348 554e 4b3c 2f63 6f64 653e 292c O_CHUNK
),\n-0011ce30: 2074 6865 6e20 6368 756e 6b65 6420 4d49 then chunked MI\n-0011ce40: 4d45 2f4d 544f 4d20 6174 7461 6368 6d65 ME/MTOM attachme\n-0011ce50: 6e74 7320 6172 6520 7365 6e74 2c20 7365 nts are sent, se\n-0011ce60: 6520 3c63 6f64 653e 3c61 2063 6c61 7373 e soa\n-0011cf00: 703a 3a66 6d69 6d65 7265 6164 3c2f 613e p::fmimeread\n-0011cf10: 3c2f 636f 6465 3e2e 2054 6865 203c 636f
. The option\n-0011cf50: 733c 2f63 6f64 653e 2070 6172 616d 6574 s
paramet\n-0011cf60: 6572 7320 6172 6520 7468 6520 3c63 6f64 ers are the options<\n-0011cfc0: 2f63 6f64 653e 2028 6120 6465 7363 7269 /code> (a descri\n-0011cfd0: 7074 6976 6520 7374 7269 6e67 2920 6f66 ptive string) of\n-0011cfe0: 2074 6865 2061 7474 6163 686d 656e 7420 the attachment \n-0011cff0: 7374 7275 6374 2f63 6c61 7373 2c20 7265 struct/class, re\n-0011d000: 7370 6563 7469 7665 6c79 2c20 6f66 2077 spectively, of w\n-0011d010: 6869 6368 2061 7420 6c65 6173 7420 6f6e hich at least on\n-0011d020: 6520 6d65 6d62 6572 2073 686f 756c 6420 e member should \n-0011d030: 6265 206e 6f6e 2d4e 554c 4c2e 2054 6865 be non-NULL. The\n-0011d040: 2063 616c 6c62 6163 6b20 7368 6f75 6c64 callback should\n-0011d050: 2072 6574 7572 6e20 7468 6520 3c63 6f64 return the
\n-0011d070: 7061 7261 6d65 7465 7220 7661 6c75 6520 parameter value \n-0011d080: 6f72 2061 6e6f 7468 6572 2070 6f69 6e74 or another point\n-0011d090: 6572 2076 616c 7565 2c20 7768 6963 6820 er value, which \n-0011d0a0: 6973 2070 6173 7365 6420 6173 2074 6865 is passed as the\n-0011d0b0: 206e 6577 203c 636f 6465 3e68 616e 646c new handl\n-0011d0c0: 653c 2f63 6f64 653e 2070 6172 616d 6574 e
paramet\n-0011d0d0: 6572 2074 6f20 3c63 6f64 653e 3c61 2063 er to soap::fmimeread\n-0011d180: 3c2f 613e 3c2f 636f 6465 3e20 616e 6420
and \n-0011d190: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 soap::fmimerea\n-0011d240: 6463 6c6f 7365 3c2f 613e 3c2f 636f 6465 dclose
callbacks. Whe\n-0011d260: 6e20 616e 2065 7272 6f72 206f 6363 7572 n an error occur\n-0011d270: 7265 6420 696e 2074 6869 7320 6361 6c6c red in this call\n-0011d280: 6261 636b 2c20 7468 6520 6361 6c6c 6261 back, the callba\n-0011d290: 636b 2073 686f 756c 6420 7265 7475 726e ck should return\n-0011d2a0: 204e 554c 4c20 616e 6420 7365 7420 3c63 NULL and set <\n-0011d480: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0011d490: 663d 2273 7472 7563 7473 6f61 702e 6874 f=\"structsoap.ht\n-0011d4a0: 6d6c 2361 6238 3566 3564 3432 3730 3239 ml#ab85f5d427029\n-0011d4b0: 3633 6431 3365 6135 3430 6264 3938 3736 63d13ea540bd9876\n-0011d4c0: 6536 6432 2220 7469 746c 653d 2254 6865 e6d2\" title=\"The\n-0011d4d0: 2073 6f61 7020 636f 6e74 6578 7420 736f soap context so\n-0011d4e0: 6170 5f73 7461 7475 7320 2869 6e74 2920 ap_status (int) \n-0011d4f0: 6572 726f 7220 636f 6465 206f 6620 7468 error code of th\n-0011d500: 6520 6c61 7374 206f 7065 7261 7469 6f6e e last operation\n-0011d510: 206f 7220 2353 4f41 505f 4f4b 2028 7a65 or #SOAP_OK (ze\n-0011d520: 726f 2922 3e73 6f61 703a 3a65 7272 6f72 ro)\">soap::error\n-0011d530: 3c2f 613e 3c2f 636f 6465 3e20 746f 203c
to <\n-0011d540: 636f 6465 3e23 534f 4150 5f4f 4b3c 2f63 code>#SOAP_OKsize_t\n-0011d5d0: 2028 2a73 6f61 702e 666d 696d 6572 6561 (*soap.fmimerea\n-0011d5e0: 6429 2873 7472 7563 7420 736f 6170 202a d)(struct soap *\n-0011d5f0: 736f 6170 2c20 766f 6964 202a 6861 6e64 soap, void *hand\n-0011d600: 6c65 2c20 6368 6172 202a 6275 662c 2073 le, char *buf, s\n-0011d610: 697a 655f 7420 6c65 6e29 3c2f 636f 6465 ize_t len)
This callback \n-0011d630: 6973 2063 616c 6c65 6420 6279 2074 6865 is called by the\n-0011d640: 2065 6e67 696e 6520 746f 2072 6561 6420 engine to read \n-0011d650: 6120 6368 756e 6b20 6f66 2061 7474 6163 a chunk of attac\n-0011d660: 686d 656e 7420 6461 7461 2074 6f20 7472 hment data to tr\n-0011d670: 616e 736d 6974 2e20 5468 6520 3c63 6f64 ansmit. The len
\n-0011d7d0: 2069 6e74 6f20 7768 6963 6820 6120 6368 into which a ch\n-0011d7e0: 756e 6b20 6f66 2064 6174 6120 7368 6f75 unk of data shou\n-0011d7f0: 6c64 2062 6520 7772 6974 7465 6e20 6279 ld be written by\n-0011d800: 2074 6865 2063 616c 6c62 6163 6b2e 2054 the callback. T\n-0011d810: 6865 2061 6374 7561 6c20 616d 6f75 6e74 he actual amount\n-0011d820: 206f 6620 6461 7461 2077 7269 7474 656e of data written\n-0011d830: 2069 6e74 6f20 7468 6520 6275 6666 6572 into the buffer\n-0011d840: 206d 6179 2062 6520 6c65 7373 2074 6861 may be less tha\n-0011d850: 6e20 3c63 6f64 653e 6c65 6e3c 2f63 6f64 n len
__size\n-0011d9b0: 636f 6465 3e20 6d65 6d62 6572 2076 6172 code> member var\n-0011d9c0: 6961 626c 6520 6f66 2074 6865 2061 7474 iable of the att\n-0011d9d0: 6163 686d 656e 7420 7374 7275 6374 2f63 achment struct/c\n-0011d9e0: 6c61 7373 2077 6974 6820 6461 7461 2028 lass with data (\n-0011d9f0: 652e 672e 203c 636f 6465 3e3c 6120 636c e.g.
b\n-0011df00: 7974 6573 2075 6e6c 6573 7320 7468 6520 ytes unless the \n-0011df10: 6c61 7374 2064 6174 6120 6368 756e 6b20 last data chunk \n-0011df20: 6973 2072 6561 6368 6564 2061 6e64 2066 is reached and f\n-0011df30: 6577 6572 2062 7974 6573 2061 7265 2072 ewer bytes are r\n-0011df40: 6574 7572 6e65 642e 3c2f 6c69 3e0a 3c6c eturned.xsd__ba\n-0011da70: 7365 3634 4269 6e61 7279 3c2f 613e 3c2f se64Binary\n-0011da80: 636f 6465 3e20 6f72 203c 636f 6465 3e3c code> or
a\n-0011db60: 6e64 203c 636f 6465 3e6f 7074 696f 6e73 nd <\n-0011da90: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0011daa0: 663d 2273 7472 7563 745f 5f78 6f70 5f5f f=\"struct__xop__\n-0011dab0: 5f5f 5f69 6e63 6c75 6465 2e68 746d 6c22 ___include.html\"\n-0011dac0: 2074 6974 6c65 3d22 584f 5020 696e 636c title=\"XOP incl\n-0011dad0: 7564 6520 7374 7275 6374 7572 6520 7769 ude structure wi\n-0011dae0: 7468 2061 7474 6163 686d 656e 7420 6461 th attachment da\n-0011daf0: 7461 2e22 3e5f 786f 705f 5f49 6e63 6c75 ta.\">_xop__Inclu\n-0011db00: 6465 3c2f 613e 3c2f 636f 6465 3e20 7769 de
wi\n-0011db10: 7468 203c 636f 6465 3e5f 5f70 7472 3c2f th __ptr\n-0011db20: 636f 6465 3e2c 203c 636f 6465 3e5f 5f73 code>,
, __s\n-0011db30: 697a 653c 2f63 6f64 653e 2c20 3c63 6f64 ize
, options\n-0011db70: 3c2f 636f 6465 3e20 6d65 6d62 6572 7329
members)\n-0011db80: 2073 686f 756c 6420 6265 2073 6574 2062 should be set b\n-0011db90: 7920 7468 6520 6170 706c 6963 6174 696f y the applicatio\n-0011dba0: 6e20 7072 696f 7220 746f 2074 6865 2073 n prior to the s\n-0011dbb0: 6572 6961 6c69 7a61 7469 6f6e 206f 6620 erialization of \n-0011dbc0: 7468 6520 6d65 7373 6167 6520 7769 7468 the message with\n-0011dbd0: 2061 7474 6163 686d 656e 7473 2e20 5468 attachments. Th\n-0011dbe0: 6520 7661 6c75 6520 6f66 203c 636f 6465 e value of __size
i\n-0011dc00: 6e64 6963 6174 6573 2074 6865 2074 6f74 ndicates the tot\n-0011dc10: 616c 2073 697a 6520 6f66 2074 6865 2061 al size of the a\n-0011dc20: 7474 6163 686d 656e 7420 6461 7461 2074 ttachment data t\n-0011dc30: 6f20 6265 2074 7261 6e73 6d69 7474 6564 o be transmitted\n-0011dc40: 2e20 4966 2074 6865 203c 636f 6465 3e5f . If the _\n-0011dc50: 5f73 697a 653c 2f63 6f64 653e 206d 656d _size
mem\n-0011dc60: 6265 7220 7661 7269 6162 6c65 2069 7320 ber variable is \n-0011dc70: 7a65 726f 2061 6e64 2048 5454 5020 6368 zero and HTTP ch\n-0011dc80: 756e 6b69 6e67 2069 7320 656e 6162 6c65 unking is enable\n-0011dc90: 6420 2877 6974 6820 3c63 6f64 653e 2353 d (with #S\n-0011dca0: 4f41 505f 494f 5f43 4855 4e4b 3c2f 636f OAP_IO_CHUNK), then MIME/\n-0011dcc0: 4d54 4f4d 2063 6875 6e6b 6564 2074 7261 MTOM chunked tra\n-0011dcd0: 6e73 6665 7273 2061 7265 2061 6374 6976 nsfers are activ\n-0011dce0: 6174 6564 2062 7920 7468 6520 656e 6769 ated by the engi\n-0011dcf0: 6e65 2c20 7768 6963 6820 6973 206d 6f72 ne, which is mor\n-0011dd00: 6520 666c 6578 6962 6c65 2073 696e 6365 e flexible since\n-0011dd10: 2074 6865 2061 7474 6163 686d 656e 7420 the attachment \n-0011dd20: 6461 7461 2073 697a 6520 646f 6573 206e data size does n\n-0011dd30: 6f74 206e 6565 6420 746f 2062 6520 6465 ot need to be de\n-0011dd40: 7465 726d 696e 6564 2069 6e20 6164 7661 termined in adva\n-0011dd50: 6e63 652e 2054 6f20 7573 6520 4d49 4d45 nce. To use MIME\n-0011dd60: 2f4d 544f 4d20 6368 756e 6b65 6420 7472 /MTOM chunked tr\n-0011dd70: 616e 7366 6572 732c 2065 6e61 626c 6520 ansfers, enable \n-0011dd80: 4854 5450 2063 6875 6e6b 696e 6720 7769 HTTP chunking wi\n-0011dd90: 7468 203c 636f 6465 3e23 534f 4150 5f49 th
\n-0011de40: 206d 656d 6265 7220 7661 7269 6162 6c65 member variable\n-0011de50: 206f 6620 7468 6520 6174 7461 6368 6d65 of the attachme\n-0011de60: 6e74 2073 7472 7563 742f 636c 6173 7320 nt struct/class \n-0011de70: 746f 207a 6572 6f2e 2057 6865 6e20 4d49 to zero. When MI\n-0011de80: 4d45 2f4d 544f 4d20 6174 7461 6368 6d65 ME/MTOM attachme\n-0011de90: 6e74 2063 6875 6e6b 696e 6720 6973 2065 nt chunking is e\n-0011dea0: 6e61 626c 6564 2c20 7468 6973 2063 616c nabled, this cal\n-0011deb0: 6c62 6163 6b20 7368 6f75 6c64 2063 6f6d lback should com\n-0011dec0: 706c 6574 656c 7920 6669 6c6c 2074 6865 pletely fill the\n-0011ded0: 203c 636f 6465 3e62 7566 3c2f 636f 6465 #SOAP_I\n-0011dda0: 4f5f 4348 554e 4b3c 2f63 6f64 653e 2028 O_CHUNK
(\n-0011ddb0: 616c 736f 203c 636f 6465 3e23 534f 4150 also #SOAP\n-0011ddc0: 5f49 4f5f 5354 4f52 453c 2f63 6f64 653e _IO_STORE
\n-0011ddd0: 2063 616e 2062 6520 7573 6564 2c20 6275 can be used, bu\n-0011dde0: 7420 7468 6973 2062 7566 6665 7273 2074 t this buffers t\n-0011ddf0: 6865 2065 6e74 6972 6520 6d65 7373 6167 he entire messag\n-0011de00: 6520 696e 206d 656d 6f72 7920 6265 666f e in memory befo\n-0011de10: 7265 2074 7261 6e73 6d69 7373 696f 6e29 re transmission)\n-0011de20: 2061 6e64 2073 6574 2074 6865 203c 636f and set the buf
buffer with void (*s\n-0011df60: 6f61 702e 666d 696d 6572 6561 6463 6c6f oap.fmimereadclo\n-0011df70: 7365 2928 7374 7275 6374 2073 6f61 7020 se)(struct soap \n-0011df80: 2a73 6f61 702c 2076 6f69 6420 2a68 616e *soap, void *han\n-0011df90: 646c 6529 3c2f 636f 6465 3e20 5468 6973 dle)
This\n-0011dfa0: 2063 616c 6c62 6163 6b20 6973 2063 616c callback is cal\n-0011dfb0: 6c65 6420 6279 2074 6865 2065 6e67 696e led by the engin\n-0011dfc0: 6520 746f 2063 6c6f 7365 2074 6865 204d e to close the M\n-0011dfd0: 494d 452f 4d54 4f4d 2061 7474 6163 686d IME/MTOM attachm\n-0011dfe0: 656e 7420 7374 7265 616d 2061 6674 6572 ent stream after\n-0011dff0: 2072 6561 6469 6e67 2e20 5468 6520 3c63 reading. The soap::fmimerea\n-0011e0f0: 646f 7065 6e3c 2f61 3e3c 2f63 6f64 653e dopen
\n-0011e100: 2063 616c 6c62 6163 6b2e 3c2f 6c69 3e0a callback..\n-0011e110: 3c6c 693e 3c63 6f64 653e 766f 6964 202a void *\n-0011e120: 282a 736f 6170 2e66 6d69 6d65 7772 6974 (*soap.fmimewrit\n-0011e130: 656f 7065 6e29 2873 7472 7563 7420 736f eopen)(struct so\n-0011e140: 6170 202a 736f 6170 2c20 766f 6964 202a ap *soap, void *\n-0011e150: 6861 6e64 6c65 2c20 636f 6e73 7420 6368 handle, const ch\n-0011e160: 6172 202a 6964 2c20 636f 6e73 7420 6368 ar *id, const ch\n-0011e170: 6172 202a 7479 7065 2c20 636f 6e73 7420 ar *type, const \n-0011e180: 6368 6172 202a 6465 7363 7269 7074 696f char *descriptio\n-0011e190: 6e2c 2065 6e75 6d20 736f 6170 5f6d 696d n, enum soap_mim\n-0011e1a0: 655f 656e 636f 6469 6e67 2065 6e63 6f64 e_encoding encod\n-0011e1b0: 696e 6729 3c2f 636f 6465 3e20 4361 6c6c ing)
Call\n-0011e1c0: 6564 2062 7920 7468 6520 746f 2073 7461 ed by the to sta\n-0011e1d0: 7274 2072 6563 6569 7669 6e67 2061 2073 rt receiving a s\n-0011e1e0: 7472 6561 6d69 6e67 204d 494d 452f 4d54 treaming MIME/MT\n-0011e1f0: 4f4d 2061 7474 6163 686d 656e 742e 2054 OM attachment. T\n-0011e200: 6869 7320 6361 6c6c 6261 636b 206f 7065 his callback ope\n-0011e210: 6e73 2061 2073 7472 6561 6d20 746f 2073 ns a stream to s\n-0011e220: 7461 7274 2077 7269 7469 6e67 2074 6865 tart writing the\n-0011e230: 2061 7474 6163 686d 656e 7420 6461 7461 attachment data\n-0011e240: 2072 6563 6569 7665 642e 2054 6865 2061 received. The a\n-0011e250: 6374 7561 6c20 6461 7461 2073 7472 6561 ctual data strea\n-0011e260: 6d20 7769 6c6c 2062 6520 7772 6974 7465 m will be writte\n-0011e270: 6e20 696e 2063 6875 6e6b 7320 7573 696e n in chunks usin\n-0011e280: 6720 7468 6520 3c63 6f64 653e 3c61 2063 g the soa\n-0011e320: 703a 3a66 6d69 6d65 7772 6974 653c 2f61 p::fmimewrite
callbac\n-0011e340: 6b20 756e 7469 6c20 6e6f 206d 6f72 6520 k until no more \n-0011e350: 6461 7461 2069 7320 6176 6169 6c61 626c data is availabl\n-0011e360: 6520 616e 6420 7468 6520 3c63 6f64 653e e and the \n-0011e370: 3c61 2063 6c61 7373 3d22 656c 2220 6872 soap\n-0011e410: 3a3a 666d 696d 6577 7269 7465 636c 6f73 ::fmimewriteclos\n-0011e420: 653c 2f61 3e3c 2f63 6f64 653e 2063 616c e
cal\n-0011e430: 6c62 6163 6b20 6973 2063 616c 6c65 6420 lback is called \n-0011e440: 746f 2063 6c6f 7365 2074 6865 2073 7472 to close the str\n-0011e450: 6561 6d2e 2054 6865 203c 636f 6465 3e69 eam. The i\n-0011e460: 643c 2f63 6f64 653e 2c20 3c63 6f64 653e d
, \n-0011e470: 7479 7065 3c2f 636f 6465 3e20 616e 6420 type
and \n-0011e480: 3c63 6f64 653e 6f70 7469 6f6e 733c 2f63 options
id\n-0011e4b0: 3c2f 636f 6465 3e2c 203c 636f 6465 3e74
, t\n-0011e4c0: 7970 653c 2f63 6f64 653e 2061 6e64 203c ype
and <\n-0011e4d0: 636f 6465 3e6f 7074 696f 6e73 3c2f 636f code>options of the attac\n-0011e4f0: 686d 656e 7420 7374 7275 6374 2f63 6c61 hment struct/cla\n-0011e500: 7373 2028 652e 672e 203c 636f 6465 3e3c ss (e.g. <\n-0011e510: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0011e520: 663d 2273 7472 7563 7478 7364 5f5f 5f5f f=\"structxsd____\n-0011e530: 6261 7365 3634 5f62 696e 6172 792e 6874 base64_binary.ht\n-0011e540: 6d6c 2220 7469 746c 653d 2258 5344 2062 ml\" title=\"XSD b\n-0011e550: 6173 6536 3442 696e 6172 7920 7374 7275 ase64Binary stru\n-0011e560: 6374 7572 6520 7769 7468 2061 7474 6163 cture with attac\n-0011e570: 686d 656e 7420 6461 7461 2e22 3e78 7364 hment data.\">xsd\n-0011e580: 5f5f 6261 7365 3634 4269 6e61 7279 3c2f __base64Binary\n-0011e590: 613e 3c2f 636f 6465 3e20 6f72 203c 636f a>
or __p\n-0011e630: 7472 3c2f 636f 6465 3e2c 203c 636f 6465 tr
, __size
, \n-0011e650: 3c63 6f64 653e 6964 3c2f 636f 6465 3e2c id
,\n-0011e660: 203c 636f 6465 3e74 7970 653c 2f63 6f64 type and
opt\n-0011e680: 696f 6e73 3c2f 636f 6465 3e20 6d65 6d62 ions
memb\n-0011e690: 6572 7329 2c20 7265 7370 6563 7469 7665 ers), respective\n-0011e6a0: 6c79 2e20 5468 6520 6361 6c6c 6261 636b ly. The callback\n-0011e6b0: 2073 686f 756c 6420 7265 7475 726e 2061 should return a\n-0011e6c0: 2068 616e 646c 652c 2077 6869 6368 2069 handle, which i\n-0011e6d0: 7320 7061 7373 6564 2074 6f20 7468 6520 s passed to the \n-0011e6e0: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 soap::fmi\n-0011e780: 6d65 7772 6974 653c 2f61 3e3c 2f63 6f64 mewrite and
c\n-0011ee10: 616c 6c62 6163 6b2e 3c2f 6c69 3e0a 3c2f allback..\n-0011ee20: 756c 3e0a 3c70 3e49 6e20 6164 6469 7469 ul>.soap::f\n-0011e840: 6d69 6d65 7772 6974 6563 6c6f 7365 3c2f mimewriteclose\n-0011e850: 613e 3c2f 636f 6465 3e20 6361 6c6c 6261 a>
callba\n-0011e860: 636b 732e 2054 6865 203c 636f 6465 3e5f cks. The _\n-0011e870: 5f70 7472 3c2f 636f 6465 3e20 6d65 6d62 _ptr
memb\n-0011e880: 6572 2076 6172 6961 626c 6520 6f66 2074 er variable of t\n-0011e890: 6865 2061 7474 6163 686d 656e 7420 7374 he attachment st\n-0011e8a0: 7275 6374 2f63 6c61 7373 2069 7320 7365 ruct/class is se\n-0011e8b0: 7420 6279 2074 6865 2065 6e67 696e 6520 t by the engine \n-0011e8c0: 746f 2074 6865 2076 616c 7565 206f 6620 to the value of \n-0011e8d0: 7468 6973 2068 616e 646c 652e 2054 6865 this handle. The\n-0011e8e0: 203c 636f 6465 3e5f 5f73 697a 653c 2f63 __size member vari\n-0011e900: 6162 6c65 2069 7320 7365 7420 746f 2074 able is set to t\n-0011e910: 6865 2073 697a 6520 6f66 2074 6865 2061 he size of the a\n-0011e920: 7474 6163 686d 656e 7420 7265 6365 6976 ttachment receiv\n-0011e930: 6564 2e3c 2f6c 693e 0a3c 6c69 3e3c 636f ed..
T\n-0011e9a0: 6869 7320 6361 6c6c 6261 636b 2069 7320 his callback is \n-0011e9b0: 6361 6c6c 6564 2062 7920 7468 6520 656e called by the en\n-0011e9c0: 6769 6e65 2074 6f20 7772 6974 6520 6120 gine to write a \n-0011e9d0: 6368 756e 6b20 6f66 2061 7474 6163 686d chunk of attachm\n-0011e9e0: 656e 7420 6461 7461 2072 6563 6569 7665 ent data receive\n-0011e9f0: 642e 2054 6865 203c 636f 6465 3e68 616e d. The han\n-0011ea00: 646c 653c 2f63 6f64 653e 2070 6172 616d dle
param\n-0011ea10: 6574 6572 2063 6f6e 7461 696e 7320 7468 eter contains th\n-0011ea20: 6520 6861 6e64 6c65 2072 6574 7572 6e65 e handle returne\n-0011ea30: 6420 6279 2074 6865 203c 636f 6465 3e3c d by the <\n-0011ea40: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0011ea50: 663d 2267 726f 7570 5f5f 6772 6f75 705f f=\"group__group_\n-0011ea60: 5f63 616c 6c62 6163 6b73 2e68 746d 6c23 _callbacks.html#\n-0011ea70: 6761 6566 3830 3962 3237 3566 6436 3565 gaef809b275fd65e\n-0011ea80: 3537 3939 3161 3830 3636 3332 3838 6661 57991a80663288fa\n-0011ea90: 3732 2220 7469 746c 653d 2243 616c 6c62 72\" title=\"Callb\n-0011eaa0: 6163 6b20 746f 206f 7065 6e20 6120 7374 ack to open a st\n-0011eab0: 7265 616d 696e 6720 4d49 4d45 2f4d 544f reaming MIME/MTO\n-0011eac0: 4d20 6174 7461 6368 6d65 6e74 2066 6f72 M attachment for\n-0011ead0: 2077 7269 7469 6e67 2e22 3e73 6f61 703a writing.\">soap:\n-0011eae0: 3a66 6d69 6d65 7772 6974 656f 7065 6e3c :fmimewriteopen<\n-0011eaf0: 2f61 3e3c 2f63 6f64 653e 2063 616c 6c62 /a>
callb\n-0011eb00: 6163 6b2e 2054 6865 203c 636f 6465 3e62 ack. The b\n-0011eb10: 7566 3c2f 636f 6465 3e20 7061 7261 6d65 uf
parame\n-0011eb20: 7465 7220 636f 6e74 6169 6e73 2074 6865 ter contains the\n-0011eb30: 2064 6174 6120 6f66 206c 656e 6774 6820 data of length \n-0011eb40: 3c63 6f64 653e 6c65 6e3c 2f63 6f64 653e len
\n-0011eb50: 2e20 5265 7475 726e 7320 3c63 6f64 653e . Returns \n-0011eb60: 2353 4f41 505f 4f4b 3c2f 636f 6465 3e20 #SOAP_OK
\n-0011eb70: 6f72 2061 203c 636f 6465 3e3c 6120 636c or a soap\n-0011ec30: 5f73 7461 7475 733c 2f61 3e3c 2f63 6f64 _status (int) error c\n-0011ec50: 6f64 652e 3c2f 6c69 3e0a 3c6c 693e 3c63 ode..
This ca\n-0011ecb0: 6c6c 6261 636b 2069 7320 6361 6c6c 6564 llback is called\n-0011ecc0: 2062 7920 7468 6520 656e 6769 6e65 2074 by the engine t\n-0011ecd0: 6f20 636c 6f73 6520 7468 6520 4d49 4d45 o close the MIME\n-0011ece0: 2f4d 544f 4d20 6174 7461 6368 6d65 6e74 /MTOM attachment\n-0011ecf0: 2073 7472 6561 6d20 6166 7465 7220 7772 stream after wr\n-0011ed00: 6974 696e 672e 2054 6865 203c 636f 6465 iting. The handle
p\n-0011ed20: 6172 616d 6574 6572 2063 6f6e 7461 696e arameter contain\n-0011ed30: 7320 7468 6520 6861 6e64 6c65 2072 6574 s the handle ret\n-0011ed40: 7572 6e65 6420 6279 2074 6865 203c 636f urned by the void\n-0011ee40: 2a20 3c61 2063 6c61 7373 3d22 656c 2220 * soap::\n-0011ef00: 7573 6572 3c2f 613e 3c2f 636f 6465 3e20 user
\n-0011ef10: 6d65 6d62 6572 2069 7320 6176 6169 6c61 member is availa\n-0011ef20: 626c 6520 746f 2070 6173 7320 7573 6572 ble to pass user\n-0011ef30: 2d64 6566 696e 6564 2064 6174 6120 746f -defined data to\n-0011ef40: 2074 6865 2063 616c 6c62 6163 6b73 2e20 the callbacks. \n-0011ef50: 5468 6973 2077 6179 2c20 796f 7520 6361 This way, you ca\n-0011ef60: 6e20 7365 7420 3c63 6f64 653e 766f 6964 n set void\n-0011ef70: 2a20 3c61 2063 6c61 7373 3d22 656c 2220 * soap::\n-0011f030: 7573 6572 3c2f 613e 3c2f 636f 6465 3e20 user
\n-0011f040: 746f 2070 6f69 6e74 2074 6f20 6170 706c to point to appl\n-0011f050: 6963 6174 696f 6e20 6461 7461 2074 6861 ication data tha\n-0011f060: 7420 7468 6520 6361 6c6c 6261 636b 7320 t the callbacks \n-0011f070: 6e65 6564 2073 7563 6820 6173 2061 2066 need such as a f\n-0011f080: 696c 6520 6e61 6d65 2066 6f72 2065 7861 ile name for exa\n-0011f090: 6d70 6c65 2e3c 2f70 3e0a 3c70 3e54 6865 mple.const\n-001202d0: 203c 7370 616e 2063 6c61 7373 3d22 6b65 char<\n-001202f0: 2f73 7061 6e3e 202a 7479 7065 2c20 3c73 /span> *type, const\n-00120320: 203c 7370 616e 2063 6c61 7373 3d22 6b65 char<\n-00120340: 2f73 7061 6e3e 202a 6465 7363 7269 7074 /span> *descript\n-00120350: 696f 6e29 203c 2f64 6976 3e0a 3c64 6976 ion) struct soap *soap\n-001204c0: 613e 2c20 3c73 7061 6e20 636c 6173 733d a>, vo\n-001204e0: 6964 3c2f 7370 616e 3e20 2a68 616e 646c id *handl\n-001204f0: 6529 203c 2f64 6976 3e0a 3c64 6976 2063 e) #\n-00122a10: 534f 4150 5f45 4e43 5f5a 4c49 423c 2f63 SOAP_ENC_ZLIB can be used\n-00122a30: 2077 6974 6820 4d49 4d45 2074 6f20 636f with MIME to co\n-00122a40: 6d70 7265 7373 2074 6865 2065 6e74 6972 mpress the entir\n-00122a50: 6520 6d65 7373 6167 652e 2048 6f77 6576 e message. Howev\n-00122a60: 6572 2c20 636f 6d70 7265 7373 696f 6e20 er, compression \n-00122a70: 7265 7175 6972 6573 2062 7566 6665 7269 requires bufferi\n-00122a80: 6e67 2074 6f20 6465 7465 726d 696e 6520 ng to determine \n-00122a90: 7468 6520 4854 5450 2063 6f6e 7465 6e74 the HTTP content\n-00122aa0: 206c 656e 6774 6820 6865 6164 6572 2c20 length header, \n-00122ab0: 7768 6963 6820 6361 6e63 656c 7320 7468 which cancels th\n-00122ac0: 6520 6265 6e65 6669 7473 206f 6620 7374 e benefits of st\n-00122ad0: 7265 616d 696e 6720 4d49 4d45 2e20 546f reaming MIME. To\n-00122ae0: 2061 766f 6964 2074 6869 732c 2079 6f75 avoid this, you\n-00122af0: 2073 686f 756c 6420 7573 6520 6368 756e should use chun\n-00122b00: 6b65 6420 4854 5450 2028 7769 7468 2074 ked HTTP (with t\n-00122b10: 6865 206f 7574 7075 742d 6d6f 6465 203c he output-mode <\n-00122b20: 636f 6465 3e23 534f 4150 5f49 4f5f 4348 code>#SOAP_IO_CH\n-00122b30: 554e 4b3c 2f63 6f64 653e 2066 6c61 6729 UNK
flag)\n-00122b40: 2077 6974 6820 636f 6d70 7265 7373 696f with compressio\n-00122b50: 6e20 616e 6420 7374 7265 616d 696e 6720 n and streaming \n-00122b60: 4d49 4d45 2e20 4174 2074 6865 2073 6572 MIME. At the ser\n-00122b70: 7665 7220 7369 6465 2c20 7768 656e 2079 ver side, when y\n-00122b80: 6f75 2073 6574 203c 636f 6465 3e23 534f ou set #SO\n-00122b90: 4150 5f49 4f5f 4348 554e 4b3c 2f63 6f64 AP_IO_CHUNK before callin\n-00122bb0: 6720 3c63 6f64 653e 3c61 2063 6c61 7373 g
soap_serv\n-00122c30: 653c 2f61 3e3c 2f63 6f64 653e 2c20 7468 e
, th\n-00122c40: 6520 656e 6769 6e65 2077 696c 6c20 6175 e engine will au\n-00122c50: 746f 6d61 7469 6361 6c6c 7920 7265 7665 tomatically reve\n-00122c60: 7274 2074 6f20 6275 6666 6572 696e 6720 rt to buffering \n-00122c70: 283c 636f 6465 3e23 534f 4150 5f49 4f5f (#SOAP_IO_\n-00122c80: 5354 4f52 453c 2f63 6f64 653e 2066 6c61 STORE
fla\n-00122c90: 6720 6973 2073 6574 292e 2059 6f75 2063 g is set). You c\n-00122ca0: 616e 2063 6865 636b 2074 6869 7320 666c an check this fl\n-00122cb0: 6167 2077 6974 6820 3c63 6f64 653e 2873 ag with (s\n-00122cc0: 6f61 702d 2667 743b 6f6d 6f64 6520 2661 oap->omode &a\n-00122cd0: 6d70 3b20 534f 4150 5f49 4f29 203d 3d20 mp; SOAP_IO) == \n-00122ce0: 534f 4150 5f49 4f5f 4348 554e 4b3c 2f63 SOAP_IO_CHUNK to see if t\n-00122d00: 6865 2063 6c69 656e 7420 6163 6365 7074 he client accept\n-00122d10: 7320 6368 756e 6b69 6e67 2e20 4d6f 7265 s chunking. More\n-00122d20: 2069 6e66 6f72 6d61 7469 6f6e 2061 626f information abo\n-00122d30: 7574 2073 7472 6561 6d69 6e67 2063 6875 ut streaming chu\n-00122d40: 6e6b 6564 204d 494d 4520 6361 6e20 6265 nked MIME can be\n-00122d50: 2066 6f75 6e64 2069 6e20 5365 6374 696f found in Sectio\n-00122d60: 6e20 3c61 2063 6c61 7373 3d22 656c 2220 n S\n-00122d90: 7472 6561 6d69 6e67 2063 6875 6e6b 6564 treaming chunked\n-00122da0: 204d 494d 452f 4d54 4f4d 3c2f 613e 202e MIME/MTOM .\n-00122db0: 2e3c 2f70 3e0a 3c70 3e4e 6f74 6520 7468 .
m\n-00122de0: 696d 655f 7265 6164 3c2f 636f 6465 3e20 ime_read
\n-00122df0: 7573 6573 2061 2068 616e 646c 6520 7468 uses a handle th\n-00122e00: 6174 2070 6f69 6e74 7320 746f 2074 6865 at points to the\n-00122e10: 206f 7065 6e20 6669 6c65 203c 636f 6465 open file FILE*
. T\n-00122e30: 6865 2073 696d 706c 6520 6578 616d 706c he simple exampl\n-00122e40: 6520 6162 6f76 6520 6973 206e 6f74 2072 e above is not r\n-00122e50: 6563 6f6d 6d65 6e64 6564 2077 6865 6e20 ecommended when \n-00122e60: 7468 6520 706c 6174 666f 726d 2069 6d70 the platform imp\n-00122e70: 6f73 6573 2061 206c 696d 6974 206f 6e20 oses a limit on \n-00122e80: 7468 6520 6e75 6d62 6572 206f 6620 6f70 the number of op\n-00122e90: 656e 2066 696c 6520 6465 7363 7269 7074 en file descript\n-00122ea0: 6f72 732e 2059 6f75 2063 616e 2075 7365 ors. You can use\n-00122eb0: 2074 6865 2068 616e 646c 6520 746f 2070 the handle to p\n-00122ec0: 6173 7320 616c 6f6e 6720 6d6f 7265 2069 ass along more i\n-00122ed0: 6e66 6f72 6d61 7469 6f6e 2074 6861 6e20 nformation than \n-00122ee0: 6a75 7374 2074 6865 2066 696c 6520 6465 just the file de\n-00122ef0: 7363 7269 7074 6f72 2e20 536f 2066 6f72 scriptor. So for\n-00122f00: 2065 7861 6d70 6c65 2c20 7768 656e 2074 example, when t\n-00122f10: 6865 206e 756d 6265 7220 6f66 206f 7065 he number of ope\n-00122f20: 6e20 6669 6c65 2064 6573 6372 6970 746f n file descripto\n-00122f30: 7273 2069 7320 6c69 6d69 7465 6420 6f6e rs is limited on\n-00122f40: 2079 6f75 7220 706c 6174 666f 726d 2c20 your platform, \n-00122f50: 796f 7520 7368 6f75 6c64 206c 6574 2074 you should let t\n-00122f60: 6865 2068 616e 646c 6520 706f 696e 7420 he handle point \n-00122f70: 746f 2061 2073 7472 7563 7475 7265 2077 to a structure w\n-00122f80: 6974 6820 6669 6c65 2d72 656c 6174 6564 ith file-related\n-00122f90: 2069 6e66 6f72 6d61 7469 6f6e 2e20 5468 information. Th\n-00122fa0: 6520 432b 2b20 6578 616d 706c 6520 6265 e C++ example be\n-00122fb0: 6c6f 7720 696c 6c75 7374 7261 7465 7320 low illustrates \n-00122fc0: 7468 6973 3a3c 2f70 3e0a 3c64 6976 2063 this:// The objec\n-001231e0: 7420 686f 6c64 696e 6720 616c 6c20 696e t holding all in\n-001231f0: 666f 726d 6174 696f 6e20 746f 2072 6561 formation to rea\n-00123200: 6420 6461 7461 203c 2f73 7061 6e3e 3c2f d data \n-00123210: 6469 763e 0a3c 6469 7620 636c 6173 733d div>..Redirect\n-001244d0: 696e 6720 696e 626f 756e 6420 4d49 4d45 ing inbound MIME\n-001244e0: 2f4d 544f 4d20 7374 7265 616d 7320 6261 /MTOM streams ba\n-001244f0: 7365 6420 6f6e 2053 4f41 5020 626f 6479 sed on SOAP body\n-00124500: 2063 6f6e 7465 6e74 3c2f 6832 3e0a 3c70 content
.vo\n-001248a0: 6964 203c 6120 636c 6173 733d 2265 6c22 id soap\n-00124930: 5f70 6f73 745f 6368 6563 6b5f 6d69 6d65 _post_check_mime\n-00124940: 5f61 7474 6163 686d 656e 7473 2873 7472 _attachments(str\n-00124950: 7563 7420 736f 6170 202a 736f 6170 293c uct soap *soap)<\n-00124960: 2f61 3e3c 2f63 6f64 653e 2054 6869 7320 /a>
This \n-00124970: 6675 6e63 7469 6f6e 2065 6e61 626c 6573 function enables\n-00124980: 2070 6f73 742d 7072 6f63 6573 7369 6e67 post-processing\n-00124990: 206f 6620 4d49 4d45 2f4d 544f 4d20 6174 of MIME/MTOM at\n-001249a0: 7461 6368 6d65 6e74 7320 7265 6365 6976 tachments receiv\n-001249b0: 6564 2e20 5468 6973 206d 6561 6e73 2074 ed. This means t\n-001249c0: 6861 7420 7468 6520 7072 6573 656e 6365 hat the presence\n-001249d0: 206f 6620 4d49 4d45 2f4d 544f 4d20 6174 of MIME/MTOM at\n-001249e0: 7461 6368 6d65 6e74 7320 6d75 7374 2062 tachments must b\n-001249f0: 6520 6578 706c 6963 6974 6c79 2063 6865 e explicitly che\n-00124a00: 636b 6564 2062 7920 6361 6c6c 696e 6720 cked by calling \n-00124a10: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 \n-00124a90: 736f 6170 5f63 6865 636b 5f6d 696d 655f soap_check_mime_\n-00124aa0: 6174 7461 6368 6d65 6e74 733c 2f61 3e3c attachments<\n-00124ab0: 2f63 6f64 653e 2061 6674 6572 2074 6865 /code> after the\n-00124ac0: 206d 6573 7361 6765 2077 6173 2072 6563 message was rec\n-00124ad0: 6569 7665 642e 2057 6865 6e20 7468 6973 eived. When this\n-00124ae0: 2066 756e 6374 696f 6e20 7265 7475 726e function return\n-00124af0: 7320 6e6f 6e7a 6572 6f20 2874 7275 6529 s nonzero (true)\n-00124b00: 2c20 7468 656e 2074 6865 2061 7474 6163 , then the attac\n-00124b10: 686d 656e 7473 2063 616e 2062 6520 7265 hments can be re\n-00124b20: 7472 6965 7665 6420 6279 2063 616c 6c69 trieved by calli\n-00124b30: 6e67 203c 636f 6465 3e3c 6120 636c 6173 ng
soa\n-00124bb0: 705f 7265 6376 5f6d 696d 655f 6174 7461 p_recv_mime_atta\n-00124bc0: 6368 6d65 6e74 3c2f 613e 3c2f 636f 6465 chment
repeatedly to \n-00124be0: 7265 7472 6965 7665 2065 6163 6820 6174 retrieve each at\n-00124bf0: 7461 6368 6d65 6e74 2075 6e74 696c 2074 tachment until t\n-00124c00: 6869 7320 6675 6e63 7469 6f6e 2072 6574 his function ret\n-00124c10: 7572 6e73 204e 554c 4c2e 2054 6869 7320 urns NULL. This \n-00124c20: 6675 6e63 7469 6f6e 2072 6574 7572 6e73 function returns\n-00124c30: 2061 2070 6f69 6e74 6572 2074 6f20 6120 a pointer to a \n-00124c40: 3c63 6f64 653e 7374 7275 6374 203c 6120 struct soap\n-00124cc0: 5f6d 756c 7469 7061 7274 3c2f 613e 3c2f _multipart\n-00124cd0: 636f 6465 3e20 6174 7461 6368 6d65 6e74 code> attachment\n-00124ce0: 2e3c 2f6c 693e 0a3c 6c69 3e3c 636f 6465 .
int s\n-00124d70: 6f61 705f 6368 6563 6b5f 6d69 6d65 5f61 oap_check_mime_a\n-00124d80: 7474 6163 686d 656e 7473 2873 7472 7563 ttachments(struc\n-00124d90: 7420 736f 6170 202a 736f 6170 293c 2f61 t soap *soap)
This fu\n-00124db0: 6e63 7469 6f6e 2063 6865 636b 7320 7468 nction checks th\n-00124dc0: 6520 7072 6573 656e 6365 206f 6620 6120 e presence of a \n-00124dd0: 4d49 4d45 2f4d 544f 4d20 6174 7461 6368 MIME/MTOM attach\n-00124de0: 6d65 6e74 2061 6674 6572 2063 616c 6c69 ment after calli\n-00124df0: 6e67 2061 2073 6572 7669 6365 206f 7065 ng a service ope\n-00124e00: 7261 7469 6f6e 2062 7920 7265 7475 726e ration by return\n-00124e10: 696e 6720 6e6f 6e7a 6572 6f20 7768 656e ing nonzero when\n-00124e20: 2061 7474 6163 686d 656e 7473 2061 7265 attachments are\n-00124e30: 2070 7265 7365 6e74 2e20 5265 7475 726e present. Return\n-00124e40: 7320 6e6f 6e7a 6572 6f20 6966 2061 7474 s nonzero if att\n-00124e50: 6163 686d 656e 7473 2061 7265 2070 7265 achments are pre\n-00124e60: 7365 6e74 2e20 5265 7175 6972 6573 203c sent. Requires <\n-00124e70: 636f 6465 3e3c 6120 636c 6173 733d 2265 code>so\n-00124f00: 6170 5f70 6f73 745f 6368 6563 6b5f 6d69 ap_post_check_mi\n-00124f10: 6d65 5f61 7474 6163 686d 656e 7473 3c2f me_attachments\n-00124f20: 613e 3c2f 636f 6465 3e2e 3c2f 6c69 3e0a a>.struct\n-00124f40: 203c 6120 636c 6173 733d 2265 6c22 2068 \n-00124fb0: 736f 6170 5f6d 756c 7469 7061 7274 3c2f soap_multipart\n-00124fc0: 613e 202a 736f 6170 5f72 6563 765f 6d69 a> *soap_recv_mi\n-00124fd0: 6d65 5f61 7474 6163 686d 656e 7428 7374 me_attachment(st\n-00124fe0: 7275 6374 2073 6f61 7020 2a73 6f61 702c ruct soap *soap,\n-00124ff0: 2076 6f69 6420 2a68 616e 646c 6529 3c2f void *handle)\n-00125000: 636f 6465 3e20 5468 6973 2066 756e 6374 code> This funct\n-00125010: 696f 6e20 7061 7273 6573 2061 6e20 6174 ion parses an at\n-00125020: 7461 6368 6d65 6e74 2061 6e64 2069 6e76 tachment and inv\n-00125030: 6f6b 6573 2074 6865 204d 494d 4520 6361 okes the MIME ca\n-00125040: 6c6c 6261 636b 7320 7768 656e 2073 6574 llbacks when set\n-00125050: 2e20 5468 6520 3c63 6f64 653e 6861 6e64 . The
hand\n-00125060: 6c65 3c2f 636f 6465 3e20 7061 7261 6d65 le
parame\n-00125070: 7465 7220 6973 2070 6173 7365 6420 746f ter is passed to\n-00125080: 203c 636f 6465 3e66 6d69 6d65 7772 6974 fmimewrit\n-00125090: 656f 7065 6e3c 2f63 6f64 653e 2e20 5468 eopen
. Th\n-001250a0: 6520 6861 6e64 6c65 206d 6179 2063 6f6e e handle may con\n-001250b0: 7461 696e 2061 6e79 2064 6174 6120 7468 tain any data th\n-001250c0: 6174 2069 7320 6578 7472 6163 7465 6420 at is extracted \n-001250d0: 6672 6f6d 2074 6865 2053 4f41 5020 6d65 from the SOAP me\n-001250e0: 7373 6167 6520 626f 6479 2074 6f20 6775 ssage body to gu\n-001250f0: 6964 6520 7468 6520 7265 6469 7265 6374 ide the redirect\n-00125100: 696f 6e20 6f66 2074 6865 2073 7472 6561 ion of the strea\n-00125110: 6d20 696e 2074 6865 2063 616c 6c62 6163 m in the callbac\n-00125120: 6b73 2e20 5265 7475 726e 7320 6120 7374 ks. Returns a st\n-00125130: 7275 6374 2077 6974 6820 6120 3c63 6f64 ruct with a f\n-00125190: 6d69 6d65 7772 6974 656f 7065 6e3c 2f63 mimewriteopen callback, a\n-001251b0: 6e64 203c 636f 6465 3e63 6861 7220 2a69 nd
char *i\n-001251c0: 643c 2f63 6f64 653e 2c20 3c63 6f64 653e d
, \n-001251d0: 6368 6172 202a 7479 7065 3c2f 636f 6465 char *type
, and cha\n-001251f0: 7220 2a64 6573 6372 6970 7469 6f6e 3c2f r *description\n-00125200: 636f 6465 3e20 6d65 6d62 6572 2076 6172 code> member var\n-00125210: 6961 626c 6573 2077 6974 6820 7468 6520 iables with the \n-00125220: 4d49 4d45 2069 642c 2074 7970 652c 2061 MIME id, type, a\n-00125230: 6e64 2064 6573 6372 6970 7469 6f6e 2069 nd description i\n-00125240: 6e66 6f20 7768 656e 2070 7265 7365 6e74 nfo when present\n-00125250: 2069 6e20 7468 6520 6174 7461 6368 6d65 in the attachme\n-00125260: 6e74 2e3c 2f6c 693e 0a3c 2f75 6c3e 0a3c nt.
else "\n-00125b30: 5265 6365 6976 6564 2061 7474 6163 686d Received attachm\n-00125b40: 656e 7420 7769 7468 2069 643d 2573 2061 ent with id=%s a\n-00125b50: 6e64 2074 7970 653d 2573 5c6e 2671 756f nd type=%s\\n&quo\n-00125b60: 743b 3c2f 7370 616e 3e2c 2063 6f6e 7465 t;, conte\n-00125b70: 6e74 2d26 6774 3b3c 6120 636c 6173 733d nt->id?content->id:""\n-00125c60: 3b3c 2f73 7061 6e3e 2c20 636f 6e74 656e ;, conten\n-00125c70: 742d 2667 743b 3c61 2063 6c61 7373 3d22 t->type\n-00125cd0: 613e 3f63 6f6e 7465 6e74 2d26 6774 3b3c a>?content-><\n-00125ce0: 6120 636c 6173 733d 2263 6f64 6522 2068 a class=\"code\" h\n-00125cf0: 7265 663d 2273 7472 7563 7473 6f61 705f ref=\"structsoap_\n-00125d00: 5f6d 756c 7469 7061 7274 2e68 746d 6c23 _multipart.html#\n-00125d10: 6134 3935 6338 6432 3065 3033 3334 6265 a495c8d20e0334be\n-00125d20: 3162 3133 3435 3139 3363 6132 6662 3736 1b1345193ca2fb76\n-00125d30: 3422 3e74 7970 653c 2f61 3e3a 3c73 7061 4\">type:.Streaming\n-00127580: 2063 6875 6e6b 6564 204d 494d 452f 4d54 chunked MIME/MT\n-00127590: 4f4d 3c2f 6832 3e0a 3c70 3e54 6f20 7365 OM
.#\n-001276a0: 534f 4150 5f49 4f5f 4348 554e 4b3c 2f63 SOAP_IO_CHUNK flag. Then,\n-001276c0: 2074 6f20 7374 7265 616d 2063 6875 6e6b to stream chunk\n-001276d0: 6564 204d 494d 452f 4d54 4f4d 2c20 7365 ed MIME/MTOM, se\n-001276e0: 7420 7468 6520 3c63 6f64 653e 5f5f 7369 t the
__si\n-001276f0: 7a65 3c2f 636f 6465 3e20 6d65 6d62 6572 ze
member\n-00127700: 206f 6620 616e 2061 7474 6163 686d 656e of an attachmen\n-00127710: 7420 746f 207a 6572 6f20 616e 6420 656e t to zero and en\n-00127720: 6162 6c65 204d 494d 452f 4d54 4f4d 2063 able MIME/MTOM c\n-00127730: 6875 6e6b 696e 672e 2054 6865 204d 494d hunking. The MIM\n-00127740: 452f 4d54 4f4d 203c 636f 6465 3e3c 6120 E/MTOM soap::fmimerea\n-001277f0: 643c 2f61 3e3c 2f63 6f64 653e 2063 616c d
cal\n-00127800: 6c62 6163 6b20 7468 656e 2066 6574 6368 lback then fetch\n-00127810: 6573 2064 6174 6120 696e 2063 6875 6e6b es data in chunk\n-00127820: 7320 616e 6420 6974 2069 7320 696d 706f s and it is impo\n-00127830: 7274 616e 7420 746f 2066 696c 6c20 7468 rtant to fill th\n-00127840: 6520 656e 7469 7265 2062 7566 6665 7220 e entire buffer \n-00127850: 756e 6c65 7373 2074 6865 2065 6e64 206f unless the end o\n-00127860: 6620 7468 6520 6461 7461 2068 6173 2062 f the data has b\n-00127870: 6565 6e20 7265 6163 6865 6420 616e 6420 een reached and \n-00127880: 7468 6520 6c61 7374 2063 6875 6e6b 2069 the last chunk i\n-00127890: 7320 746f 2062 6520 7365 6e64 2e20 5468 s to be send. Th\n-001278a0: 6174 2069 732c 203c 636f 6465 3e3c 6120 at is, soap::fmimerea\n-00127950: 643c 2f61 3e3c 2f63 6f64 653e 2073 686f d
sho\n-00127960: 756c 6420 7265 7475 726e 2074 6865 2076 uld return the v\n-00127970: 616c 7565 206f 6620 7468 6520 6c61 7374 alue of the last\n-00127980: 203c 636f 6465 3e6c 656e 3c2f 636f 6465 len
parameter and \n-001279a0: 6669 6c6c 2074 6865 2065 6e74 6972 6520 fill the entire \n-001279b0: 6275 6666 6572 203c 636f 6465 3e62 7566 buffer buf\n-001279c0: 3c2f 636f 6465 3e20 666f 7220 616c 6c20
for all \n-001279d0: 6368 756e 6b73 2065 7863 6570 7420 7468 chunks except th\n-001279e0: 6520 6c61 7374 2e20 466f 7220 7468 6520 e last. For the \n-001279f0: 6c61 7374 2069 7420 7265 7475 726e 7320 last it returns \n-00127a00: 302e 3c2f 703e 0a3c 703e f09f 949d 203c 0.\n-00127a60: 0a53 4f41 502f 584d 4c20 6f76 6572 2055 .SOAP/XML over U\n-00127a70: 4450 3c2f 6831 3e0a 3c70 3e55 4450 2069 DP
.#SOAP_IO_U\n-00127d40: 4450 3c2f 636f 6465 3e20 6d6f 6465 2066 DP
mode f\n-00127d50: 6c61 6720 746f 2061 6363 6570 7420 5544 lag to accept UD\n-00127d60: 5020 7265 7175 6573 7473 2c20 652e 672e P requests, e.g.\n-00127d70: 2075 7369 6e67 203c 636f 6465 3e3c 6120 using soap_n\n-00127e30: 6577 313c 2f61 3e3c 2f63 6f64 653e 2c20 ew1
, \n-00127e40: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 soap_init1\n-00127f00: 3c2f 636f 6465 3e2c 206f 7220 3c63 6f64
, or \n-00128070: 2357 4954 485f 4c45 414e 3c2f 636f 6465 #WITH_LEAN
to support sma\n-00128090: 6c6c 2d73 6361 6c65 2065 6d62 6564 6465 ll-scale embedde\n-001280a0: 6420 7379 7374 656d 732e 2046 6f72 2055 d systems. For U\n-001280b0: 4450 2074 7261 6e73 706f 7274 203c 636f DP transport \n-00128290: 7773 612e 683c 2f63 6f64 653e 3c2f 656d wsa.h
file in the .
.<\n-00128540: 703e 5468 6520 666f 6c6c 6f77 696e 6720 p>The following \n-00128550: 6164 6469 7469 6f6e 616c 2066 6561 7475 additional featu\n-00128560: 7265 7320 6172 6520 616c 736f 2061 7661 res are also ava\n-00128570: 696c 6162 6c65 2c20 6275 7420 6172 6520 ilable, but are \n-00128580: 6e6f 7420 7375 7070 6f72 7465 6420 6279 not supported by\n-00128590: 2074 6865 2053 4f41 502d 6f76 6572 2d55 the SOAP-over-U\n-001285a0: 4450 2073 7065 6369 6669 6361 7469 6f6e DP specification\n-001285b0: 3a3c 2f70 3e0a 3c75 6c3e 0a3c 6c69 3e5a :.\n-001283a0: 736f 6170 2e75 6470 3a2f 2f68 6f73 743a soap.udp://host:\n-001283b0: 706f 7274 2f70 6174 683c 2f63 6f64 653e port/path
\n-001283c0: 3c2f 656d 3e3c 2f6c 693e 0a3c 6c69 3e53 .
#WITH_\n-00128600: 475a 4950 3c2f 636f 6465 3e29 2e3c 2f6c GZIP
)..#WITH_IPV6\n-001286b0: 3c2f 636f 6465 3e29 3c2f 6c69 3e0a 3c2f
)\n-00128720: 0a55 7369 6e67 2057 532d 4164 6472 6573 .Using WS-Addres\n-00128730: 7369 6e67 2077 6974 6820 534f 4150 2d6f sing with SOAP-o\n-00128740: 7665 722d 5544 503c 2f68 323e 0a3c 703e ver-UDP
.wsa.h
file in\n-001287f0: 2074 6865 203c 636f 6465 3e69 6d70 6f72 the impor\n-00128800: 743c 2f63 6f64 653e 2064 6972 6563 746f t
directo\n-00128810: 7279 2064 6566 696e 6573 2074 6865 2057 ry defines the W\n-00128820: 532d 4164 6472 6573 7369 6e67 2065 6c65 S-Addressing ele\n-00128830: 6d65 6e74 732e 2054 6f20 696e 636c 7564 ments. To includ\n-00128840: 6520 7468 6520 5753 2d41 6464 7265 7373 e the WS-Address\n-00128850: 696e 6720 656c 656d 656e 7473 2069 6e20 ing elements in \n-00128860: 7468 6520 534f 4150 2048 6561 6465 7220 the SOAP Header \n-00128870: 666f 7220 6d65 7373 6167 696e 672c 2061 for messaging, a\n-00128880: 2057 532d 4164 6472 6573 7369 6e67 2063 WS-Addressing c\n-00128890: 6170 6162 6c65 203c 636f 6465 3e3c 6120 apable SOAP_ENV\n-00128900: 5f5f 4865 6164 6572 3c2f 613e 3c2f 636f __Header struct shoul\n-00128920: 6420 6265 2064 6566 696e 6564 2069 6e20 d be defined in \n-00128930: 796f 7572 2068 6561 6465 7220 6669 6c65 your header file\n-00128940: 2062 7920 696d 706f 7274 696e 6720 3c65 by importing
\n-001289a0: 656d 3e3a 3c2f 703e 0a3c 6469 7620 636c em>:gsoap/im\n-00128960: 706f 7274 2f77 7361 2e68 3c2f 636f 6465 port/wsa.h
or //gsoap w\n-00128a50: 7361 2073 6368 656d 6120 696d 706f 7274 sa schema import\n-00128a60: 3a3c 2f63 6f64 653e 2064 6972 6563 7469 :
directi\n-00128a70: 7665 2069 6e20 7468 6520 3c65 6d3e 3c63 ve in the //g\n-00128b20: 736f 6170 6f70 7420 773c 2f63 6f64 653e soapopt w
\n-00128b30: 2064 6972 6563 7469 7665 2028 7768 6963 directive (whic\n-00128b40: 6820 6164 6473 206f 7074 696f 6e20 3c62 h adds option -w
\n-00128b60: 3c2f 623e 2074 6f20 7275 6e20 3c62 3e3c to run <\n-00128b70: 636f 6465 3e73 6f61 7063 7070 3220 2d77 code>soapcpp2 -w\n-00128b80: 3c2f 636f 6465 3e3c 2f62 3e29 206d 7573 ) mus\n-00128b90: 7420 6e6f 7420 6265 2070 7265 7365 6e74 t not be present\n-00128ba0: 2069 6e20 796f 7572 2068 6561 6465 7220 in your header \n-00128bb0: 6669 6c65 2074 6f20 656e 6162 6c65 2057 file to enable W\n-00128bc0: 5344 4c20 6765 6e65 7261 7469 6f6e 2e3c SDL generation.<\n-00128bd0: 2f70 3e0a 3c70 3e4f 6e65 2d77 6179 2053 /p>.wsa:To
, and <\n-00128cc0: 656d 3e3c 636f 6465 3e77 7361 3a41 6374 em>wsa:Act\n-00128cd0: 696f 6e3c 2f63 6f64 653e 3c2f 656d 3e20 ion
\n-00128ce0: 656c 656d 656e 7473 2069 6e20 7468 6520 elements in the \n-00128cf0: 534f 4150 2048 6561 6465 7220 6f66 2074 SOAP Header of t\n-00128d00: 6865 2072 6571 7565 7374 206d 6573 7361 he request messa\n-00128d10: 6765 2061 7320 666f 6c6c 6f77 733a 3c2f ge as follows:\n-00128d20: 703e 0a3c 6469 7620 636c 6173 733d 2266 p>.wsa\n-00128fc0: 3a4d 6573 7361 6765 4944 3c2f 636f 6465 :MessageID
, \n-00129000: 7773 613a 4163 7469 6f6e 3c2f 636f 6465 wsa:Action
, and \n-00129020: 3c63 6f64 653e 7773 613a 5265 706c 7954 wsa:ReplyT\n-00129030: 6f3c 2f63 6f64 653e 3c2f 656d 3e20 656c o
el\n-00129040: 656d 656e 7473 2069 6e20 7468 6520 534f ements in the SO\n-00129050: 4150 2048 6561 6465 7220 6f66 2074 6865 AP Header of the\n-00129060: 2072 6571 7565 7374 206d 6573 7361 6765 request message\n-00129070: 2c20 616e 6420 7468 6520 7468 6520 3c65 , and the the wsa:Mess\n-00129090: 6167 6549 443c 2f63 6f64 653e 3c2f 656d ageID
wsa\n-001290b0: 3a54 6f3c 2f63 6f64 653e 3c2f 656d 3e2c :To
,\n-001290c0: 203c 656d 3e3c 636f 6465 3e77 7361 3a41 wsa:A\n-001290d0: 6374 696f 6e3c 2f63 6f64 653e 3c2f 656d ction
, and wsa:RelatesTo\n-00129100: 636f 6465 3e3c 2f65 6d3e 2065 6c65 6d65 code>
eleme\n-00129110: 6e74 7320 696e 2074 6865 2053 4f41 5020 nts in the SOAP \n-00129120: 4865 6164 6572 206f 6620 7468 6520 7265 Header of the re\n-00129130: 7370 6f6e 7365 206d 6573 7361 6765 3a3c sponse message:<\n-00129140: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>..Client-s\n-001295e0: 6964 6520 6f6e 652d 7761 7920 5544 5020 ide one-way UDP \n-001295f0: 756e 6963 6173 743c 2f68 333e 0a3c 703e unicast
.// Send the \n-00129c70: 6d65 7373 6167 6520 6f76 6572 2055 4450 message over UDP\n-00129c80: 3a20 3c2f 7370 616e 3e3c 2f64 6976 3e0a : IPPROTO_I\n-0012b8a0: 503c 2f63 6f64 653e 203c 636f 6465 3e49 P
I\n-0012b8b0: 505f 4d55 4c54 4943 4153 545f 4946 3c2f P_MULTICAST_IF\n-0012b8c0: 636f 6465 3e20 746f 2073 7065 6369 6679 code> to specify\n-0012b8d0: 2074 6865 2064 6566 6175 6c74 2069 6e74 the default int\n-0012b8e0: 6572 6661 6365 2066 6f72 206d 756c 7469 erface for multi\n-0012b8f0: 6361 7374 2064 6174 6167 7261 6d73 2074 cast datagrams t\n-0012b900: 6f20 6265 2073 656e 7420 6672 6f6d 2e20 o be sent from. \n-0012b910: 5468 6973 2069 7320 6120 3c63 6f64 653e This is a
\n-0012b920: 7374 7275 6374 2069 6e5f 6164 6472 3c2f struct in_addr\n-0012b930: 636f 6465 3e20 283c 636f 6465 3e69 6e5f code> (
in_\n-0012b940: 6164 6472 5f74 3c2f 636f 6465 3e20 666f addr_t
fo\n-0012b950: 7220 3c63 6f64 653e 7369 6e36 5f73 636f r sin6_sco\n-0012b960: 7065 5f69 643c 2f63 6f64 653e 2920 696e pe_id
) in\n-0012b970: 7465 7266 6163 6520 7661 6c75 652e 204f terface value. O\n-0012b980: 7468 6572 7769 7365 2c20 7468 6520 6465 therwise, the de\n-0012b990: 6661 756c 7420 696e 7465 7266 6163 6520 fault interface \n-0012b9a0: 7365 7420 6279 2074 6865 2073 7973 7465 set by the syste\n-0012b9b0: 6d20 6164 6d69 6e69 7374 7261 746f 7220 m administrator \n-0012b9c0: 7769 6c6c 2062 6520 7573 6564 2028 6966 will be used (if\n-0012b9d0: 2061 6e79 292e 3c2f 703e 0a3c 703e 506c any).IPPRO\n-0012ba10: 544f 5f49 503c 2f63 6f64 653e 203c 636f TO_IP
.C\n-0012bb70: 6c69 656e 742d 7369 6465 2072 6571 7565 lient-side reque\n-0012bb80: 7374 2d72 6573 706f 6e73 6520 5544 5020 st-response UDP \n-0012bb90: 756e 6963 6173 743c 2f68 333e 0a3c 703e unicast
.#impor\n-0012bc30: 7420 2277 7361 2e68 223c 2f63 6f64 653e t \"wsa.h\"
\n-0012bc40: 2061 6e64 2074 6865 203c 636f 6465 3e6e and the n\n-0012bc50: 735f 5f65 6368 6f53 7472 696e 673c 2f63 s__echoString function di\n-0012bc70: 7363 7573 7365 6420 696e 2053 6563 7469 scussed in Secti\n-0012bc80: 6f6e 203c 6120 636c 6173 733d 2265 6c22 on Using \n-0012bcb0: 5753 2d41 6464 7265 7373 696e 6720 7769 WS-Addressing wi\n-0012bcc0: 7468 2053 4f41 502d 6f76 6572 2d55 4450 th SOAP-over-UDP\n-0012bcd0: 3c2f 613e 202e 3c2f 703e 0a3c 6469 7620 .
if (soap_call_ns_\n-0012c500: 5f65 6368 6f53 7472 696e 6728 2661 6d70 _echoString(&\n-0012c510: 3b3c 6120 636c 6173 733d 2263 6f64 6522 ;soap\n-0012c540: 2c20 3c73 7061 6e20 636c 6173 733d 2273 , &q\n-0012c560: 756f 743b 736f 6170 2e75 6470 3a2f 2f65 uot;soap.udp://e\n-0012c570: 6e64 706f 696e 7420 2671 756f 743b 3c2f ndpoint "\n-0012c580: 7370 616e 3e53 4f41 5020 6163 7469 6f6e span>SOAP action\n-0012c590: 3c73 7061 6e20 636c 6173 733d 2273 7472 &quo\n-0012c5b0: 743b 2c20 2671 756f 743b 3c2f 7370 616e t;, "hello world!.Cli\n-0012cb20: 656e 742d 7369 6465 2072 6571 7565 7374 ent-side request\n-0012cb30: 2d72 6573 706f 6e73 6520 6d75 6c74 6963 -response multic\n-0012cb40: 6173 743c 2f68 333e 0a3c 703e 5468 6973 ast
.SO_BROAD\n-0012cbd0: 4341 5354 3c2f 636f 6465 3e20 736f 636b CAST
sock\n-0012cbe0: 6574 206f 7074 696f 6e2e 2042 6563 6175 et option. Becau\n-0012cbf0: 7365 2077 6520 6578 7065 6374 2074 6f20 se we expect to \n-0012cc00: 7265 6365 6976 6520 6d75 6c74 6970 6c65 receive multiple\n-0012cc10: 2072 6573 706f 6e73 6573 2c20 7765 2061 responses, we a\n-0012cc20: 6c73 6f20 6e65 6564 2074 6f20 7573 6520 lso need to use \n-0012cc30: 7365 7061 7261 7465 2072 6571 7565 7374 separate request\n-0012cc40: 2d72 6573 706f 6e73 6520 6d65 7373 6167 -response messag\n-0012cc50: 6573 2074 6f20 7365 6e64 206f 6e65 2072 es to send one r\n-0012cc60: 6571 7565 7374 2061 6e64 2063 6f6e 7375 equest and consu\n-0012cc70: 6d65 206d 756c 7469 706c 6520 7265 7370 me multiple resp\n-0012cc80: 6f6e 7365 732e 2049 6e20 7468 6973 2065 onses. In this e\n-0012cc90: 7861 6d70 6c65 2077 6520 6465 6669 6e65 xample we define\n-0012cca0: 6420 6120 3c63 6f64 653e 6263 6173 7453 d a bcastS\n-0012ccb0: 7472 696e 673c 2f63 6f64 653e 2072 6571 tring
req\n-0012ccc0: 7565 7374 2061 6e64 2061 203c 636f 6465 uest and a bcastStringResp\n-0012cce0: 6f6e 7365 3c2f 636f 6465 3e20 7265 7370 onse
resp\n-0012ccf0: 6f6e 7365 206d 6573 7361 6765 2c20 7768 onse message, wh\n-0012cd00: 6963 6820 6172 6520 6573 7365 6e74 6961 ich are essentia\n-0012cd10: 6c6c 7920 6465 636c 6172 6564 2061 7320 lly declared as \n-0012cd20: 6f6e 652d 7761 7920 6d65 7373 6167 6573 one-way messages\n-0012cd30: 2069 6e20 7468 6520 6865 6164 6572 2066 in the header f\n-0012cd40: 696c 653a 3c2f 703e 0a3c 6469 7620 636c ile:char *str, void)\n-0012cff0: 3b20 3c2f 6469 763e 0a3c 6469 7620 636c ; void);ws\n-0012d320: 646c 3268 202d 623c 2f63 6f64 653e 3c2f dl2h -b
\n-0012d330: 623e 206f 7074 696f 6e20 3c62 3e3c 636f b> option #includ\n-0012d400: 6520 2671 756f 743b 706c 7567 696e 2f77 e "plugin/w\n-0012d410: 7361 6170 692e 6826 7175 6f74 3b3c 2f73 saapi.h"char *res; if (soap_send_ns_\n-0012dc60: 5f62 6361 7374 5374 7269 6e67 2826 616d _bcastString(&am\n-0012dc70: 703b 3c61 2063 6c61 7373 3d22 636f 6465 p;soap, &\n-0012dcc0: 7175 6f74 3b73 6f61 702e 7564 703a 2f2f quot;soap.udp://\n-0012dcd0: 656e 6470 6f69 6e74 2671 756f 743b 3c2f endpoint"\n-0012dce0: 7370 616e 3e2c 203c 7370 616e 2063 6c61 span>, "SOAP ac\n-0012dd10: 7469 6f6e 2671 756f 743b 3c2f 7370 616e tion", &\n-0012dd40: 7175 6f74 3b68 656c 6c6f 2077 6f72 6c64 quot;hello world\n-0012dd50: 2126 7175 6f74 3b3c 2f73 7061 6e3e 2929 !"))\n-0012dd60: 203c 2f64 6976 3e0a 3c64 6976 2063 6c61 if (soap_recv_ns_\n-0012df60: 5f62 6361 7374 5374 7269 6e67 5265 7370 _bcastStringResp\n-0012df70: 6f6e 7365 2826 616d 703b 3c61 2063 6c61 onse(&soap, &\n-0012dfb0: 7265 7329 2920 3c2f 6469 763e 0a3c 6469 res)) // Got respo\n-0012e040: 6e73 6520 2623 3339 3b72 6573 2623 3339 nse 'res'\n-0012e050: 3b20 6672 6f6d 2061 2073 6572 7665 7220 ; from a server \n-0012e060: 3c2f 7370 616e 3e3c 2f64 6976 3e0a 3c64 bc\n-0012e620: 6173 7453 7472 696e 673c 2f63 6f64 653e astString
\n-0012e630: 2064 6f65 7320 6e6f 7420 6e65 6564 2074 does not need t\n-0012e640: 6f20 7573 6520 7477 6f2d 6f6e 6520 7761 o use two-one wa\n-0012e650: 7920 6d65 7373 6167 6573 2e20 5468 7573 y messages. Thus\n-0012e660: 2c20 6d75 6c74 6963 6173 7420 7265 7175 , multicast requ\n-0012e670: 6573 742d 7265 7370 6f6e 7365 206d 6573 est-response mes\n-0012e680: 7361 6765 2070 6174 7465 726e 2063 616e sage pattern can\n-0012e690: 2062 6520 6465 636c 6172 6564 2061 6e64 be declared and\n-0012e6a0: 2069 6d70 6c65 6d65 6e74 6564 2061 7320 implemented as \n-0012e6b0: 7265 7175 6573 742d 7265 7370 6f6e 7365 request-response\n-0012e6c0: 206f 7065 7261 7469 6f6e 7320 6174 2074 operations at t\n-0012e6d0: 6865 2073 6572 7665 7220 7369 6465 2e3c he server side.<\n-0012e6e0: 2f70 3e0a 3c70 3ef0 9f94 9d20 3c61 2068 /p>..SOAP-over-\n-0012e750: 5544 5020 7365 7276 6572 3c2f 6832 3e0a UDP server
.\n-0012e760: 3c70 3e54 6865 2066 6f6c 6c6f 7769 6e67 \n-0012e7e0: 6563 686f 5374 7269 6e67 3c2f 636f 6465 echoString
messages. This\n-0012e800: 2065 7861 6d70 6c65 2061 7373 756d 6573 example assumes\n-0012e810: 2074 6861 7420 7468 6520 696e 7465 7266 that the interf\n-0012e820: 6163 6520 6865 6164 6572 2066 696c 6520 ace header file \n-0012e830: 696e 636c 7564 6573 2074 6865 2053 4f41 includes the SOA\n-0012e840: 5020 4865 6164 6572 2077 6974 6820 5753 P Header with WS\n-0012e850: 2d41 6464 7265 7373 696e 6720 656c 656d -Addressing elem\n-0012e860: 656e 7473 2069 6d70 6f72 7465 6420 7769 ents imported wi\n-0012e870: 7468 203c 636f 6465 3e23 696d 706f 7274 th #import\n-0012e880: 2022 7773 612e 6822 3c2f 636f 6465 3e20 \"wsa.h\"
\n-0012e890: 616e 6420 7468 6520 3c63 6f64 653e 6e73 and the ns\n-0012e8a0: 5f5f 6563 686f 5374 7269 6e67 3c2f 636f __echoString
if (check_receive\n-0012f900: 6428 3c61 2063 6c61 7373 3d22 636f 6465 d(soap->h\n-0012f980: 6561 6465 723c 2f61 3e2d 2667 743b 7773 eader->ws\n-0012f990: 615f 5f4d 6573 7361 6765 4944 2929 203c a__MessageID)) <\n-0012f9a0: 2f64 6976 3e0a 3c64 6976 2063 6c61 7373 /div>.// should ch\n-00130010: 6563 6b20 666f 7220 6475 706c 6963 6174 eck for duplicat\n-00130020: 6520 6d65 7373 6167 6573 203c 2f73 7061 e messages soap_serve<\n-001309c0: 2f61 3e3c 2f63 6f64 653e 2077 6169 7473 /a>
waits\n-001309d0: 2066 6f72 2061 206d 6573 7361 6765 2061 for a message a\n-001309e0: 6e64 2069 6d6d 6564 6961 7465 6c79 2061 nd immediately a\n-001309f0: 6363 6570 7473 2069 742e 2059 6f75 2063 ccepts it. You c\n-00130a00: 616e 2075 7365 2061 2072 6563 6569 7665 an use a receive\n-00130a10: 2074 696d 656f 7574 2076 616c 7565 2066 timeout value f\n-00130a20: 6f72 203c 636f 6465 3e3c 6120 636c 6173 or soap::recv_t\n-00130ae0: 696d 656f 7574 3c2f 613e 3c2f 636f 6465 imeout
to make \n-00130b00: 3c61 2063 6c61 7373 3d22 656c 2220 6872 s\n-00130b70: 6f61 705f 7365 7276 653c 2f61 3e3c 2f63 oap_serve non-blockin\n-00130b90: 672e 3c2f 703e 0a3c 703e 546f 206f 6274 g.
ws\n-00130bf0: 646c 3268 202d 623c 2f63 6f64 653e 3c2f dl2h -b
\n-00130c00: 623e 206f 7074 696f 6e20 3c62 3e3c 636f b> option .SOA\n-00130d20: 502d 6f76 6572 2d55 4450 206d 756c 7469 P-over-UDP multi\n-00130d30: 6361 7374 2072 6563 6569 7669 6e67 2073 cast receiving s\n-00130d40: 6572 7665 723c 2f68 333e 0a3c 703e 466f erver
..Compile-\n-00131b70: 7469 6d65 2066 6c61 6773 3c2f 6831 3e0a time flags
.\n-00131b80: 3c70 3e54 6865 2066 6f6c 6c6f 7769 6e67 -D
to set th\n-00131cb0: 6520 6d61 6372 6f3a 3c2f 703e 0a3c 7461 e macro:. \n-00131d60: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .defi\n-00131d20: 6e65 2020 203c 2f74 683e 3c74 6820 636c ne resu\n-00131d50: 6c74 2020 2020 3c2f 7468 3e3c 2f74 723e lt . .#SOAPD\n-00131db0: 4546 535f 483c 2f63 6f64 653e 2020 203c EFS_H
<\n-00131dc0: 2f74 643e 3c74 6420 636c 6173 733d 226d /td>the header\n-00131df0: 2066 696c 6520 746f 2069 6e63 6c75 6465 file to include\n-00131e00: 2c20 6966 2064 6966 6665 7265 6e74 2066 , if different f\n-00131e10: 726f 6d20 3c63 6f64 653e 736f 6170 6465 rom soapde\n-00131e20: 6673 2e68 3c2f 636f 6465 3e20 2020 203c fs.h
<\n-00131e30: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td>. .includes th\n-00131ed0: 6520 3c63 6f64 653e 736f 6170 6465 6673 e soapdefs\n-00131ee0: 2e68 3c2f 636f 6465 3e20 6669 6c65 2066 .h
file f\n-00131ef0: 6f72 2063 7573 746f 6d20 7365 7474 696e or custom settin\n-00131f00: 6773 2c20 7365 6520 5365 6374 696f 6e20 gs, see Section \n-00131f10: 3c61 2063 6c61 7373 3d22 656c 2220 6872 Using t\n-00131f40: 6865 2073 6f61 7064 6566 732e 6820 6865 he soapdefs.h he\n-00131f50: 6164 6572 2066 696c 653c 2f61 3e20 2020 ader file \n-00131f60: 203c 2f74 643e 3c2f 7472 3e0a 3c74 7220 . .<\n-00131fb0: 636f 6465 3e23 5749 5448 5f43 4f4d 5041 code>#WITH_COMPA\n-00131fc0: 543c 2f63 6f64 653e 2020 203c 2f74 643e T \n-00131fd0: 3c74 6420 636c 6173 733d 226d 6172 6b64 removes depend\n-00132000: 656e 6379 206f 6e20 432b 2b20 7374 7265 ency on C++ stre\n-00132010: 616d 206c 6962 7261 7269 6573 2061 6e64 am libraries and\n-00132020: 2043 2b2b 2065 7863 6570 7469 6f6e 7320 C++ exceptions \n-00132030: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 #WITH_LE\n-00132090: 414e 3c2f 636f 6465 3e20 2020 3c2f 7464 AN
creates a sma\n-001320d0: 6c6c 2d66 6f6f 7470 7269 6e74 2065 7865 ll-footprint exe\n-001320e0: 6375 7461 626c 652c 2073 6565 2053 6563 cutable, see Sec\n-001320f0: 7469 6f6e 203c 6120 636c 6173 733d 2265 tion How to\n-00132120: 206d 696e 696d 697a 6520 6170 706c 6963 minimize applic\n-00132130: 6174 696f 6e20 6d65 6d6f 7279 2066 6f6f ation memory foo\n-00132140: 7470 7269 6e74 3c2f 613e 2020 2020 3c2f tprint \n-00132150: 7464 3e3c 2f74 723e 0a3c 7472 2063 6c61 td> . .c\n-001321e0: 7265 6174 6573 2061 6e20 6576 656e 2073 reates an even s\n-001321f0: 6d61 6c6c 6572 2066 6f6f 7470 7269 6e74 maller footprint\n-00132200: 2065 7865 6375 7461 626c 652c 2073 6565 executable, see\n-00132210: 2053 6563 7469 6f6e 203c 6120 636c 6173 Section Ho\n-00132240: 7720 746f 206d 696e 696d 697a 6520 6170 w to minimize ap\n-00132250: 706c 6963 6174 696f 6e20 6d65 6d6f 7279 plication memory\n-00132260: 2066 6f6f 7470 7269 6e74 3c2f 613e 2020 footprint \n-00132270: 2020 3c2f 7464 3e3c 2f74 723e 0a3c 7472 .<\n-001322a0: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-001322b0: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-001322c0: 3e3c 636f 6465 3e23 5749 5448 5f46 4153 > \n-00132370: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .#WITH_FAS\n-001322d0: 543c 2f63 6f64 653e 2020 203c 2f74 643e T
\n-001322e0: 3c74 6420 636c 6173 733d 226d 6172 6b64 use faster mem\n-00132310: 6f72 7920 616c 6c6f 6361 7469 6f6e 2077 ory allocation w\n-00132320: 6865 6e20 7573 6564 2077 6974 6820 3c63 hen used with #\n-00132350: 5749 5448 5f4c 4541 4e45 523c 2f63 6f64 WITH_LEANER
. #WITH_\n-001323c0: 434f 4f4b 4945 533c 2f63 6f64 653e 2020 COOKIES
\n-001323d0: 203c 2f74 643e 3c74 6420 636c 6173 733d enables \n-00132400: 4854 5450 2063 6f6f 6b69 6573 2c20 7365 HTTP cookies, se\n-00132410: 6520 5365 6374 696f 6e73 203c 6120 636c e Sections Client-s\n-00132450: 6964 6520 636f 6f6b 6965 2073 7570 706f ide cookie suppo\n-00132460: 7274 3c2f 613e 2061 6e64 203c 6120 636c rt and Server-s\n-001324a0: 6964 6520 636f 6f6b 6965 2073 7570 706f ide cookie suppo\n-001324b0: 7274 3c2f 613e 2020 2020 3c2f 7464 3e3c rt <\n-001324c0: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.. .#\n-00132510: 5749 5448 5f49 4e53 4543 5552 455f 434f WITH_INSECURE_CO\n-00132520: 4f4b 4945 533c 2f63 6f64 653e 2020 203c OKIES
<\n-00132530: 2f74 643e 3c74 6420 636c 6173 733d 226d /td>enables HT\n-00132560: 5450 2063 6f6f 6b69 6573 2061 6e64 2061 TP cookies and a\n-00132570: 6c6c 6f77 7320 636f 6f6b 6965 7320 7769 llows cookies wi\n-00132580: 7468 2074 6865 6972 2053 6563 7572 6520 th their Secure \n-00132590: 666c 6167 2073 6574 2074 6f20 6265 2073 flag set to be s\n-001325a0: 656e 7420 6f76 6572 2069 6e73 6563 7572 ent over insecur\n-001325b0: 6520 6368 616e 6e65 6c73 2020 2020 3c2f e channels \n-001325c0: 7464 3e3c 2f74 723e 0a3c 7472 2063 6c61 td> . .\n-00132670: 3c74 7220 636c 6173 733d 226d 6172 6b64 ena\n-00132650: 626c 6573 2049 5076 3620 7375 7070 6f72 bles IPv6 suppor\n-00132660: 7420 2020 203c 2f74 643e 3c2f 7472 3e0a t . .#WITH_\n-001326c0: 4950 5636 5f56 364f 4e4c 593c 2f63 6f64 IPV6_V6ONLY
enab\n-00132700: 6c65 7320 4950 7636 2073 7570 706f 7274 les IPv6 support\n-00132710: 2077 6974 6820 4950 7636 2d6f 6e6c 7920 with IPv6-only \n-00132720: 7365 7276 6572 206f 7074 696f 6e20 2020 server option \n-00132730: 203c 2f74 643e 3c2f 7472 3e0a 3c74 7220 . .\n-00132890: 3c74 7220 636c 6173 733d 226d 6172 6b64 <\n-00132780: 636f 6465 3e23 5749 5448 5f4f 5045 4e53 code>#WITH_OPENS\n-00132790: 534c 3c2f 636f 6465 3e20 2020 3c2f 7464 SL enables OpenS\n-001327d0: 534c 2c20 7365 6520 5365 6374 696f 6e73 SL, see Sections\n-001327e0: 203c 6120 636c 6173 733d 2265 6c22 2068 S\n-00132810: 6563 7572 6520 636c 6965 6e74 7320 7769 ecure clients wi\n-00132820: 7468 2048 5454 5053 3c2f 613e 2061 6e64 th HTTPS and\n-00132830: 203c 6120 636c 6173 733d 2265 6c22 2068 S\n-00132860: 6563 7572 6520 5765 6220 7365 7276 6963 ecure Web servic\n-00132870: 6573 2077 6974 6820 4854 5450 533c 2f61 es with HTTPS . #WITH_\n-001328e0: 474e 5554 4c53 3c2f 636f 6465 3e20 2020 GNUTLS
\n-001328f0: 3c2f 7464 3e3c 7464 2063 6c61 7373 3d22 enables G\n-00132920: 4e55 544c 532c 2073 6565 2053 6563 7469 NUTLS, see Secti\n-00132930: 6f6e 7320 3c61 2063 6c61 7373 3d22 656c ons Secure clients\n-00132970: 2077 6974 6820 4854 5450 533c 2f61 3e20 with HTTPS \n-00132980: 616e 6420 3c61 2063 6c61 7373 3d22 656c and Secure Web ser\n-001329c0: 7669 6365 7320 7769 7468 2048 5454 5053 vices with HTTPS\n-001329d0: 3c2f 613e 2020 2020 3c2f 7464 3e3c 2f74 .. .#WIT\n-00132a30: 485f 475a 4950 3c2f 636f 6465 3e20 2020 H_GZIP
\n-00132a40: 3c2f 7464 3e3c 7464 2063 6c61 7373 3d22 enables g\n-00132a70: 7a69 7020 616e 6420 6465 666c 6174 6520 zip and deflate \n-00132a80: 636f 6d70 7265 7373 696f 6e2c 2073 6565 compression, see\n-00132a90: 2053 6563 7469 6f6e 203c 6120 636c 6173 Section Zlib compre\n-00132ad0: 7373 696f 6e3c 2f61 3e20 2020 203c 2f74 ssion . .ena\n-00132b70: 626c 6573 2064 6566 6c61 7465 2063 6f6d bles deflate com\n-00132b80: 7072 6573 7369 6f6e 206f 6e6c 792c 2073 pression only, s\n-00132b90: 6565 2053 6563 7469 6f6e 203c 6120 636c ee Section Zlib comp\n-00132bd0: 7265 7373 696f 6e3c 2f61 3e20 2020 203c ression <\n-00132be0: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td> . \n-00132c90: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .en\n-00132c70: 6162 6c65 7320 4e54 4c4d 2073 7570 706f ables NTLM suppo\n-00132c80: 7274 2020 2020 3c2f 7464 3e3c 2f74 723e rt . .#WITH\n-00132ce0: 5f43 5f4c 4f43 414c 453c 2f63 6f64 653e _C_LOCALE
\n-00132cf0: 2020 203c 2f74 643e 3c74 6420 636c 6173 force \n-00132d20: 7468 6520 7573 6520 6c6f 6361 6c65 2066 the use locale f\n-00132d30: 756e 6374 696f 6e73 2077 6865 6e20 6176 unctions when av\n-00132d40: 6169 6c61 626c 6520 746f 2065 6e73 7572 ailable to ensur\n-00132d50: 6520 6c6f 6361 6c65 2d69 6e64 6570 656e e locale-indepen\n-00132d60: 6465 6e74 206e 756d 6265 7220 636f 6e76 dent number conv\n-00132d70: 6572 7369 6f6e 7320 2020 203c 2f74 643e ersions \n-00132d80: 3c2f 7472 3e0a 3c74 7220 636c 6173 733d . . <\n-00132df0: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-00132e00: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-00132e10: 3e72 656d 6f76 6520 7468 6520 7573 6520 >remove the use \n-00132e20: 6f66 206c 6f63 616c 6520 6675 6e63 7469 of locale functi\n-00132e30: 6f6e 7320 746f 2069 6d70 726f 7665 2070 ons to improve p\n-00132e40: 6f72 7461 6269 6c69 7479 2020 2020 3c2f ortability \n-00132e50: 7464 3e3c 2f74 723e 0a3c 7472 2063 6c61 td>#\n-00132dd0: 5749 5448 5f4e 4f5f 435f 4c4f 4341 4c45 WITH_NO_C_LOCALE\n-00132de0: 3c2f 636f 6465 3e20 2020 3c2f 7464 3e3c
. force\n-00132ef0: 2074 6865 2069 6e63 6c75 7369 6f6e 206f the inclusion o\n-00132f00: 6620 3c63 6f64 653e 266c 743b 786c 6f63 f <\n-00132f80: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.<xloc\n-00132f10: 616c 652e 6826 6774 3b3c 2f63 6f64 653e ale.h>
\n-00132f20: 2074 6f20 6465 6669 6e65 203c 636f 6465 to define locale_t
\n-00132f40: 2061 6e64 203c 636f 6465 3e5f 6c3c 2f63 and _l functions, \n-00132f60: 746f 2069 6d70 726f 7665 2070 6f72 7461 to improve porta\n-00132f70: 6269 6c69 7479 2020 2020 3c2f 7464 3e3c bility
. .#W\n-00132fd0: 4954 485f 444f 4d3c 2f63 6f64 653e 2020 ITH_DOM
\n-00132fe0: 203c 2f74 643e 3c74 6420 636c 6173 733d enable D\n-00133010: 4f4d 2070 6172 7369 6e67 2069 6e20 7468 OM parsing in th\n-00133020: 6520 656e 6769 6e65 2c20 7265 7175 6972 e engine, requir\n-00133030: 6564 2062 7920 7468 6520 5753 2d53 6563 ed by the WS-Sec\n-00133040: 7572 6974 7920 706c 7567 696e 2020 2020 urity plugin \n-00133050: 3c2f 7464 3e3c 2f74 723e 0a3c 7472 2063 . .<\n-001330a0: 636f 6465 3e23 5749 5448 5f52 4550 4c41 code>#WITH_REPLA\n-001330b0: 4345 5f49 4c4c 4547 414c 5f55 5446 383c CE_ILLEGAL_UTF8<\n-001330c0: 2f63 6f64 653e 2020 203c 2f74 643e 3c74 /code> . .#WITH_FASTCGI\n-001331b0: 636f 6465 3e20 2020 3c2f 7464 3e3c 7464 code>
e\n-001331e0: 6e61 626c 6573 2046 6173 7443 4749 2c20 nables FastCGI, \n-001331f0: 7365 6520 5365 6374 696f 6e20 3c61 2063 see Section FastCGI \n-00133230: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 #WITH_NO\n-00133290: 494f 3c2f 636f 6465 3e20 2020 3c2f 7464 IO
removes IO op\n-001332d0: 6572 6174 696f 6e73 2c20 746f 2065 6c69 erations, to eli\n-001332e0: 6d69 6e61 7465 2074 6865 2075 7365 206f minate the use o\n-001332f0: 6620 4253 4420 736f 636b 6574 732c 2073 f BSD sockets, s\n-00133300: 6565 2053 6563 7469 6f6e 203c 6120 636c ee Section \n-00133330: 486f 7720 746f 2072 656d 6f76 6520 7468 How to remove th\n-00133340: 6520 4253 4420 736f 636b 6574 206c 6962 e BSD socket lib\n-00133350: 7261 7279 2072 6571 7569 7265 6d65 6e74 rary requirement\n-00133360: 3c2f 613e 2020 2020 3c2f 7464 3e3c 2f74 . .#WIT\n-001333c0: 485f 4e4f 4944 5245 463c 2f63 6f64 653e H_NOIDREF
\n-001333d0: 2020 203c 2f74 643e 3c74 6420 636c 6173 remove\n-00133400: 7320 6964 2061 6e64 2068 7265 662f 7265 s id and href/re\n-00133410: 6620 6d75 6c74 692d 7265 6665 7265 6e63 f multi-referenc\n-00133420: 6520 6461 7461 2c20 6d6f 7265 2061 6767 e data, more agg\n-00133430: 7265 7373 6976 6520 7468 616e 2075 7369 ressive than usi\n-00133440: 6e67 2074 6865 203c 636f 6465 3e23 534f ng the #SO\n-00133450: 4150 5f58 4d4c 5f54 5245 453c 2f63 6f64 AP_XML_TREE runtime flag \n-00133470: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74
#WITH_NO\n-001334d0: 4854 5450 3c2f 636f 6465 3e20 2020 3c2f HTTP
\n-001334e0: 7464 3e3c 7464 2063 6c61 7373 3d22 6d61 td>removes the\n-00133510: 2048 5454 5020 7374 6163 6b20 746f 2072 HTTP stack to r\n-00133520: 6564 7563 6520 636f 6465 2073 697a 6520 educe code size \n-00133530: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 .#WITH_NOZ\n-00133590: 4f4e 453c 2f63 6f64 653e 2020 203c 2f74 ONE
disables and\n-001335d0: 2069 676e 6f72 6573 2074 6865 2074 696d ignores the tim\n-001335e0: 657a 6f6e 6520 696e 203c 636f 6465 3e78 ezone in x\n-001335f0: 7364 3a64 6174 6554 696d 653c 2f63 6f64 sd:dateTime values .
\n-00135ee0: 2e20 596f 7520 6361 6e20 616c 736f 2073 . You can also s\n-00135ef0: 7065 6369 6679 2074 6865 2068 6561 6465 pecify the heade\n-00135f00: 7220 6669 6c65 206e 616d 6520 746f 2069 r file name to i\n-00135f10: 6e63 6c75 6465 2061 7320 6120 6d61 6372 nclude as a macr\n-00135f20: 6f20 3c63 6f64 653e 534f 4150 4445 4653 o . disabl\n-001336b0: 6573 2078 6d6c 6e73 3d22 2220 6465 6661 es xmlns=\"\" defa\n-001336c0: 756c 7420 656d 7074 7920 6e61 6d65 7370 ult empty namesp\n-001336d0: 6163 6573 2066 726f 6d20 584d 4c20 6d65 aces from XML me\n-001336e0: 7373 6167 6573 2020 2020 3c2f 7464 3e3c ssages <\n-001336f0: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.. . \n-00133760: 3c74 6420 636c 6173 733d 226d 6172 6b64 #W\n-00133740: 4954 485f 4e4f 454d 5054 5953 5452 5543 ITH_NOEMPTYSTRUC\n-00133750: 543c 2f63 6f64 653e 2020 203c 2f74 643e T
inserts a dumm\n-00133790: 7920 6d65 6d62 6572 2069 6e20 656d 7074 y member in empt\n-001337a0: 7920 7374 7275 6374 7320 746f 2061 6c6c y structs to all\n-001337b0: 6f77 2063 6f6d 7069 6c61 7469 6f6e 2020 ow compilation \n-001337c0: 2020 3c2f 7464 3e3c 2f74 723e 0a3c 7472 .<\n-001337f0: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-00133800: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-00133810: 3e3c 636f 6465 3e23 5749 5448 5f4e 4f47 > \n-001338d0: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .#WITH_NOG\n-00133820: 4c4f 4241 4c3c 2f63 6f64 653e 2020 203c LOBAL
<\n-00133830: 2f74 643e 3c74 6420 636c 6173 733d 226d /td>omit SOAP \n-00133860: 4865 6164 6572 2061 6e64 2046 6175 6c74 Header and Fault\n-00133870: 2073 6572 6961 6c69 7a61 7469 6f6e 2063 serialization c\n-00133880: 6f64 652c 2070 7265 7665 6e74 7320 6475 ode, prevents du\n-00133890: 706c 6963 6174 6520 6465 6669 6e69 7469 plicate definiti\n-001338a0: 6f6e 7320 7769 7468 2067 656e 6572 6174 ons with generat\n-001338b0: 6564 2073 6f61 7058 595a 4c69 6220 636f ed soapXYZLib co\n-001338c0: 6465 2020 2020 3c2f 7464 3e3c 2f74 723e de . .#WITH_\n-00133920: 4e4f 4e41 4d45 5350 4143 4553 3c2f 636f NONAMESPACES
dis\n-00133960: 6162 6c65 7320 6465 7065 6e64 656e 6365 ables dependence\n-00133970: 206f 6e20 676c 6f62 616c 203c 636f 6465 on global namespaces table, a tabl\n-001339a0: 6520 6d75 7374 2062 6520 7365 7420 6578 e must be set ex\n-001339b0: 706c 6963 6974 6c79 2077 6974 6820 3c63 plicitly with
.<\n-00133b40: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-00133b50: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-00133b60: 3e3c 636f 6465 3e23 5749 5448 5f43 4441 > .#WITH_CDA\n-00133b70: 5441 3c2f 636f 6465 3e20 2020 3c2f 7464 TA
retains the p\n-00133bb0: 6172 7365 6420 4344 4154 4120 7365 6374 arsed CDATA sect\n-00133bc0: 696f 6e73 2069 6e20 6c69 7465 7261 6c20 ions in literal \n-00133bd0: 584d 4c20 7374 7269 6e67 7320 2020 203c XML strings <\n-00133be0: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td> . .\n-00133d00: 3c74 7220 636c 6173 733d 226d 6172 6b64 enables C+\n-00133c80: 2b20 6162 7374 7261 6374 2073 6572 7669 + abstract servi\n-00133c90: 6365 2063 6c61 7373 6573 2077 6974 6820 ce classes with \n-00133ca0: 7075 7265 2076 6972 7475 616c 206d 6574 pure virtual met\n-00133cb0: 686f 6473 2c20 7265 7175 6972 6573 2073 hods, requires s\n-00133cc0: 6f61 7063 7070 3220 6f70 7469 6f6e 203c oapcpp2 option <\n-00133cd0: 636f 6465 3e2d 693c 2f63 6f64 653e 206f code>-i o\n-00133ce0: 7220 3c63 6f64 653e 2d6a 3c2f 636f 6465 r -j
. .#WITH_\n-00133d50: 4445 4641 554c 545f 5649 5254 5541 4c3c DEFAULT_VIRTUAL<\n-00133d60: 2f63 6f64 653e 2020 203c 2f74 643e 3c74 /code>
-i
-j\n-00133e30: 3c2f 636f 6465 3e20 2020 203c 2f74 643e
\n-00133e40: 3c2f 7472 3e0a 3c74 7220 636c 6173 733d . .#\n-00133e90: 5749 5448 5f43 4153 4549 4e53 454e 5349 WITH_CASEINSENSI\n-00133ea0: 5449 5645 5441 4753 3c2f 636f 6465 3e20 TIVETAGS
\n-00133eb0: 2020 3c2f 7464 3e3c 7464 2063 6c61 7373 enables\n-00133ee0: 2063 6173 6520 696e 7365 6e73 6974 6976 case insensitiv\n-00133ef0: 6520 584d 4c20 7061 7273 696e 6720 2020 e XML parsing \n-00133f00: 203c 2f74 643e 3c2f 7472 3e0a 3c74 7220 . \n-00134eb0: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .#WITH_SOCK\n-00133f60: 4554 5f43 4c4f 5345 5f4f 4e5f 4558 4954 ET_CLOSE_ON_EXIT\n-00133f70: 3c2f 636f 6465 3e20 2020 3c2f 7464 3e3c
<\n-00133f80: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-00133f90: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-00133fa0: 3e70 7265 7665 6e74 7320 6120 7365 7276 >prevents a serv\n-00133fb0: 6572 2070 6f72 7420 6672 6f6d 2073 7461 er port from sta\n-00133fc0: 7969 6e67 2069 6e20 6c69 7374 656e 696e ying in listenin\n-00133fd0: 6720 6d6f 6465 2061 6674 6572 2065 7869 g mode after exi\n-00133fe0: 7420 6279 2069 6e74 6572 6e61 6c6c 7920 t by internally \n-00133ff0: 7365 7474 696e 6720 3c63 6f64 653e 6663 setting fc\n-00134000: 6e74 6c28 736f 636b 2c20 465f 5345 5446 ntl(sock, F_SETF\n-00134010: 442c 2046 445f 434c 4f45 5845 4329 3c2f D, FD_CLOEXEC)\n-00134020: 636f 6465 3e20 2020 203c 2f74 643e 3c2f code> \n-00134030: 7472 3e0a 3c74 7220 636c 6173 733d 226d tr>.
. .#WI\n-00134080: 5448 5f54 4350 4649 4e3c 2f63 6f64 653e TH_TCPFIN
\n-00134090: 2020 203c 2f74 643e 3c74 6420 636c 6173 enable\n-001340c0: 7320 5443 5020 4649 4e20 6166 7465 7220 s TCP FIN after \n-001340d0: 7365 6e64 7320 7768 656e 2073 6f63 6b65 sends when socke\n-001340e0: 7420 6973 2072 6561 6479 2074 6f20 636c t is ready to cl\n-001340f0: 6f73 6520 2020 203c 2f74 643e 3c2f 7472 ose . .\n-001342a0: 7461 626c 653e 0a3c 703e 5468 6520 666f table>.#WIT\n-00134150: 485f 5345 4c46 5f50 4950 453c 2f63 6f64 H_SELF_PIPE
enab\n-00134190: 6c65 7320 6120 2273 656c 6620 7069 7065 les a \"self pipe\n-001341a0: 2220 746f 2065 6e61 626c 6520 7468 6520 \" to enable the \n-001341b0: 3c63 6f64 653e 3c61 2063 6c61 7373 3d22 soa\n-00134250: 705f 636c 6f73 655f 636f 6e6e 6563 7469 p_close_connecti\n-00134260: 6f6e 3c2f 613e 3c2f 636f 6465 3e20 6675 on
fu\n-00134270: 6e63 7469 6f6e 2028 6753 4f41 5020 322e nction (gSOAP 2.\n-00134280: 382e 3731 206f 7220 6772 6561 7465 7229 8.71 or greater)\n-00134290: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c2f -D
to set \n-001343e0: 7468 6520 6d61 6372 6f3a 3c2f 703e 0a3c the macro:. de\n-00134450: 6669 6e65 2020 203c 2f74 683e 3c74 6820 fine re\n-00134480: 7375 6c74 2020 2020 3c2f 7468 3e3c 2f74 sult .. .#SOA\n-001344e0: 505f 4e4f 5448 524f 573c 2f63 6f64 653e P_NOTHROW
\n-001344f0: 2020 203c 2f74 643e 3c74 6420 636c 6173 expand\n-00134520: 7320 746f 203c 636f 6465 3e28 7374 643a s to (std:\n-00134530: 3a6e 6f74 6872 6f77 293c 2f63 6f64 653e :nothrow)
\n-00134540: 2074 6f20 7072 6576 656e 7420 6d65 6d6f to prevent memo\n-00134550: 7279 2061 6c6c 6f63 6174 696f 6e20 6578 ry allocation ex\n-00134560: 6365 7074 696f 6e73 2028 3c63 6f64 653e ceptions (\n-00134570: 2353 4f41 505f 454f 4d3c 2f63 6f64 653e #SOAP_EOM
\n-00134580: 2069 7320 7573 6564 2069 6e73 7465 6164 is used instead\n-00134590: 292c 2074 6869 7320 6d61 6372 6f20 6361 ), this macro ca\n-001345a0: 6e20 6265 2063 6861 6e67 6564 2020 2020 n be changed \n-001345b0: 3c2f 7464 3e3c 2f74 723e 0a3c 7472 2063 . .<\n-00134600: 636f 6465 3e23 534f 4150 5f42 5546 4c45 code>#SOAP_BUFLE\n-00134610: 4e3c 2f63 6f64 653e 2020 203c 2f74 643e N \n-00134620: 3c74 6420 636c 6173 733d 226d 6172 6b64 the length of \n-00134650: 7468 6520 696e 7465 726e 616c 206d 6573 the internal mes\n-00134660: 7361 6765 2062 7566 6665 722c 2069 6d70 sage buffer, imp\n-00134670: 6163 7473 2063 6f6d 6d75 6e69 6361 7469 acts communicati\n-00134680: 6f6e 7320 7065 7266 6f72 6d61 6e63 6520 ons performance \n-00134690: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 #SOAP_HDR\n-001346f0: 4c45 4e3c 2f63 6f64 653e 2020 203c 2f74 LEN
the maximum \n-00134730: 6c65 6e67 7468 206f 6620 4854 5450 2068 length of HTTP h\n-00134740: 6561 6465 7273 2020 2020 3c2f 7464 3e3c eaders <\n-00134750: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.. .#\n-001347a0: 534f 4150 5f54 4147 4c45 4e3c 2f63 6f64 SOAP_TAGLEN
the \n-001347e0: 6d61 7869 6d75 6d20 6c65 6e67 7468 206f maximum length o\n-001347f0: 6620 584d 4c20 7461 6773 2061 6e64 2055 f XML tags and U\n-00134800: 524c 7320 2020 203c 2f74 643e 3c2f 7472 RLs . .#SOAP\n-00134860: 5f54 4d50 4c45 4e3c 2f63 6f64 653e 2020 _TMPLEN
\n-00134870: 203c 2f74 643e 3c74 6420 636c 6173 733d the maxi\n-001348a0: 6d75 6d20 6c65 6e67 7468 206f 6620 7465 mum length of te\n-001348b0: 6d70 6f72 6172 7920 7374 7269 6e67 2076 mporary string v\n-001348c0: 616c 7565 732c 2073 686f 7274 2073 7472 alues, short str\n-001348d0: 696e 6773 2061 6e64 2062 7269 6566 2065 ings and brief e\n-001348e0: 7272 6f72 206d 6573 7361 6765 7320 2020 rror messages \n-001348f0: 203c 2f74 643e 3c2f 7472 3e0a 3c74 7220 . #SOAP_MAXA\n-00134950: 4c4c 4f43 5349 5a45 3c2f 636f 6465 3e20 LLOCSIZE
\n-00134960: 2020 3c2f 7464 3e3c 7464 2063 6c61 7373 the max\n-00134990: 696d 756d 2073 697a 6520 6f66 2061 2062 imum size of a b\n-001349a0: 6c6f 636b 206f 6620 6d65 6d6f 7279 2074 lock of memory t\n-001349b0: 6861 7420 3c63 6f64 653e 6d61 6c6c 6f63 hat malloc\n-001349c0: 3c2f 636f 6465 3e20 6361 6e20 616c 6c6f
can allo\n-001349d0: 6361 7465 2020 2020 3c2f 7464 3e3c 2f74 cate . #SOA\n-00134a30: 505f 4d41 5841 5252 4159 5349 5a45 3c2f P_MAXARRAYSIZE\n-00134a40: 636f 6465 3e20 2020 3c2f 7464 3e3c 7464 code>
t\n-00134a70: 6865 206d 6178 696d 756d 2061 6c6c 6f63 he maximum alloc\n-00134a80: 6174 696f 6e20 7468 7265 7368 6f6c 6420 ation threshold \n-00134a90: 746f 2070 7265 2d61 6c6c 6f63 6174 6520 to pre-allocate \n-00134aa0: 534f 4150 2061 7272 6179 7320 696e 206d SOAP arrays in m\n-00134ab0: 656d 6f72 7920 2020 203c 2f74 643e 3c2f emory \n-00134ac0: 7472 3e0a 3c74 7220 636c 6173 733d 226d tr>.. .#S\n-00134b10: 4f41 505f 4d41 5844 494d 4553 495a 453c OAP_MAXDIMESIZE<\n-00134b20: 2f63 6f64 653e 2020 203c 2f74 643e 3c74 /code>
. \n-00134c80: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .#SOAP\n-00134be0: 5f4d 4158 4549 4e54 523c 2f63 6f64 653e _MAXEINTR
\n-00134bf0: 2020 203c 2f74 643e 3c74 6420 636c 6173 maximu\n-00134c20: 6d20 6e75 6d62 6572 206f 6620 4549 4e54 m number of EINT\n-00134c30: 5220 696e 7465 7272 7570 7473 2074 6f20 R interrupts to \n-00134c40: 6967 6e6f 7265 2077 6869 6c65 2070 6f6c ignore while pol\n-00134c50: 6c69 6e67 2061 2073 6f63 6b65 7420 666f ling a socket fo\n-00134c60: 7220 7065 6e64 696e 6720 6163 7469 7669 r pending activi\n-00134c70: 7479 2020 2020 3c2f 7464 3e3c 2f74 723e ty . .#SOAP\n-00134cd0: 5f4d 4158 494e 464c 4154 4553 495a 453c _MAXINFLATESIZE<\n-00134ce0: 2f63 6f64 653e 2020 203c 2f74 643e 3c74 /code>
#SOAP_MAX\n-00134da0: 4b45 4550 414c 4956 453c 2f63 6f64 653e KEEPALIVE
\n-00134db0: 2020 203c 2f74 643e 3c74 6420 636c 6173 maximu\n-00134de0: 6d20 6974 6572 6174 696f 6e73 2069 6e20 m iterations in \n-00134df0: 7468 6520 3c63 6f64 653e 3c61 2063 6c61 the soap_se\n-00134e70: 7276 653c 2f61 3e3c 2f63 6f64 653e 206c rve
l\n-00134e80: 6f6f 7020 6f6e 2048 5454 5020 6b65 6570 oop on HTTP keep\n-00134e90: 2d61 6c69 7665 2063 6f6e 6e65 6374 696f -alive connectio\n-00134ea0: 6e73 2020 2020 3c2f 7464 3e3c 2f74 723e ns . .\n-00134fb0: 3c74 7220 636c 6173 733d 226d 6172 6b64 #SOAP\n-00134f00: 5f4d 4158 4c45 4e47 5448 3c2f 636f 6465 _MAXLENGTH
maxim\n-00134f40: 756d 2073 7472 696e 6720 636f 6e74 656e um string conten\n-00134f50: 7420 6c65 6e67 7468 2066 6f72 2073 7472 t length for str\n-00134f60: 696e 6773 206e 6f74 2061 6c72 6561 6479 ings not already\n-00134f70: 2063 6f6e 7374 7261 696e 6564 2062 7920 constrained by \n-00134f80: 584d 4c20 7363 6865 6d61 2076 616c 6964 XML schema valid\n-00134f90: 6174 696f 6e20 636f 6e73 7472 6169 6e74 ation constraint\n-00134fa0: 7320 2020 203c 2f74 643e 3c2f 7472 3e0a s \n-00134fd0: 0a3c 7464 2063 6c61 7373 3d22 6d61 726b . .#SOAP_M\n-00135000: 4158 4c45 5645 4c3c 2f63 6f64 653e 2020 AXLEVEL
\n-00135010: 203c 2f74 643e 3c74 6420 636c 6173 733d maximum \n-00135040: 584d 4c20 6e65 7374 696e 6720 6465 7074 XML nesting dept\n-00135050: 6820 6c65 7665 6c20 7065 726d 6974 7465 h level permitte\n-00135060: 6420 6279 2074 6865 2058 4d4c 2070 6172 d by the XML par\n-00135070: 7365 7220 2020 203c 2f74 643e 3c2f 7472 ser . .#SOA\n-001350d0: 505f 4d41 584f 4343 5552 533c 2f63 6f64 P_MAXOCCURS
maxi\n-00135110: 6d75 6d20 6e75 6d62 6572 206f 6620 6172 mum number of ar\n-00135120: 7261 7920 6f72 2063 6f6e 7461 696e 6572 ray or container\n-00135130: 2065 6c65 6d65 6e74 7320 666f 7220 636f elements for co\n-00135140: 6e74 6169 6e65 7273 2074 6861 7420 6172 ntainers that ar\n-00135150: 6520 6e6f 7420 616c 7265 6164 7920 636f e not already co\n-00135160: 6e73 7472 6169 6e65 6420 6279 2058 4d4c nstrained by XML\n-00135170: 2073 6368 656d 6120 7661 6c69 6461 7469 schema validati\n-00135180: 6f6e 2063 6f6e 7374 7261 696e 7473 2020 on constraints \n-00135190: 2020 3c2f 7464 3e3c 2f74 723e 0a3c 7472 . .#SOAP_MIND\n-001351f0: 4546 4c41 5445 5241 5449 4f3c 2f63 6f64 EFLATERATIO
trus\n-00135230: 7465 6420 6465 666c 6174 696f 6e20 7261 ted deflation ra\n-00135240: 7469 6f20 6166 7465 7220 3c63 6f64 653e tio after <\n-00135280: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.\n-00135250: 2353 4f41 505f 4d41 5849 4e46 4c41 5445 #SOAP_MAXINFLATE\n-00135260: 5349 5a45 3c2f 636f 6465 3e20 6973 2072 SIZE
is r\n-00135270: 6561 6368 6564 2020 2020 3c2f 7464 3e3c eached . . \n-001352f0: 3c74 6420 636c 6173 733d 226d 6172 6b64 #\n-001352d0: 534f 4150 5f50 5552 455f 5649 5254 5541 SOAP_PURE_VIRTUA\n-001352e0: 4c3c 2f63 6f64 653e 2020 203c 2f74 643e L
set to =\n-00135320: 2030 3c2f 636f 6465 3e20 7768 656e 203c 0
when <\n-00135330: 636f 6465 3e23 5749 5448 5f50 5552 455f code>#WITH_PURE_\n-00135340: 5649 5254 5541 4c3c 2f63 6f64 653e 2069 VIRTUAL i\n-00135350: 7320 6465 6669 6e65 6420 2020 203c 2f74 s defined . .#SOAP_SSL_RSA_B\n-001353c0: 4954 533c 2f63 6f64 653e 2020 203c 2f74 ITS
length of th\n-00135400: 6520 5253 4120 6b65 7920 2832 3034 3820 e RSA key (2048 \n-00135410: 6279 2064 6566 6175 6c74 2920 2020 203c by default) <\n-00135420: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td> . .an 8 bit \n-001354c0: 696e 7465 6765 7220 7468 6174 2072 6570 integer that rep\n-001354d0: 7265 7365 6e74 7320 6120 6368 6172 6163 resents a charac\n-001354e0: 7465 7220 7468 6174 2063 6f75 6c64 206e ter that could n\n-001354f0: 6f74 2062 6520 636f 6e76 6572 7465 6420 ot be converted \n-00135500: 746f 2061 6e20 4153 4349 4920 6368 6172 to an ASCII char\n-00135510: 2c20 692e 652e 2077 6865 6e20 636f 6e76 , i.e. when conv\n-00135520: 6572 7469 6e67 2061 6e20 584d 4c20 556e erting an XML Un\n-00135530: 6963 6f64 6520 6368 6172 6163 7465 7220 icode character \n-00135540: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 #SOAP_UNK\n-001355a0: 4e4f 574e 5f55 4e49 434f 4445 5f43 4841 NOWN_UNICODE_CHA\n-001355b0: 523c 2f63 6f64 653e 2020 203c 2f74 643e R
\n-001355c0: 3c74 6420 636c 6173 733d 226d 6172 6b64 integer Unicod\n-001355f0: 6520 7661 6c75 6520 7265 7072 6573 656e e value represen\n-00135600: 7469 6e67 2061 2063 6861 7261 6374 6572 ting a character\n-00135610: 2074 6861 7420 7265 706c 6163 6573 2061 that replaces a\n-00135620: 6e20 696e 7661 6c69 6420 556e 6963 6f64 n invalid Unicod\n-00135630: 6520 636f 6465 2070 6f69 6e74 2020 2020 e code point \n-00135640: 3c2f 7464 3e3c 2f74 723e 0a3c 7472 2063 . <\n-00135690: 636f 6465 3e23 534f 4150 5f4c 4f4e 475f code>#SOAP_LONG_\n-001356a0: 464f 524d 4154 3c2f 636f 6465 3e20 2020 FORMAT \n-001356b0: 3c2f 7464 3e3c 7464 2063 6c61 7373 3d22 macro tha\n-001356e0: 7420 7265 7072 6573 656e 7473 2074 6865 t represents the\n-001356f0: 203c 636f 6465 3e23 4c4f 4e47 3634 3c2f \n-00135720: 7472 3e0a 3c74 7220 636c 6173 733d 226d tr>.#LONG64\n-00135700: 636f 6465 3e20 7072 696e 7466 2025 2d66 code> printf %-f\n-00135710: 6f72 6d61 7420 2020 203c 2f74 643e 3c2f ormat
. .#SO\n-00135770: 4150 5f55 4c4f 4e47 5f46 4f52 4d41 543c AP_ULONG_FORMAT<\n-00135780: 2f63 6f64 653e 2020 203c 2f74 643e 3c74 /code>
\n-001357d0: 2355 4c4f 4e47 3634 3c2f 636f 6465 3e20 #ULONG64
\n-001357e0: 7072 696e 7466 2025 2d66 6f72 6d61 7420 printf %-format \n-001357f0: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 #SOAP_IN\n-00135850: 5641 4c49 445f 534f 434b 4554 3c2f 636f VALID_SOCKET
por\n-00135890: 7461 626c 6520 696e 7661 6c69 6420 736f table invalid so\n-001358a0: 636b 6574 2076 616c 7565 2c20 6361 6e20 cket value, can \n-001358b0: 616c 736f 2075 7365 203c 636f 6465 3e23 also use \n-001359c0: 7472 3e0a 3c2f 7461 626c 653e 0a3c 646c tr>..#\n-001358c0: 3c61 2063 6c61 7373 3d22 656c 2220 6872 soa\n-00135970: 705f 7661 6c69 645f 736f 636b 6574 2873 p_valid_socket(s\n-00135980: 6f63 6b29 3c2f 613e 3c2f 636f 6465 3e20 ock)
\n-00135990: 746f 2063 6865 636b 2069 6620 3c63 6f64 to check if
.gsoap/stds\n-00135a90: 6f61 7032 2e63 7070 3c2f 636f 6465 3e3c oap2.cpp
<\n-00135aa0: 2f65 6d3e 2c20 3c65 6d3e 3c63 6f64 653e /em>, \n-00135ab0: 736f 6170 432e 6370 703c 2f63 6f64 653e soapC.cpp
\n-00135ac0: 3c2f 656d 3e2c 203c 656d 3e3c 636f 6465 , soapClient.cpp<\n-00135ae0: 2f63 6f64 653e 3c2f 656d 3e2c 203c 656d /code>
, soapServe\n-00135b00: 722e 6370 703c 2f63 6f64 653e 3c2f 656d r.cpp
, and all appli\n-00135b20: 6361 7469 6f6e 2073 6f75 7263 6520 636f cation source co\n-00135b30: 6465 2066 696c 6573 2074 6861 7420 696e de files that in\n-00135b40: 636c 7564 6520 3c65 6d3e 3c63 6f64 653e clude \n-00135b50: 6773 6f61 702f 7374 6473 6f61 7032 2e68 gsoap/stdsoap2.h\n-00135b60: 3c2f 636f 6465 3e3c 2f65 6d3e 206f 7220
or \n-00135b70: 3c65 6d3e 3c63 6f64 653e 736f 6170 482e soapH.\n-00135b80: 683c 2f63 6f64 653e 3c2f 656d 3e2e 2049 h
. I\n-00135b90: 6620 7468 6520 6d61 6372 6f73 2061 7265 f the macros are\n-00135ba0: 206e 6f74 2063 6f6e 7369 7374 656e 746c not consistentl\n-00135bb0: 7920 6465 6669 6e65 6420 6174 2063 6f6d y defined at com\n-00135bc0: 7069 6c65 2074 696d 6520 7468 656e 2074 pile time then t\n-00135bd0: 6865 2061 7070 6c69 6361 7469 6f6e 2077 he application w\n-00135be0: 696c 6c20 6c69 6b65 6c79 2063 7261 7368 ill likely crash\n-00135bf0: 2064 7565 2074 6f20 6120 6d69 736d 6174 due to a mismat\n-00135c00: 6368 6573 2069 6e20 7468 6520 6465 636c ches in the decl\n-00135c10: 6172 6174 696f 6e20 616e 6420 7573 6520 aration and use \n-00135c20: 6f66 2074 6865 203c 636f 6465 3e3c 6120 of the soap
context\n-00135c90: 2074 6861 7420 6973 2063 7573 746f 6d69 that is customi\n-00135ca0: 7a65 6420 6279 2074 6865 7365 2066 6c61 zed by these fla\n-00135cb0: 6773 2e3c 2f64 643e 3c2f 646c 3e0a 3c70 gs..Usi\n-00135d20: 6e67 2074 6865 2073 6f61 7064 6566 732e ng the soapdefs.\n-00135d30: 6820 6865 6164 6572 2066 696c 653c 2f68 h header file.
\n-00135d90: 6773 6f61 702f 7374 6473 6f61 7032 2e68 gsoap/stdsoap2.h\n-00135da0: 3c2f 636f 6465 3e3c 2f65 6d3e 2077 6865
whe\n-00135db0: 6e20 636f 6d70 696c 696e 6720 7769 7468 n compiling with\n-00135dc0: 2063 6f6d 7069 6c65 2d74 696d 6520 666c compile-time fl\n-00135dd0: 6167 203c 636f 6465 3e23 5749 5448 5f53 ag #WITH_S\n-00135de0: 4f41 5044 4546 535f 483c 2f63 6f64 653e OAPDEFS_H
\n-00135df0: 3a20 3c2f 703e 3c70 7265 2063 6c61 7373 : c++\n-00135e10: 202d 4420 5749 5448 5f53 4f41 5044 4546 -D WITH_SOAPDEF\n-00135e20: 535f 4820 2d63 2073 7464 736f 6170 322e S_H -c stdsoap2.\n-00135e30: 6370 700a 3c2f 7072 653e 3c70 3e20 5468 cpp.
soap\n-00135e50: 6465 6673 2e68 3c2f 636f 6465 3e3c 2f65 defs.h
file allows u\n-00135e70: 7365 7273 2074 6f20 696e 636c 7564 6520 sers to include \n-00135e80: 6465 6669 6e69 7469 6f6e 7320 616e 6420 definitions and \n-00135e90: 6164 6420 696e 636c 7564 6573 2077 6974 add includes wit\n-00135ea0: 686f 7574 2072 6571 7569 7269 6e67 2063 hout requiring c\n-00135eb0: 6861 6e67 6573 2074 6f20 3c65 6d3e 3c63 hanges to SOAPDEFS\n-00135f30: 5f48 3c2f 636f 6465 3e20 746f 206f 7665 _H
to ove\n-00135f40: 7272 6964 6520 7468 6520 6e61 6d65 203c rride the name <\n-00135f50: 656d 3e3c 636f 6465 3e73 6f61 7064 6566 em>soapdef\n-00135f60: 732e 683c 2f63 6f64 653e 3c2f 656d 3e3a s.h
:\n-00135f70: 203c 2f70 3e3c 7072 6520 636c 6173 733d c++ \n-00135f90: 2d44 2053 4f41 5044 4546 535f 483d 6d79 -D SOAPDEFS_H=my\n-00135fa0: 6465 6673 2e68 202d 6320 7374 6473 6f61 defs.h -c stdsoa\n-00135fb0: 7032 2e63 7070 0a3c 2f70 7265 3e3c 703e p2.cpp.
std\n-001360f0: 3a3a 6f73 7472 6561 6d3c 2f63 6f64 653e ::ostream
\n-00136100: 2077 6974 686f 7574 2073 6f61 7063 7070 without soapcpp\n-00136110: 3220 7468 726f 7769 6e67 2065 7272 6f72 2 throwing error\n-00136120: 732c 2062 7920 7573 696e 6720 3c63 6f64 s, by using class std::ostr\n-00136160: 6561 6d3c 2f63 6f64 653e 3a3c 2f70 3e0a eam
:.\n-00136550: 5275 6e2d 7469 6d65 2066 6c61 6773 3c2f Run-time flags\n-00136560: 6831 3e0a 3c70 3e54 6865 2067 534f 4150 h1>.
. mode \n-00136850: 666c 6167 2020 203c 2f74 683e 3c74 6820 flag in\n-00136880: 2f6f 7574 2020 203c 2f74 683e 3c74 6820 /out re\n-001368b0: 7375 6c74 2020 2020 3c2f 7468 3e3c 2f74 sult .. .<\n-001369a0: 7472 2063 6c61 7373 3d22 6d61 726b 646f tr class=\"markdo\n-001369b0: 776e 5461 626c 6552 6f77 4576 656e 223e wnTableRowEven\">\n-001369c0: 0a3c 7464 2063 6c61 7373 3d22 6d61 726b .#SOA\n-00136910: 505f 494f 5f46 4c55 5348 3c2f 636f 6465 P_IO_FLUSH
out \n-00136950: 203c 2f74 643e 3c74 6420 636c 6173 733d flush ou\n-00136980: 7470 7574 2069 6d6d 6564 6961 7465 6c79 tput immediately\n-00136990: 2020 2020 3c2f 7464 3e3c 2f74 723e 0a3c #SOAP_I\n-001369f0: 4f5f 4255 4646 4552 3c2f 636f 6465 3e20 O_BUFFER
\n-00136a00: 2020 3c2f 7464 3e3c 7464 2063 6c61 7373 out <\n-00136a30: 2f74 643e 3c74 6420 636c 6173 733d 226d /td> enable out\n-00136a60: 7075 7420 6275 6666 6572 696e 672c 2074 put buffering, t\n-00136a70: 6865 2064 6566 6175 6c74 206d 6f64 6520 he default mode \n-00136a80: 666f 7220 736f 636b 6574 2063 6f6e 6e65 for socket conne\n-00136a90: 6374 696f 6e73 2020 2020 3c2f 7464 3e3c ctions <\n-00136aa0: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.. .#S\n-00136af0: 4f41 505f 494f 5f53 544f 5245 3c2f 636f OAP_IO_STORE
out\n-00136b30: 2020 203c 2f74 643e 3c74 6420 636c 6173 store \n-00136b60: 7468 6520 656e 7469 7265 206f 7574 626f the entire outbo\n-00136b70: 756e 6420 6d65 7373 6167 6520 746f 2063 und message to c\n-00136b80: 616c 6375 6c61 7465 2048 5454 5020 636f alculate HTTP co\n-00136b90: 6e74 656e 7420 6c65 6e67 7468 2020 2020 ntent length \n-00136ba0: 3c2f 7464 3e3c 2f74 723e 0a3c 7472 2063 . <\n-00136bf0: 636f 6465 3e23 534f 4150 5f49 4f5f 4348 code>#SOAP_IO_CH\n-00136c00: 554e 4b3c 2f63 6f64 653e 2020 203c 2f74 UNK out <\n-00136c40: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-00136c50: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-00136c60: 3e65 6e61 626c 6520 4854 5450 2063 6875 >enable HTTP chu\n-00136c70: 6e6b 696e 6720 2020 203c 2f74 643e 3c2f nking \n-00136c80: 7472 3e0a 3c74 7220 636c 6173 733d 226d tr>.. .#SO\n-00136cd0: 4150 5f49 4f5f 4c45 4e47 5448 3c2f 636f AP_IO_LENGTH
out\n-00136d10: 2020 203c 2f74 643e 3c74 6420 636c 6173 used w\n-00136d40: 6974 6820 7477 6f2d 7068 6173 6520 7365 ith two-phase se\n-00136d50: 7269 616c 697a 6174 696f 6e2c 2066 6972 rialization, fir\n-00136d60: 7374 2070 6861 7365 2077 6974 6820 7468 st phase with th\n-00136d70: 6973 2066 6c61 6720 746f 2063 616c 6375 is flag to calcu\n-00136d80: 6c61 7465 2048 5454 5020 636f 6e74 656e late HTTP conten\n-00136d90: 7420 6c65 6e67 7468 2020 2020 3c2f 7464 t length . \n-00136eb0: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b .#SOAP_IO_KEEPAL\n-00136e00: 4956 453c 2f63 6f64 653e 2020 203c 2f74 IVE
in+out keep socket \n-00136e70: 636f 6e6e 6563 7469 6f6e 7320 616c 6976 connections aliv\n-00136e80: 652c 2077 6865 6e20 7375 7070 6f72 7465 e, when supporte\n-00136e90: 6420 6279 2074 6865 2048 5454 5020 7065 d by the HTTP pe\n-00136ea0: 6572 2020 2020 3c2f 7464 3e3c 2f74 723e er . .#SOAP_\n-00136f00: 494f 5f55 4450 3c2f 636f 6465 3e20 2020 IO_UDP
\n-00136f10: 3c2f 7464 3e3c 7464 2063 6c61 7373 3d22 in+out \n-00136f40: 3c2f 7464 3e3c 7464 2063 6c61 7373 3d22 use UDP (\n-00136f70: 6461 7461 6772 616d 2920 7472 616e 7370 datagram) transp\n-00136f80: 6f72 742c 206d 6178 696d 756d 206d 6573 ort, maximum mes\n-00136f90: 7361 6765 206c 656e 6774 6820 6973 203c sage length is <\n-00136fa0: 636f 6465 3e23 534f 4150 5f42 5546 4c45 code>#SOAP_BUFLE\n-00136fb0: 4e3c 2f63 6f64 653e 2020 2020 3c2f 7464 N . . <\n-00137030: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-00137040: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-00137050: 3e69 6e2b 6f75 7420 2020 3c2f 7464 3e3c >in+out <\n-00137060: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-00137070: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-00137080: 3e75 7365 2070 6c61 696e 206d 6573 7361 >use plain messa\n-00137090: 6765 7320 7769 7468 6f75 7420 7061 7273 ges without pars\n-001370a0: 696e 6720 6f72 2065 6d69 7474 696e 6720 ing or emitting \n-001370b0: 4854 5450 2068 6561 6465 7273 2020 2020 HTTP headers \n-001370c0: 3c2f 7464 3e3c 2f74 723e 0a3c 7472 2063 #SOAP_ENC_PLAIN\n-00137020: 3c2f 636f 6465 3e20 2020 3c2f 7464 3e3c
. . \n-00137130: 3c74 6420 636c 6173 733d 226d 6172 6b64 alias f\n-00137180: 6f72 203c 636f 6465 3e23 534f 4150 5f45 or #SOAP_E\n-00137190: 4e43 5f50 4c41 494e 3c2f 636f 6465 3e20 NC_PLAIN
\n-001371a0: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 #SOAP_EN\n-00137200: 435f 4449 4d45 3c2f 636f 6465 3e20 2020 C_DIME
\n-00137210: 3c2f 7464 3e3c 7464 2063 6c61 7373 3d22 out use DIME enc\n-00137270: 6f64 696e 672c 2061 7574 6f6d 6174 6963 oding, automatic\n-00137280: 2077 6865 6e20 4449 4d45 2061 7474 6163 when DIME attac\n-00137290: 686d 656e 7473 2061 7265 2075 7365 6420 hments are used \n-001372a0: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 .#SOAP_ENC\n-00137300: 5f4d 494d 453c 2f63 6f64 653e 2020 203c _MIME
<\n-00137310: 2f74 643e 3c74 6420 636c 6173 733d 226d /td>out use MIME enco\n-00137370: 6469 6e67 2069 6e73 7465 6164 206f 6620 ding instead of \n-00137380: 4449 4d45 2c20 6163 7469 7661 7465 6420 DIME, activated \n-00137390: 7573 696e 6720 3c63 6f64 653e 3c61 2063 using \n-00137430: 7472 3e0a 3c74 7220 636c 6173 733d 226d tr>.soa\n-00137410: 705f 7365 745f 6d69 6d65 3c2f 613e 3c2f p_set_mime\n-00137420: 636f 6465 3e20 2020 203c 2f74 643e 3c2f code>
. .#S\n-00137480: 4f41 505f 454e 435f 4d54 4f4d 3c2f 636f OAP_ENC_MTOM
out\n-001374c0: 2020 203c 2f74 643e 3c74 6420 636c 6173 use MT\n-001374f0: 4f4d 2058 4f50 2061 7474 6163 686d 656e OM XOP attachmen\n-00137500: 7473 2069 6e73 7465 6164 206f 6620 4449 ts instead of DI\n-00137510: 4d45 2061 6e64 204d 494d 4520 2020 203c ME and MIME <\n-00137520: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td> . \n-00137590: 3c74 6420 636c 6173 733d 226d 6172 6b64 out c\n-001375e0: 6f6d 7072 6573 7320 6f75 7470 7574 2077 ompress output w\n-001375f0: 6974 6820 5a6c 6962 2c20 7573 696e 6720 ith Zlib, using \n-00137600: 6465 666c 6174 6520 6f72 2067 7a69 7020 deflate or gzip \n-00137610: 666f 726d 6174 2020 2020 3c2f 7464 3e3c format <\n-00137620: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.. #\n-00137670: 534f 4150 5f45 4e43 5f53 534c 3c2f 636f SOAP_ENC_SSL
in+\n-001376b0: 6f75 7420 2020 3c2f 7464 3e3c 7464 2063 out use\n-001376e0: 2053 534c 2f54 4c53 2c20 6175 746f 6d61 SSL/TLS, automa\n-001376f0: 7469 6320 7768 656e 2063 6f6e 6e65 6374 tic when connect\n-00137700: 696e 6720 2268 7474 7073 3a22 2065 6e64 ing \"https:\" end\n-00137710: 706f 696e 7473 2020 2020 3c2f 7464 3e3c points <\n-00137720: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.. .#S\n-00137770: 4f41 505f 584d 4c5f 494e 4445 4e54 3c2f OAP_XML_INDENT\n-00137780: 636f 6465 3e20 2020 3c2f 7464 3e3c 7464 code>
o\n-001377b0: 7574 2020 203c 2f74 643e 3c74 6420 636c ut outp\n-001377e0: 7574 2069 6e64 656e 7465 6420 584d 4c20 ut indented XML \n-001377f0: 616e 6420 4a53 4f4e 2020 2020 3c2f 7464 and JSON . #SOAP_XML_CANON\n-00137860: 4943 414c 3c2f 636f 6465 3e20 2020 3c2f ICAL
\n-00137870: 7464 3e3c 7464 2063 6c61 7373 3d22 6d61 td>out \n-001378a0: 3c74 6420 636c 6173 733d 226d 6172 6b64 output canonic\n-001378d0: 616c 2058 4d4c 2020 2020 3c2f 7464 3e3c al XML <\n-001378e0: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.. \n-001379f0: 0a3c 7472 2063 6c61 7373 3d22 6d61 726b . \n-00137950: 3c74 6420 636c 6173 733d 226d 6172 6b64 #S\n-00137930: 4f41 505f 584d 4c5f 4445 4641 554c 544e OAP_XML_DEFAULTN\n-00137940: 533c 2f63 6f64 653e 2020 203c 2f74 643e S
out o\n-001379a0: 7574 7075 7420 584d 4c20 7769 7468 2064 utput XML with d\n-001379b0: 6566 6175 6c74 206e 616d 6573 7061 6365 efault namespace\n-001379c0: 2062 696e 6469 6e67 7320 3c63 6f64 653e bindings \n-001379d0: 786d 6c6e 733d 222e 2e2e 223c 2f63 6f64 xmlns=\"...\"
. .#SOAP\n-00137a40: 5f58 4d4c 5f49 474e 4f52 454e 533c 2f63 _XML_IGNORENS
in\n-00137a80: 2020 203c 2f74 643e 3c74 6420 636c 6173 ignore\n-00137ab0: 7320 584d 4c20 6e61 6d65 7370 6163 6573 s XML namespaces\n-00137ac0: 2069 6e20 584d 4c20 696e 7075 7420 2020 in XML input \n-00137ad0: 203c 2f74 643e 3c2f 7472 3e0a 3c74 7220 . <\n-00137b20: 636f 6465 3e23 534f 4150 5f58 4d4c 5f53 code>#SOAP_XML_S\n-00137b30: 5452 4943 543c 2f63 6f64 653e 2020 203c TRICT <\n-00137b40: 2f74 643e 3c74 6420 636c 6173 733d 226d /td> in \n-00137b70: 3c74 6420 636c 6173 733d 226d 6172 6b64 apply strict v\n-00137ba0: 616c 6964 6174 696f 6e20 6f66 2058 4d4c alidation of XML\n-00137bb0: 2069 6e70 7574 2020 2020 3c2f 7464 3e3c input <\n-00137bc0: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.. .#\n-00137c10: 534f 4150 5f58 4d4c 5f54 5245 453c 2f63 SOAP_XML_TREE
in\n-00137c50: 2b6f 7574 2020 203c 2f74 643e 3c74 6420 +out ou\n-00137c80: 743a 2073 6572 6961 6c69 7a65 2064 6174 t: serialize dat\n-00137c90: 6120 6173 2058 4d4c 2074 7265 6573 2028 a as XML trees (\n-00137ca0: 6e6f 206d 756c 7469 2d72 6566 2c20 6475 no multi-ref, du\n-00137cb0: 706c 6963 6174 6520 6461 7461 2077 6865 plicate data whe\n-00137cc0: 6e20 6e65 6365 7373 6172 7929 3b20 696e n necessary); in\n-00137cd0: 3a20 6967 6e6f 7265 2069 6420 6174 7472 : ignore id attr\n-00137ce0: 6962 7574 6573 2028 646f 206e 6f74 2072 ibutes (do not r\n-00137cf0: 6573 6f6c 7665 2069 642d 7265 6629 2020 esolve id-ref) \n-00137d00: 2020 3c2f 7464 3e3c 2f74 723e 0a3c 7472 . .#SOAP_XML_\n-00137d60: 4752 4150 483c 2f63 6f64 653e 2020 203c GRAPH
<\n-00137d70: 2f74 643e 3c74 6420 636c 6173 733d 226d /td>out serialize app\n-00137dd0: 6c69 6361 7469 6f6e 2064 6174 6120 6173 lication data as\n-00137de0: 2061 6e20 584d 4c20 6772 6170 6820 7769 an XML graph wi\n-00137df0: 7468 206d 756c 7469 2d72 6566 2069 642f th multi-ref id/\n-00137e00: 7265 6620 6174 7472 6962 7574 6573 2020 ref attributes \n-00137e10: 2020 3c2f 7464 3e3c 2f74 723e 0a3c 7472 .<\n-00137e40: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-00137e50: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-00137e60: 3e3c 636f 6465 3e23 534f 4150 5f58 4d4c > #SOAP_XML\n-00137e70: 5f4e 494c 3c2f 636f 6465 3e20 2020 3c2f _NIL
\n-00137e80: 7464 3e3c 7464 2063 6c61 7373 3d22 6d61 td>out \n-00137eb0: 3c74 6420 636c 6173 733d 226d 6172 6b64 serialize NULL\n-00137ee0: 2064 6174 6120 6173 2078 7369 3a6e 696c data as xsi:nil\n-00137ef0: 2061 7474 7269 6275 7465 6420 656c 656d attributed elem\n-00137f00: 656e 7473 2020 2020 3c2f 7464 3e3c 2f74 ents .. .#SOA\n-00137f60: 505f 584d 4c5f 4e4f 5459 5045 3c2f 636f P_XML_NOTYPE
out\n-00137fa0: 2020 203c 2f74 643e 3c74 6420 636c 6173 disabl\n-00137fd0: 6520 3c65 6d3e 3c63 6f64 653e 7873 693a e xsi:\n-00137fe0: 7479 7065 3c2f 636f 6465 3e3c 2f65 6d3e type
\n-00137ff0: 2061 7474 7269 6275 7465 7320 2020 203c attributes <\n-00138000: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td>. \n-00138070: 3c74 6420 636c 6173 733d 226d 6172 6b64 in do\n-001380c0: 206e 6f74 2066 6175 6c74 2077 6974 6820 not fault with \n-001380d0: 3c63 6f64 653e 2353 4f41 505f 494f 423c <\n-001380f0: 2f74 723e 0a3c 7472 2063 6c61 7373 3d22 /tr>.#SOAP_IOB<\n-001380e0: 2f63 6f64 653e 2020 2020 3c2f 7464 3e3c /code>
. .#S\n-00138140: 4f41 505f 435f 5554 4653 5452 494e 473c OAP_C_UTFSTRING<\n-00138150: 2f63 6f64 653e 2020 203c 2f74 643e 3c74 /code>
. #SOA\n-00138260: 505f 435f 4d42 5354 5249 4e47 3c2f 636f P_C_MBSTRING
in+\n-001382a0: 6f75 7420 2020 3c2f 7464 3e3c 7464 2063 out ena\n-001382d0: 626c 6520 6d75 6c74 6962 7974 6520 6368 ble multibyte ch\n-001382e0: 6172 6163 7465 7220 7375 7070 6f72 7420 aracter support \n-001382f0: 666f 7220 382d 6269 7420 6368 6172 6163 for 8-bit charac\n-00138300: 7465 7220 7374 7269 6e67 7320 7769 7468 ter strings with\n-00138310: 203c 636f 6465 3e77 6374 6f6d 623c 2f63 \n-00138360: 7472 3e0a 3c74 7220 636c 6173 733d 226d tr>.wctomb and
m\n-00138330: 6274 6f77 633c 2f63 6f64 653e 2075 7369 btowc
usi\n-00138340: 6e67 2074 6865 2063 7572 7265 6e74 206c ng the current l\n-00138350: 6f63 616c 6520 2020 203c 2f74 643e 3c2f ocale . .\n-00138460: 3c2f 7461 626c 653e 0a3c 703e 416c 6c20 .#SO\n-001383b0: 4150 5f43 5f4e 494c 5354 5249 4e47 3c2f AP_C_NILSTRING\n-001383c0: 636f 6465 3e20 2020 3c2f 7464 3e3c 7464 code>
o\n-001383f0: 7574 2020 203c 2f74 643e 3c74 6420 636c ut seri\n-00138420: 616c 697a 6520 656d 7074 7920 7374 7269 alize empty stri\n-00138430: 6e67 7320 6173 2078 7369 3a6e 696c 2061 ngs as xsi:nil a\n-00138440: 7474 7269 6275 7465 6420 656c 656d 656e ttributed elemen\n-00138450: 7473 2020 203c 2f74 643e 3c2f 7472 3e0a ts \n-001384d0: 2353 4f41 505f 494f 5f46 4c55 5348 3c2f #SOAP_IO_FLUSH\n-001384e0: 636f 6465 3e2c 203c 636f 6465 3e23 534f code>,
#SO\n-001384f0: 4150 5f49 4f5f 4255 4646 4552 3c2f 636f AP_IO_BUFFER,
#SOAP\n-00138510: 5f49 4f5f 5354 4f52 453c 2f63 6f64 653e _IO_STORE
\n-00138520: 2c20 616e 6420 3c63 6f64 653e 2353 4f41 , and #SOA\n-00138530: 505f 494f 5f43 4855 4e4b 3c2f 636f 6465 P_IO_CHUNK
which are enum\n-00138550: 6572 6174 696f 6e73 2061 6e64 206f 6e6c erations and onl\n-00138560: 7920 6f6e 6520 6f66 2074 6865 7365 2049 y one of these I\n-00138570: 2f4f 2066 6c61 6773 2063 616e 2062 6520 /O flags can be \n-00138580: 7573 6564 2e20 416c 736f 2074 6865 2058 used. Also the X\n-00138590: 4d4c 2073 6572 6961 6c69 7a61 7469 6f6e ML serialization\n-001385a0: 2066 6c61 6773 203c 636f 6465 3e23 534f flags #SO\n-001385b0: 4150 5f58 4d4c 5f54 5245 453c 2f63 6f64 AP_XML_TREE and
#SO\n-001385d0: 4150 5f58 4d4c 5f47 5241 5048 3c2f 636f AP_XML_GRAPH should not b\n-001385f0: 6520 6d69 7865 642e 3c2f 703e 0a3c 703e e mixed.
soap
context with i\n-00138c80: 6e70 7574 2061 6e64 206f 7574 7075 7420 nput and output \n-00138c90: 6d6f 6465 2066 6c61 6773 3a3c 2f70 3e0a mode flags:// clear out\n-00139ec0: 7075 7420 6d6f 6465 2066 6c61 6773 3c2f put mode flags\n-00139ed0: 7370 616e 3e3c 2f64 6976 3e0a 3c64 6976 span>
.setsoc\n-0013a850: 6b6f 7074 3c2f 636f 6465 3e20 6c65 7665 kopt
leve\n-0013a860: 6c20 3c63 6f64 653e 534f 4c5f 534f 434b l SOL_SOCK\n-0013a870: 4554 3c2f 636f 6465 3e20 6f70 7469 6f6e ET
option\n-0013a880: 7320 7768 656e 2073 6f63 6b65 7473 2061 s when sockets a\n-0013a890: 7265 2063 7265 6174 6564 2c20 7468 6f75 re created, thou\n-0013a8a0: 6768 2073 6f6d 6520 6f70 7469 6f6e 7320 gh some options \n-0013a8b0: 6d61 7920 6e6f 7420 6265 2061 7070 6c69 may not be appli\n-0013a8c0: 6361 626c 6520 746f 2079 6f75 7220 6f70 cable to your op\n-0013a8d0: 6572 6174 696e 6720 7379 7374 656d 3a3c erating system:<\n-0013a8e0: 2f70 3e0a 3c74 6162 6c65 2063 6c61 7373 /p>..
.\n-0013a920: 0a3c 7468 2063 6c61 7373 3d22 6d61 726b . .context flag \n-0013a950: 7769 7468 2073 6574 736f 636b 6f70 7420 with setsockopt \n-0013a960: 6f70 7469 6f6e 2020 203c 2f74 683e 3c74 option . .soap::conn\n-0013aab0: 6563 745f 666c 6167 733c 2f61 3e3c 2f63 ect_flags =
SO_\n-0013aad0: 4e4f 5349 4750 4950 453c 2f63 6f64 653e NOSIGPIPE
\n-0013aae0: 2020 203c 2f74 643e 3c74 6420 636c 6173 disabl\n-0013ab10: 6573 2053 4947 5049 5045 2020 2020 3c2f es SIGPIPE \n-0013ab20: 7464 3e3c 2f74 723e 0a3c 7472 2063 6c61 td> . .turns\n-0013ac90: 206f 6e20 7265 636f 7264 696e 6720 6f66 on recording of\n-0013aca0: 2064 6562 7567 6769 6e67 2069 6e66 6f72 debugging infor\n-0013acb0: 6d61 7469 6f6e 2069 6e20 7468 6520 756e mation in the un\n-0013acc0: 6465 726c 7969 6e67 2070 726f 746f 636f derlying protoco\n-0013acd0: 6c20 6d6f 6475 6c65 7320 2020 203c 2f74 l modules . .soap::c\n-0013adf0: 6f6e 6e65 6374 5f66 6c61 6773 3c2f 613e onnect_flags\n-0013ae00: 3c2f 636f 6465 3e20 3d20 3c63 6f64 653e
= \n-0013ae10: 534f 5f42 524f 4144 4341 5354 3c2f 636f SO_BROADCAST
per\n-0013ae50: 6d69 7473 2073 656e 6469 6e67 206f 6620 mits sending of \n-0013ae60: 6272 6f61 6463 6173 7420 6d65 7373 6167 broadcast messag\n-0013ae70: 6573 2c20 666f 7220 6578 616d 706c 6520 es, for example \n-0013ae80: 7769 7468 2055 4450 2c20 7768 656e 2070 with UDP, when p\n-0013ae90: 6572 6d69 7474 6564 2020 2020 3c2f 7464 ermitted . .\n-0013b120: 3c74 7220 636c 6173 733d 226d 6172 6b64 soap::c\n-0013afb0: 6f6e 6e65 6374 5f66 6c61 6773 3c2f 613e onnect_flags\n-0013afc0: 3c2f 636f 6465 3e20 3d20 3c63 6f64 653e
= \n-0013afd0: 534f 5f4c 494e 4745 523c 2f63 6f64 653e SO_LINGER
\n-0013afe0: 2020 203c 2f74 643e 3c74 6420 636c 6173 sets c\n-0013b010: 6c69 656e 742d 7369 6465 206c 696e 6765 lient-side linge\n-0013b020: 7220 7469 6d65 2074 6f20 7468 6520 7661 r time to the va\n-0013b030: 6c75 6520 6f66 203c 636f 6465 3e3c 6120 lue of soap::linge\n-0013b100: 725f 7469 6d65 3c2f 613e 3c2f 636f 6465 r_time
\n-0013b140: 0a3c 7464 2063 6c61 7373 3d22 6d61 726b . .\n-0013b2c0: 3c74 7220 636c 6173 733d 226d 6172 6b64 soap::connect_f\n-0013b230: 6c61 6773 3c2f 613e 3c2f 636f 6465 3e20 lags
\n-0013b240: 3d20 3c63 6f64 653e 534f 5f44 4f4e 5452 = SO_DONTR\n-0013b250: 4f55 5445 3c2f 636f 6465 3e20 2020 3c2f OUTE
\n-0013b260: 7464 3e3c 7464 2063 6c61 7373 3d22 6d61 td>enables rou\n-0013b290: 7469 6e67 2062 7970 6173 7320 666f 7220 ting bypass for \n-0013b2a0: 6f75 7467 6f69 6e67 206d 6573 7361 6765 outgoing message\n-0013b2b0: 7320 2020 203c 2f74 643e 3c2f 7472 3e0a s . .soap::accept_f\n-0013b3d0: 6c61 6773 3c2f 613e 3c2f 636f 6465 3e20 lags
\n-0013b3e0: 3d20 3c63 6f64 653e 534f 5f4e 4f53 4947 = SO_NOSIG\n-0013b3f0: 5049 5045 3c2f 636f 6465 3e20 2020 3c2f PIPE
\n-0013b400: 7464 3e3c 7464 2063 6c61 7373 3d22 6d61 td>disables SI\n-0013b430: 4750 4950 4520 2863 6865 636b 2079 6f75 GPIPE (check you\n-0013b440: 7220 4f53 2c20 7468 6973 2069 7320 6e6f r OS, this is no\n-0013b450: 7420 706f 7274 6162 6c65 2920 2020 203c t portable) <\n-0013b460: 2f74 643e 3c2f 7472 3e0a 3c74 7220 636c /td> . .SO_DEBUG
\n-0013b5a0: 2020 203c 2f74 643e 3c74 6420 636c 6173 turns \n-0013b5d0: 6f6e 2072 6563 6f72 6469 6e67 206f 6620 on recording of \n-0013b5e0: 6465 6275 6767 696e 6720 696e 666f 726d debugging inform\n-0013b5f0: 6174 696f 6e20 696e 2074 6865 2075 6e64 ation in the und\n-0013b600: 6572 6c79 696e 6720 7072 6f74 6f63 6f6c erlying protocol\n-0013b610: 206d 6f64 756c 6573 2020 2020 3c2f 7464 modules . .<\n-0013b8a0: 7472 2063 6c61 7373 3d22 6d61 726b 646f tr class=\"markdo\n-0013b8b0: 776e 5461 626c 6552 6f77 4f64 6422 3e0a wnTableRowOdd\">.\n-0013b8c0: 3c74 6420 636c 6173 733d 226d 6172 6b64 soap::a\n-0013b730: 6363 6570 745f 666c 6167 733c 2f61 3e3c ccept_flags<\n-0013b740: 2f63 6f64 653e 203d 203c 636f 6465 3e53 /code> =
S\n-0013b750: 4f5f 4c49 4e47 4552 3c2f 636f 6465 3e20 O_LINGER
\n-0013b760: 2020 3c2f 7464 3e3c 7464 2063 6c61 7373 sets se\n-0013b790: 7276 6572 2d73 6964 6520 6c69 6e67 6572 rver-side linger\n-0013b7a0: 2074 696d 6520 746f 2074 6865 2076 616c time to the val\n-0013b7b0: 7565 206f 6620 3c63 6f64 653e 3c61 2063 ue of soap::linger\n-0013b880: 5f74 696d 653c 2f61 3e3c 2f63 6f64 653e _time
\n-0013b890: 2020 2020 3c2f 7464 3e3c 2f74 723e 0a3c \n-0013b9a0: 736f 6170 3a3a 6163 6365 7074 5f66 6c61 soap::accept_fla\n-0013b9b0: 6773 3c2f 613e 3c2f 636f 6465 3e20 3d20 gs
= \n-0013b9c0: 3c63 6f64 653e 534f 5f44 4f4e 5452 4f55 SO_DONTROU\n-0013b9d0: 5445 3c2f 636f 6465 3e20 2020 3c2f 7464 TE
enables routi\n-0013ba10: 6e67 2062 7970 6173 7320 666f 7220 6f75 ng bypass for ou\n-0013ba20: 7467 6f69 6e67 206d 6573 7361 6765 7320 tgoing messages \n-0013ba30: 2020 203c 2f74 643e 3c2f 7472 3e0a 3c74 <\n-0013bb80: 7464 2063 6c61 7373 3d22 6d61 726b 646f td class=\"markdo\n-0013bb90: 776e 5461 626c 6542 6f64 794e 6f6e 6522 wnTableBodyNone\"\n-0013bba0: 3e65 6e61 626c 6573 206c 6f63 616c 2061 >enables local a\n-0013bbb0: 6464 7265 7373 2072 6575 7365 2069 6d6d ddress reuse imm\n-0013bbc0: 6564 6961 7465 6c79 2c20 7573 6520 7769 ediately, use wi\n-0013bbd0: 7468 2063 6175 7469 6f6e 2020 2020 3c2f th caution \n-0013bbe0: 7464 3e3c 2f74 723e 0a3c 7472 2063 6c61 td>.\n-0013bb40: 736f 6170 3a3a 6269 6e64 5f66 6c61 6773 soap::bind_flags\n-0013bb50: 3c2f 613e 3c2f 636f 6465 3e20 3d20 3c63
= . SO\n-0013bd10: 5f52 4555 5345 504f 5254 3c2f 636f 6465 _REUSEPORT
enabl\n-0013bd50: 6573 2064 7570 6c69 6361 7465 2061 6464 es duplicate add\n-0013bd60: 7265 7373 2061 6e64 2070 6f72 7420 6269 ress and port bi\n-0013bd70: 6e64 696e 6773 2020 203c 2f74 643e 3c2f ndings \n-0013bd80: 7472 3e0a 3c2f 7461 626c 653e 0a3c 703e tr>.\n-0013be60: 736f 6170 3a3a 6163 6365 7074 5f66 6c61 soap::accept_fla\n-0013be70: 6773 3c2f 613e 3c2f 636f 6465 3e20 6973 gs
is\n-0013be80: 2073 6574 2074 6f20 3c63 6f64 653e 2853 set to (S\n-0013be90: 4f5f 4e4f 5349 4750 4950 4520 7c20 534f O_NOSIGPIPE | SO\n-0013bea0: 5f4c 494e 4745 5229 3c2f 636f 6465 3e20 _LINGER)
\n-0013beb0: 7468 6973 2064 6973 6162 6c65 7320 5349 this disables SI\n-0013bec0: 4750 4950 4520 7369 676e 616c 7320 616e GPIPE signals an\n-0013bed0: 6420 7365 7420 6c69 6e67 6572 2074 696d d set linger tim\n-0013bee0: 6520 7661 6c75 6520 6769 7665 6e20 6279 e value given by\n-0013bef0: 203c 636f 6465 3e3c 6120 636c 6173 733d s\n-0013bfb0: 6f61 703a 3a6c 696e 6765 725f 7469 6d65 oap::linger_time\n-0013bfc0: 3c2f 613e 3c2f 636f 6465 3e2c 2077 6869
, whi\n-0013bfd0: 6368 2069 7320 7a65 726f 2062 7920 6465 ch is zero by de\n-0013bfe0: 6661 756c 742e 3c2f 703e 0a3c 703e 5468 fault.\n-0013c0b0: 736f 6170 3a3a 736f 636b 6574 5f66 6c61 soap::socket_fla\n-0013c0c0: 6773 3c2f 613e 3c2f 636f 6465 3e20 636f gs
co\n-0013c0d0: 6e74 6578 7420 666c 6167 2063 616e 2062 ntext flag can b\n-0013c0e0: 6520 7573 6564 2074 6f20 7061 7373 206f e used to pass o\n-0013c0f0: 7074 696f 6e73 2074 6f20 7468 6520 3c63 ptions to the send
, sendto<\n-0013c140: 2f63 6f64 653e 2c20 3c63 6f64 653e 7265 /code>,
re\n-0013c150: 6376 3c2f 636f 6465 3e2c 2061 6e64 203c cv
, and <\n-0013c160: 636f 6465 3e72 6563 7666 726f 6d3c 2f63 code>recvfrom.
.. .context fl\n-0013c240: 6167 2077 6974 6820 7365 6e74 2f72 6563 ag with sent/rec\n-0013c250: 7620 666c 6167 7320 2020 3c2f 7468 3e3c v flags <\n-0013c260: 7468 2063 6c61 7373 3d22 6d61 726b 646f th class=\"markdo\n-0013c270: 776e 5461 626c 6548 6561 644e 6f6e 6522 wnTableHeadNone\"\n-0013c280: 3e72 6573 756c 7420 2020 203c 2f74 683e >result \n-0013c290: 3c2f 7472 3e0a 3c74 7220 636c 6173 733d . .<\n-0013c2e0: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0013c2f0: 663d 2273 7472 7563 7473 6f61 702e 6874 f=\"structsoap.ht\n-0013c300: 6d6c 2361 6165 3365 6565 3737 3164 3863 ml#aae3eee771d8c\n-0013c310: 3430 3331 6433 3064 3463 6137 3633 3365 4031d30d4ca7633e\n-0013c320: 6466 3966 2220 7469 746c 653d 2255 7365 df9f\" title=\"Use\n-0013c330: 722d 6465 6669 6e61 626c 6520 736f 636b r-definable sock\n-0013c340: 6574 2073 656e 6420 616e 6420 7265 6376 et send and recv\n-0013c350: 2066 6c61 6773 2c20 666f 7220 6578 616d flags, for exam\n-0013c360: 706c 6520 6173 7369 676e 204d 5347 5f4e ple assign MSG_N\n-0013c370: 4f53 4947 4e41 4c20 746f 2064 6973 6162 OSIGNAL to disab\n-0013c380: 6c65 2073 6967 7069 7065 2028 7468 6520 le sigpipe (the \n-0013c390: 7661 2e2e 2e22 3e73 6f61 703a 3a73 6f63 va...\">soap::soc\n-0013c3a0: 6b65 745f 666c 6167 733c 2f61 3e3c 2f63 ket_flags =
MSG\n-0013c3c0: 5f4e 4f53 4947 4e41 4c3c 2f63 6f64 653e _NOSIGNAL
\n-0013c3d0: 2020 203c 2f74 643e 3c74 6420 636c 6173 disabl\n-0013c400: 6573 2053 4947 5049 5045 2020 2020 3c2f es SIGPIPE \n-0013c410: 7464 3e3c 2f74 723e 0a3c 7472 2063 6c61 td> . .MSG_DONTROUTE\n-0013c550: 636f 6465 3e20 2020 3c2f 7464 3e3c 7464 code>
e\n-0013c580: 6e61 626c 6573 2072 6f75 7469 6e67 2062 nables routing b\n-0013c590: 7970 6173 7320 666f 7220 6f75 7467 6f69 ypass for outgoi\n-0013c5a0: 6e67 206d 6573 7361 6765 7320 2020 3c2f ng messages \n-0013c5b0: 7464 3e3c 2f74 723e 0a3c 2f74 6162 6c65 td> sets\n-0013c5e0: 6f63 6b6f 7074 3c2f 636f 6465 3e20 6c65 ockopt
le\n-0013c5f0: 7665 6c20 3c63 6f64 653e 534f 4c5f 534f vel SOL_SO\n-0013c600: 434b 4554 3c2f 636f 6465 3e20 6f70 7469 CKET
opti\n-0013c610: 6f6e 7320 3c63 6f64 653e 534f 5f53 4e44 ons SO_SND\n-0013c620: 4255 463c 2f63 6f64 653e 2061 6e64 203c BUF
and <\n-0013c630: 636f 6465 3e53 4f5f 5243 5642 5546 3c2f code>SO_RCVBUF\n-0013c640: 636f 6465 3e20 6172 6520 7365 7420 7468 code> are set th\n-0013c650: 6520 656e 6769 6e65 2077 6865 6e20 3c63 e engine when soap::rcvbuf\n-0013c7e0: 3c2f 613e 3c2f 636f 6465 3e20 6172 6520
are \n-0013c7f0: 7365 7420 746f 2061 206e 6f6e 7a65 726f set to a nonzero\n-0013c800: 2076 616c 7565 2e20 5468 6520 6465 6661 value. The defa\n-0013c810: 756c 7420 7661 6c75 6520 6973 203c 636f ult value is soap::b\n-0013c930: 7566 3c2f 613e 3c2f 636f 6465 3e20 746f uf
to\n-0013c940: 2073 656e 6420 616e 6420 7265 6365 6976 send and receiv\n-0013c950: 6520 6d65 7373 6167 6573 2e20 4120 7a65 e messages. A ze\n-0013c960: 726f 2076 616c 7565 206f 6d69 7473 2074 ro value omits t\n-0013c970: 6865 2069 6e74 6572 6e61 6c20 3c63 6f64 he internal s\n-0013ca10: 6574 736f 636b 6f70 743c 2f63 6f64 653e etsockopt
\n-0013ca20: 206c 6576 656c 203c 636f 6465 3e53 4f4c level SOL\n-0013ca30: 5f53 4f43 4b45 543c 2f63 6f64 653e 206f _SOCKET
o\n-0013ca40: 7074 696f 6e20 3c63 6f64 653e 534f 5f4b ption SO_K\n-0013ca50: 4545 5041 4c49 5645 3c2f 636f 6465 3e20 EEPALIVE
\n-0013ca60: 6973 2073 6574 2077 6865 6e20 6b65 6570 is set when keep\n-0013ca70: 2d61 6c69 7665 2069 7320 656e 6162 6c65 -alive is enable\n-0013ca80: 6420 7769 7468 2063 6f6e 7465 7874 2066 d with context f\n-0013ca90: 6c61 6720 3c63 6f64 653e 2353 4f41 505f lag #SOAP_\n-0013caa0: 494f 5f4b 4545 5041 4c49 5645 3c2f 636f IO_KEEPALIVE or when
is non\n-0013cba0: 7a65 726f 2e20 5769 7468 203c 636f 6465 zero. With soap::t\n-0013cc70: 6370 5f6b 6565 705f 616c 6976 653c 2f61 cp_keep_alive
additio\n-0013cc90: 6e61 6c20 6f70 7469 6f6e 7320 6361 6e20 nal options can \n-0013cca0: 6265 2073 7065 6369 6669 6564 2077 6974 be specified wit\n-0013ccb0: 6820 3c63 6f64 653e 3c61 2063 6c61 7373 h soap::tcp\n-0013cd60: 5f6b 6565 705f 6964 6c65 3c2f 613e 3c2f _keep_idle\n-0013cd70: 636f 6465 3e2c 203c 636f 6465 3e3c 6120 code>,
soa\n-0013ce20: 703a 3a74 6370 5f6b 6565 705f 696e 7476 p::tcp_keep_intv\n-0013ce30: 6c3c 2f61 3e3c 2f63 6f64 653e 2c20 616e l
, an\n-0013ce40: 6420 3c63 6f64 653e 3c61 2063 6c61 7373 d soap::tcp_\n-0013cef0: 6b65 6570 5f63 6e74 3c2f 613e 3c2f 636f keep_cnt. For example\n-0013cf10: 3a3c 2f70 3e0a 3c64 6976 2063 6c61 7373 :
struct soap *soap\n-0013cfc0: 613e 203d 203c 6120 636c 6173 733d 2263 a> = soap_n\n-0013d020: 6577 3c2f 613e 2829 3b3c 2f64 6976 3e0a ew();// time in s\n-0013d310: 6563 6f6e 6473 2062 6574 7765 656e 2069 econds between i\n-0013d320: 6e64 6976 6964 7561 6c20 6b65 6570 616c ndividual keepal\n-0013d330: 6976 6520 7072 6f62 6573 3c2f 7370 616e ive probesname\n-00149b50: 3c2f 636f 6465 3e20 6d65 6d62 6572 2069
member i\n-00149b60: 7320 6120 6368 6172 6163 7465 7220 706f s a character po\n-00149b70: 696e 7465 7220 746f 2061 2073 7472 696e inter to a strin\n-00149b80: 672c 2077 6865 7265 2073 686f 756c 6420 g, where should \n-00149b90: 7765 2061 6c6c 6f63 6174 6520 7468 6973 we allocate this\n-00149ba0: 2073 7472 696e 673f 2049 6e20 6d6f 7374 string? In most\n-00149bb0: 2063 6173 6573 2077 6520 7769 6c6c 2061 cases we will a\n-00149bc0: 6464 2061 2063 6f6e 7374 7275 6374 6f72 dd a constructor\n-00149bd0: 2074 6861 7420 696e 6974 6961 6c6c 7920 that initially \n-00149be0: 7365 7473 203c 636f 6465 3e6e 616d 653c sets name<\n-00149bf0: 2f63 6f64 653e 2074 6f20 4e55 4c4c 2061 /code> to NULL a\n-00149c00: 6e64 2061 2064 6573 7472 7563 746f 7220 nd a destructor \n-00149c10: 7468 6174 2064 656c 6574 6573 203c 636f that deletes
w\n-00149c30: 6865 6e20 6e6f 6e2d 4e55 4c4c 2c20 6c69 hen non-NULL, li\n-00149c40: 6b65 2073 6f3a 3c2f 703e 0a3c 6469 7620 ke so:if (name)Clas\n-00149e40: 733c 2f63 6f64 653e 2061 7265 2064 6573 s
are des\n-00149e50: 6572 6961 6c69 7a65 6420 7765 2068 6176 erialized we hav\n-00149e60: 6520 6120 7072 6f62 6c65 6d20 7769 7468 e a problem with\n-00149e70: 2074 6869 7320 6170 7072 6f61 6368 2062 this approach b\n-00149e80: 6563 6175 7365 203c 636f 6465 3e66 7265 ecause fre\n-00149e90: 6528 6e61 6d65 293c 2f63 6f64 653e 2064 e(name)
d\n-00149ea0: 656c 6574 6573 2061 206d 616e 6167 6564 eletes a managed\n-00149eb0: 2073 7472 696e 672c 2077 6869 6368 2069 string, which i\n-00149ec0: 7320 6d61 6e61 6765 6420 6279 2074 6865 s managed by the\n-00149ed0: 2063 6f6e 7465 7874 2e20 4265 6361 7573 context. Becaus\n-00149ee0: 6520 7468 6520 6465 7365 7269 616c 697a e the deserializ\n-00149ef0: 6572 2061 6c73 6f20 7365 7473 2074 6865 er also sets the\n-00149f00: 203c 636f 6465 3e73 6f61 703c 2f63 6f64 soap member of thi\n-00149f20: 7320 636c 6173 732c 2074 6865 7265 2069 s class, there i\n-00149f30: 7320 616e 2065 6173 7920 736f 6c75 7469 s an easy soluti\n-00149f40: 6f6e 2074 6f20 7468 6973 2070 726f 626c on to this probl\n-00149f50: 656d 3a3c 2f70 3e0a 3c64 6976 2063 6c61 em:
soa\n-0014a0c0: 703c 2f63 6f64 653e 2063 6f6e 7465 7874 p
context\n-0014a0d0: 2070 6f69 6e74 6572 206d 656d 6265 7220 pointer member \n-0014a0e0: 6973 204e 554c 4c2c 206d 6561 6e69 6e67 is NULL, meaning\n-0014a0f0: 2074 6861 7420 6120 6d61 6e61 6765 6420 that a managed \n-0014a100: 7374 7269 6e67 203c 636f 6465 3e6e 616d string nam\n-0014a110: 653c 2f63 6f64 653e 2077 696c 6c20 6265 e
will be\n-0014a120: 2064 656c 6574 6564 2061 7320 7573 7561 deleted as usua\n-0014a130: 6c20 7769 7468 2074 6865 2064 6573 6572 l with the deser\n-0014a140: 6961 6c69 7a65 6420 636c 6173 7320 7573 ialized class us\n-0014a150: 696e 6720 3c63 6f64 653e 3c61 2063 6c61 ing soap_de\n-0014a210: 7374 726f 793c 2f61 3e3c 2f63 6f64 653e stroy
\n-0014a220: 2061 6e64 203c 636f 6465 3e3c 6120 636c and s\n-0014a2f0: 6f61 705f 656e 643c 2f61 3e3c 2f63 6f64 oap_end.
soa\n-0014a7c0: 705f 756e 6c69 6e6b 3c2f 613e 3c2f 636f p_unlink to unlink da\n-0014a7e0: 7461 206d 616e 6167 6564 2062 7920 7468 ta managed by th\n-0014a7f0: 6520 636f 6e74 6578 7420 616e 6420 6d61 e context and ma\n-0014a800: 6b65 2061 6c6c 2061 6c6c 6f63 6174 696f ke all allocatio\n-0014a810: 6e73 2065 7870 6c69 6369 746c 793a 3c2f ns explicitly:\n-0014a820: 703e 0a3c 6469 7620 636c 6173 733d 2266 p>.
so\n-0014aea0: 6170 5f75 6e6c 696e 6b3c 2f61 3e3c 2f63 ap_unlink call unlink\n-0014aec0: 7320 6461 7461 2061 6e64 206f 626a 6563 s data and objec\n-0014aed0: 7473 2066 726f 6d20 6d61 6e61 6765 6420 ts from managed \n-0014aee0: 6d65 6d6f 7279 2e20 496e 2074 6869 7320 memory. In this \n-0014aef0: 7761 7920 3c63 6f64 653e 3c61 2063 6c61 way
soap_de\n-0014afb0: 7374 726f 793c 2f61 3e3c 2f63 6f64 653e stroy
\n-0014afc0: 2061 6e64 203c 636f 6465 3e3c 6120 636c and s\n-0014b090: 6f61 705f 656e 643c 2f61 3e3c 2f63 6f64 oap_end can be called\n-0014b0b0: 206c 6174 6572 2065 7665 6e20 7768 656e later even when\n-0014b0c0: 2074 6869 7320 636c 6173 7320 7761 7320 this class was \n-0014b0d0: 6465 7365 7269 616c 697a 6564 2e3c 2f70 deserialized.
.Debugging
\n-0014b150: 0a3c 703e 546f 2061 6374 6976 6174 6520 .-lgsoap\n-0014b1e0: 3c2f 636f 6465 3e3c 2f62 3e20 6f72 203c
or <\n-0014b1f0: 623e 3c63 6f64 653e 2d6c 6773 6f61 702b b>-lgsoap+\n-0014b200: 2b3c 2f63 6f64 653e 3c2f 623e 2074 6865 +
the\n-0014b210: 6e20 7265 696e 7374 616c 6c20 6753 4f41 n reinstall gSOA\n-0014b220: 5020 7769 7468 203c 623e 3c63 6f64 653e P with \n-0014b230: 2e2f 636f 6e66 6967 7572 6520 2d2d 656e ./configure --en\n-0014b240: 6162 6c65 2d64 6562 7567 3c2f 636f 6465 able-debug
and .
.SENT.\n-0014b300: 6c6f 673c 2f63 6f64 653e 3c2f 656d 3e20 log
\n-0014b310: 6120 636f 6e63 6174 656e 6174 696f 6e20 a concatenation \n-0014b320: 6f66 2061 6c6c 206d 6573 7361 6765 7320 of all messages \n-0014b330: 7365 6e74 3c2f 6c69 3e0a 3c6c 693e 3c65 sentRECV.log\n-0014b350: 3c2f 636f 6465 3e3c 2f65 6d3e 2061 2063
a c\n-0014b360: 6f6e 6361 7465 6e61 7469 6f6e 206f 6620 oncatenation of \n-0014b370: 616c 6c20 6d65 7373 6167 6573 2072 6563 all messages rec\n-0014b380: 6569 7665 643c 2f6c 693e 0a3c 6c69 3e3c eivedTEST.lo\n-0014b3a0: 673c 2f63 6f64 653e 3c2f 656d 3e20 6120 g
a \n-0014b3b0: 6c6f 6720 6f66 2074 6865 2065 6e67 696e log of the engin\n-0014b3c0: 6527 7320 6f70 6572 6174 696f 6e73 3c2f e's operations\n-0014b3d0: 6c69 3e0a 3c2f 756c 3e0a 3c64 6c20 636c li>.
\n-0014b470: 0a3c 703e 596f 7520 6361 6e20 7365 7420 .#DEB\n-0014b490: 5547 5f53 5441 4d50 3c2f 636f 6465 3e20 UG_STAMP
\n-0014b4a0: 696e 7374 6561 6420 6f66 203c 636f 6465 instead of #DEBUG
t\n-0014b4c0: 6f20 6164 6420 7469 6d65 2073 7461 6d70 o add time stamp\n-0014b4d0: 7320 746f 203c 636f 6465 3e54 4553 542e s to TEST.\n-0014b4e0: 6c6f 673c 2f63 6f64 653e 2e20 5468 6973 log
. This\n-0014b4f0: 2077 6f72 6b73 206f 6e20 616c 6c20 6f70 works on all op\n-0014b500: 6572 6174 696e 6720 7379 7374 656d 7320 erating systems \n-0014b510: 7375 7070 6f72 7469 6e67 2074 6865 203c supporting the <\n-0014b520: 636f 6465 3e67 6574 7469 6d65 6f66 6461 code>gettimeofda\n-0014b530: 793c 2f63 6f64 653e 2066 756e 6374 696f y functio\n-0014b540: 6e2e 3c2f 703e 0a3c 703e 5768 656e 2069 n.ns.ad\n-0014b7e0: 642e 7265 712e 786d 6c3c 2f63 6f64 653e d.req.xml
\n-0014b7f0: 3c2f 656d 3e20 7761 7320 6765 6e65 7261 was genera\n-0014b800: 7465 6420 6279 2073 6f61 7063 7070 3220 ted by soapcpp2 \n-0014b810: 6f72 2061 206d 6f64 6966 6965 6420 7665 or a modified ve\n-0014b820: 7273 696f 6e20 6f66 2074 6869 7320 6669 rsion of this fi\n-0014b830: 6c65 2e20 596f 7520 6361 6e20 616c 736f le. You can also\n-0014b840: 2075 7365 2061 203c 656d 3e3c 636f 6465 use a SENT.log
\n-0014b860: 3c2f 656d 3e20 6669 6c65 2070 726f 6475 file produ\n-0014b870: 6365 6420 6279 2061 2063 6c69 656e 7420 ced by a client \n-0014b880: 6170 706c 6963 6174 696f 6e20 746f 2072 application to r\n-0014b890: 6564 6972 6563 7420 746f 2074 6865 2043 edirect to the C\n-0014b8a0: 4749 2073 6572 7669 6365 2061 7070 6c69 GI service appli\n-0014b8b0: 6361 7469 6f6e 2e20 596f 7520 6361 6e20 cation. You can \n-0014b8c0: 616c 736f 2075 7365 2074 6865 2067 534f also use the gSO\n-0014b8d0: 4150 203c 6120 6872 6566 3d22 2e2e 2f2e AP Test\n-0014b900: 204d 6573 7365 6e67 6572 3c2f 613e 2061 Messenger a\n-0014b910: 7070 6c69 6361 7469 6f6e 2074 6f20 6765 pplication to ge\n-0014b920: 6e65 7261 7465 2072 616e 646f 6d69 7a65 nerate randomize\n-0014b930: 6420 6d65 7373 6167 6573 2074 6f20 7465 d messages to te\n-0014b940: 7374 2079 6f75 7220 7365 7276 6572 732e st your servers.\n-0014b950: 3c2f 703e 0a3c 703e 5468 6520 6669 6c65 <\n-0014c650: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0014c660: 663d 2267 726f 7570 5f5f 6772 6f75 705f f=\"group__group_\n-0014c670: 5f64 6562 7567 2e68 746d 6c23 6761 6336 _debug.html#gac6\n-0014c680: 3337 3934 3564 3038 3639 6439 3161 3462 37945d0869d91a4b\n-0014c690: 3030 6463 3164 6461 6365 6435 3337 2220 00dc1ddaced537\" \n-0014c6a0: 7469 746c 653d 2254 6865 206c 6f67 6769 title=\"The loggi\n-0014c6b0: 6e67 2070 6c75 6769 6e20 7265 6769 7374 ng plugin regist\n-0014c6c0: 7261 7469 6f6e 2066 756e 6374 696f 6e2e ration function.\n-0014c6d0: 223e 6c6f 6767 696e 673c 2f61 3e3c 2f63 \">logging plugin.
\n-0014c750: 613e 0a4c 696d 6974 6174 696f 6e73 3c2f a>.Limitations\n-0014c760: 6831 3e0a 3c70 3e46 726f 6d20 7468 6520 h1>.
\n-0014c820: 0a3c 6c69 3e53 544c 3a20 7468 6520 736f .
\n-0014ce70: 2e3c 2f6c 693e 0a3c 6c69 3e43 2061 6e64 ..std:\n-0014c870: 3a73 7472 696e 673c 2f63 6f64 653e 2061 :string
a\n-0014c880: 6e64 203c 636f 6465 3e73 7464 3a3a 7773 nd std::ws\n-0014c890: 7472 696e 673c 2f63 6f64 653e 2061 6e64 tring
and\n-0014c8a0: 2074 6865 2063 6f6e 7461 696e 6572 7320 the containers \n-0014c8b0: 3c63 6f64 653e 7374 643a 3a64 6571 7565 std::deque\n-0014c8c0: 3c2f 636f 6465 3e2c 203c 636f 6465 3e73
, s\n-0014c8d0: 7464 3a3a 6c69 7374 3c2f 636f 6465 3e2c td::list
,\n-0014c8e0: 203c 636f 6465 3e73 7464 3a3a 7665 6374 std::vect\n-0014c8f0: 6f72 3c2f 636f 6465 3e2c 2061 6e64 203c or
, and <\n-0014c900: 636f 6465 3e73 7464 3a3a 7365 743c 2f63 code>std::set, (see Secti\n-0014c920: 6f6e 203c 6120 636c 6173 733d 2265 6c22 on STL\n-0014c950: 2063 6f6e 7461 696e 6572 733c 2f61 3e20 containers \n-0014c960: 292e 2041 6c73 6f20 3c63 6f64 653e 7374 ). Also st\n-0014c970: 643a 3a73 6861 7265 645f 7074 723c 2f63 d::shared_ptr,
std:\n-0014c990: 3a75 6e69 7175 655f 7074 723c 2f63 6f64 :unique_ptr, and
st\n-0014c9b0: 643a 3a61 7574 6f5f 7074 723c 2f63 6f64 d::auto_ptr are supported\n-0014c9d0: 2e20 4f74 6865 7220 5354 4c20 7479 7065 . Other STL type\n-0014c9e0: 7320 6172 6520 6e6f 7420 7365 7269 616c s are not serial\n-0014c9f0: 697a 6162 6c65 2e3c 2f6c 693e 0a3c 6c69 izable.
begin()\n-0014cae0: 3c2f 636f 6465 3e2c 203c 636f 6465 3e65
, e\n-0014caf0: 6e64 2829 3c2f 636f 6465 3e2c 203c 636f nd()
, clear()<\n-0014cb20: 2f63 6f64 653e 2c20 616e 6420 3c63 6f64 /code>, and
methods.#inc\n-0014ccb0: 6c75 6465 3c2f 636f 6465 3e20 616e 6420 lude
and \n-0014ccc0: 3c63 6f64 653e 2364 6566 696e 653c 2f63 #define are moved t\n-0014cce0: 6f20 7468 6520 6765 6e65 7261 7465 6420 o the generated \n-0014ccf0: 3c65 6d3e 3c63 6f64 653e 736f 6170 5374
soapSt\n-0014cd00: 7562 2e68 3c2f 636f 6465 3e3c 2f65 6d3e ub.h
\n-0014cd10: 2073 6f75 7263 6520 636f 6465 2062 7920 source code by \n-0014cd20: 736f 6170 6370 7032 2e20 5468 6573 6520 soapcpp2. These \n-0014cd30: 6469 7265 6374 6976 6573 2061 7265 2061 directives are a\n-0014cd40: 6c6c 2070 6c61 6365 6420 6174 2074 6865 ll placed at the\n-0014cd50: 2074 6f70 206f 6620 7468 6174 2066 696c top of that fil\n-0014cd60: 652c 2073 6565 203c 6120 636c 6173 733d e, see T\n-0014cd90: 6865 2023 696e 636c 7564 6520 616e 6420 he #include and \n-0014cda0: 2364 6566 696e 6520 6469 7265 6374 6976 #define directiv\n-0014cdb0: 6573 3c2f 613e 2e20 5573 6520 7468 6520 es. Use the \n-0014cdc0: 3c63 6f64 653e 2369 6d70 6f72 743c 2f63 #import directive t\n-0014cde0: 6f20 696d 706f 7274 2069 6e74 6572 6661 o import interfa\n-0014cdf0: 6365 2068 6561 6465 7220 6669 6c65 7320 ce header files \n-0014ce00: 696e 746f 206f 7468 6572 2069 6e74 6572 into other inter\n-0014ce10: 6661 6365 2068 6561 6465 7220 6669 6c65 face header file\n-0014ce20: 732c 2073 6565 2053 6563 7469 6f6e 203c s, see Section <\n-0014ce30: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0014ce40: 663d 2269 6e64 6578 2e68 746d 6c23 696d f=\"index.html#im\n-0014ce50: 706f 7274 223e 5468 6520 2369 6d70 6f72 port\">The #impor\n-0014ce60: 7420 6469 7265 6374 6976 653c 2f61 3e20 t directive
{
a\n-0014cf10: 6e64 203c 636f 6465 3e7d 3c2f 636f 6465 nd }
. Also construc\n-0014cf30: 746f 7220 696e 6974 6961 6c69 7a65 7273 tor initializers\n-0014cf40: 2061 7265 206e 6f74 2061 6c6c 6f77 6564 are not allowed\n-0014cf50: 2e20 436c 6173 7320 6d65 7468 6f64 2069 . Class method i\n-0014cf60: 6d70 6c65 6d65 6e74 6174 696f 6e73 2073 mplementations s\n-0014cf70: 686f 756c 6420 6265 2064 6566 696e 6564 hould be defined\n-0014cf80: 2069 6e20 6120 7365 7061 7261 7465 2043 in a separate C\n-0014cf90: 2b2b 2073 6f75 7263 6520 6669 6c65 2e3c ++ source file.<\n-0014cfa0: 2f6c 693e 0a3c 6c69 3e43 2b2b 2072 6566 /li>..
.<\n-0014d6e0: 703e f09f 949d 203c 6120 6872 6566 3d22 p>.... Back to table\n-0014d700: 206f 6620 636f 6e74 656e 7473 3c2f 613e of contents\n-0014d710: 3c2f 703e 0a3c 6831 3e3c 6120 636c 6173 .vo\n-0014d200: 6964 2a3c 2f63 6f64 653e 2074 7970 6573 id*
types\n-0014d210: 3a20 7468 6520 3c63 6f64 653e 766f 6964 : the void\n-0014d220: 2a3c 2f63 6f64 653e 2064 6174 6120 7479 *
data ty\n-0014d230: 7065 2063 616e 6e6f 7420 6265 2073 6572 pe cannot be ser\n-0014d240: 6961 6c69 7a65 6420 756e 6c65 7373 2072 ialized unless r\n-0014d250: 756e 2d74 696d 6520 7479 7065 2069 6e66 un-time type inf\n-0014d260: 6f72 6d61 7469 6f6e 2069 7320 6173 736f ormation is asso\n-0014d270: 6369 6174 6564 2077 6974 6820 7468 6520 ciated with the \n-0014d280: 706f 696e 7465 7220 7573 696e 6720 6120 pointer using a \n-0014d290: 3c63 6f64 653e 696e 7420 5f5f 7479 7065 int __type\n-0014d2a0: 3c2f 636f 6465 3e20 6d65 6d62 6572 2069
member i\n-0014d2b0: 6e20 7468 6520 7374 7275 6374 206f 7220 n the struct or \n-0014d2c0: 636c 6173 7320 7468 6174 2063 6f6e 7461 class that conta\n-0014d2d0: 696e 7320 7468 6520 3c63 6f64 653e 766f ins the vo\n-0014d2e0: 6964 2a3c 2f63 6f64 653e 206d 656d 6265 id*
membe\n-0014d2f0: 722e 2053 6565 2053 6563 7469 6f6e 203c r. See Section <\n-0014d300: 6120 636c 6173 733d 2265 6c22 2068 7265 a class=\"el\" hre\n-0014d310: 663d 2269 6e64 6578 2e68 746d 6c23 766f f=\"index.html#vo\n-0014d320: 6964 223e 566f 6964 2070 6f69 6e74 6572 id\">Void pointer\n-0014d330: 2073 6572 6961 6c69 7a61 7469 6f6e 3c2f serialization\n-0014d340: 613e 2066 6f72 2064 6574 6169 6c73 2e3c a> for details.<\n-0014d350: 2f6c 693e 0a3c 6c69 3e50 6f69 6e74 6572 /li>.const\n-0014d580: 636f 6465 3e20 636f 6e73 7461 6e74 2076 code> constant v\n-0014d590: 616c 7565 7320 7375 6368 2061 7320 3c63 alues such as
\n-0014d5b0: 206d 656d 6265 7273 206f 6620 6120 7374 members of a st\n-0014d5c0: 7275 6374 206f 7220 636c 6173 7320 6361 ruct or class ca\n-0014d5d0: 6e6e 6f74 2062 6520 7365 7269 616c 697a nnot be serializ\n-0014d5e0: 6564 2065 7863 6570 7420 666f 7220 3c63 ed except for const wchar_t*<\n-0014d620: 2f63 6f64 653e 2073 7472 696e 6773 2e3c /code> strings.<\n-0014d630: 2f6c 693e 0a3c 6c69 3e55 6e69 6e69 7469 /li>.
.Ad\n-0014d740: 7661 6e63 6564 2066 6561 7475 7265 733c vanced features<\n-0014d750: 2f68 313e 0a3c 703e f09f 949d 203c 6120 /h1>.
.<\n-0014d790: 6120 636c 6173 733d 2261 6e63 686f 7222 a class=\"anchor\"\n-0014d7a0: 2069 643d 2269 6e74 6572 6e61 7469 6f6e id=\"internation\n-0014d7b0: 616c 697a 6174 696f 6e22 3e3c 2f61 3e0a alization\">.\n-0014d7c0: 496e 7465 726e 6174 696f 6e61 6c69 7a61 Internationaliza\n-0014d7d0: 7469 6f6e 3c2f 6832 3e0a 3c70 3e52 6567 tion
.#SOAP\n-0014d8c0: 5f43 5f55 5446 5354 5249 4e47 3c2f 636f _C_UTFSTRING mode flag to\n-0014d8e0: 2065 6e63 6f64 6520 7769 6465 2063 6861 encode wide cha\n-0014d8f0: 7261 6374 6572 7320 696e 2038 2d62 6974 racters in 8-bit\n-0014d900: 2073 7472 696e 6773 2069 6e20 5554 462d strings in UTF-\n-0014d910: 3820 666f 726d 6174 2e3c 2f70 3e0a 3c70 8 format.
xsd:\n-0014d940: 7374 7269 6e67 3c2f 636f 6465 3e3c 2f65 string
string schema\n-0014d960: 2074 7970 6520 6361 6e20 6265 2064 6563 type can be dec\n-0014d970: 6c61 7265 6420 6173 2061 2077 6964 652d lared as a wide-\n-0014d980: 6368 6172 6163 7465 7220 7374 7269 6e67 character string\n-0014d990: 2061 6e64 2075 7365 6420 7375 6273 6571 and used subseq\n-0014d9a0: 7565 6e74 6c79 3a3c 2f70 3e0a 3c64 6976 uently:.Direc\n-0014e2a0: 7469 7665 733c 2f68 323e 0a3c 703e 416e tives
.//gsoap directives \n-0014e300: 746f 2063 6f6e 6669 6775 7265 206d 6573 to configure mes\n-0014e310: 7361 6769 6e67 2070 726f 746f 636f 6c73 saging protocols\n-0014e320: 2073 7563 6820 6173 2053 4f41 5020 6f72 such as SOAP or\n-0014e330: 2052 4553 542c 2074 6f20 6173 736f 6369 REST, to associ\n-0014e340: 6174 6520 534f 4150 2048 6561 6465 7273 ate SOAP Headers\n-0014e350: 2061 6e64 2046 6175 6c74 7320 7769 7468 and Faults with\n-0014e360: 206d 6573 7361 6765 732c 2061 6e64 2074 messages, and t\n-0014e370: 6f20 7365 7420 7072 6f70 6572 7469 6573 o set properties\n-0014e380: 206f 6620 7468 6520 5765 6220 7365 7276 of the Web serv\n-0014e390: 6963 6520 6465 6669 6e65 6420 696e 2074 ice defined in t\n-0014e3a0: 6865 2073 6f61 7063 7070 322d 6765 6e65 he soapcpp2-gene\n-0014e3b0: 7261 7465 6420 5753 444c 2061 6e64 2058 rated WSDL and X\n-0014e3c0: 5344 2066 696c 6573 2e20 4469 7265 6374 SD files. Direct\n-0014e3d0: 6976 6573 2066 6f72 2073 6f61 7063 7070 ives for soapcpp\n-0014e3e0: 3220 6172 6520 7370 6563 6966 6965 6420 2 are specified \n-0014e3f0: 6173 203c 636f 6465 3e2f 2f67 736f 6170 as
//gsoap\n-0014e400: 3c2f 636f 6465 3e2d 636f 6d6d 656e 7473
-comments\n-0014e410: 2074 6861 7420 6172 6520 7072 6f63 6573 that are proces\n-0014e420: 7365 6420 6279 2073 6f61 7063 7070 322e sed by soapcpp2.\n-0014e430: 3c2f 703e 0a3c 6833 3e3c 6120 636c 6173 .Service direct\n-0014e470: 6976 6573 3c2f 6833 3e0a 3c70 3e41 2073 ives
.<value&\n-0014e5f0: 6774 3b3c 2f63 6f64 653e 2066 6965 6c64 gt;
field\n-0014e600: 7320 6172 6520 6f6e 6520 6f66 2074 6865 s are one of the\n-0014e610: 2066 6f6c 6c6f 7769 6e67 3a3c 2f70 3e0a following: