wsgen.1 revision 5116:d45bc4307996
1." Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved. 2." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3." 4." This code is free software; you can redistribute it and/or modify it 5." under the terms of the GNU General Public License version 2 only, as 6." published by the Free Software Foundation. 7." 8." This code is distributed in the hope that it will be useful, but WITHOUT 9." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 10." FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 11." version 2 for more details (a copy is included in the LICENSE file that 12." accompanied this code). 13." 14." You should have received a copy of the GNU General Public License version 15." 2 along with this work; if not, write to the Free Software Foundation, 16." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 17." 18." Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 19." or visit www.oracle.com if you need additional information or have any 20." questions. 21." 22.TH wsgen 1 "10 May 2011" 23.SH "Name" 24wsgen \- Java(TM) API for XML Web Services (JAX\-WS) 2.0 25.LP 26\f3Specification Version:\fP 2.1 27.br 28\f3Implementation Version:\fP 2.1.1 29.LP 30The \f2wsgen\fP tool generates JAX\-WS portable artifacts used in JAX\-WS web services. The tool reads a web service endpoint implementation class (SEI) and generates all the required artifacts for web service deployment, and invocation 31.SH "Overview" 32.LP 33The \f2wsgen\fP tool generates JAX\-WS portable artifacts used in JAX\-WS web services. The tool reads a web service endpoint class and generates all the required artifacts for web service deployment, and invocation. JAXWS 2.1.1 RI also provides a wsgen ant task, see 34.na 35\f2Wsgen ant task\fP @ 36.fi 37https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsgenant.html for details. 38.LP 39.SH "Launching wsgen" 40.RS 3 41.TP 2 42o 43\f3Solaris/Bsd\fP 44.RS 3 45.TP 2 46* 47\f2export JAXWS_HOME=/pathto/jaxws\-ri\fP 48.TP 2 49* 50\f2$JAXWS_HOME/bin/wsgen.sh \-help\fP 51.RE 52.TP 2 53o 54\f3Windows\fP 55.RS 3 56.TP 2 57* 58\f2set JAXWS_HOME=c:\\pathto\\jaxws\-ri\fP 59.TP 2 60* 61\f2%JAXWS_HOME%\\bin\\wsgen.bat \-help\fP 62.RE 63.RE 64 65.LP 66.SH "Syntax" 67.nf 68\f3 69.fl 70wsgen [options] <SEI>\fP 71.br 72\f3 73.fl 74\fP 75.fi 76.LP 77The following table lists the \f2wsgen\fP options. 78.br 79.LP 80.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 81.de 35 82.ps \n(.s 83.vs \n(.vu 84.in \n(.iu 85.if \n(.u .fi 86.if \n(.j .ad 87.if \n(.j=0 .na 88.. 89.nf 90.nr #~ 0 91.if n .nr #~ 0.6n 92.ds #d .d 93.if \(ts\n(.z\(ts\(ts .ds #d nl 94.fc 95.nr 33 \n(.s 96.rm 80 81 97.nr 34 \n(.lu 98.eo 99.am 81 100.br 101.di a+ 102.35 103.ft \n(.f 104.ll \n(34u*1u/3u 105.if \n(.l<\n(81 .ll \n(81u 106.in 0 107Specify where to find input class files 108.br 109.di 110.nr a| \n(dn 111.nr a- \n(dl 112.. 113.ec \ 114.eo 115.am 81 116.br 117.di b+ 118.35 119.ft \n(.f 120.ll \n(34u*1u/3u 121.if \n(.l<\n(81 .ll \n(81u 122.in 0 123Same as \f2\-classpath <path>\fP 124.br 125.di 126.nr b| \n(dn 127.nr b- \n(dl 128.. 129.ec \ 130.eo 131.am 81 132.br 133.di c+ 134.35 135.ft \n(.f 136.ll \n(34u*1u/3u 137.if \n(.l<\n(81 .ll \n(81u 138.in 0 139Specify where to place generated output files 140.br 141.di 142.nr c| \n(dn 143.nr c- \n(dl 144.. 145.ec \ 146.eo 147.am 81 148.br 149.di d+ 150.35 151.ft \n(.f 152.ll \n(34u*1u/3u 153.if \n(.l<\n(81 .ll \n(81u 154.in 0 155allow vendor extensions (functionality not specified by the specification). Use of extensions may result in applications that are not portable or may not interoperate with other implementations 156.br 157.di 158.nr d| \n(dn 159.nr d- \n(dl 160.. 161.ec \ 162.eo 163.am 81 164.br 165.di e+ 166.35 167.ft \n(.f 168.ll \n(34u*1u/3u 169.if \n(.l<\n(81 .ll \n(81u 170.in 0 171Used only in conjunction with the \-wsdl option. Specify where to place generated resource files such as WSDLs 172.br 173.di 174.nr e| \n(dn 175.nr e- \n(dl 176.. 177.ec \ 178.eo 179.am 81 180.br 181.di f+ 182.35 183.ft \n(.f 184.ll \n(34u*1u/3u 185.if \n(.l<\n(81 .ll \n(81u 186.in 0 187Specify where to place generated source files 188.br 189.di 190.nr f| \n(dn 191.nr f- \n(dl 192.. 193.ec \ 194.eo 195.am 81 196.br 197.di g+ 198.35 199.ft \n(.f 200.ll \n(34u*1u/3u 201.if \n(.l<\n(81 .ll \n(81u 202.in 0 203Output messages about what the compiler is doing 204.br 205.di 206.nr g| \n(dn 207.nr g- \n(dl 208.. 209.ec \ 210.eo 211.am 81 212.br 213.di h+ 214.35 215.ft \n(.f 216.ll \n(34u*1u/3u 217.if \n(.l<\n(81 .ll \n(81u 218.in 0 219Print version information. Use of this option will ONLY print version information. Normal processing will not occur. 220.br 221.di 222.nr h| \n(dn 223.nr h- \n(dl 224.. 225.ec \ 226.eo 227.am 81 228.br 229.di i+ 230.35 231.ft \n(.f 232.ll \n(34u*1u/3u 233.if \n(.l<\n(81 .ll \n(81u 234.in 0 235By default \f2wsgen\fP does not generate a WSDL file. This flag is optional and will cause \f2wsgen\fP to generate a WSDL file and is usually only used so that the developer can look at the WSDL before the endpoint is deploy. The \f2protocol\fP is optional and is used to specify what protocol should be used in the \f2wsdl:binding\fP. Valid protocols include: \f2soap1.1\fP and \f2Xsoap1.2\fP. The default is \f2soap1.1\fP. \f2Xsoap1.2\fP is not standard and can only be used in conjunction with the \f2\-extension\fP option. 236.br 237.di 238.nr i| \n(dn 239.nr i- \n(dl 240.. 241.ec \ 242.eo 243.am 81 244.br 245.di j+ 246.35 247.ft \n(.f 248.ll \n(34u*1u/3u 249.if \n(.l<\n(81 .ll \n(81u 250.in 0 251Used only in conjunction with the \f2\-wsdl\fP option. Used to specify a particular \f2wsdl:service\fP name to be generated in the WSDL. Example, \f2\-servicename "{http://mynamespace/}MyService"\fP 252.br 253.di 254.nr j| \n(dn 255.nr j- \n(dl 256.. 257.ec \ 258.eo 259.am 81 260.br 261.di k+ 262.35 263.ft \n(.f 264.ll \n(34u*1u/3u 265.if \n(.l<\n(81 .ll \n(81u 266.in 0 267Used only in conjunction with the \f2\-wsdl\fP option. Used to specify a particular \f2wsdl:port\fP name to be generated in the WSDL. Example, \f2\-portname "{http://mynamespace/}MyPort"\fP 268.br 269.br 270.di 271.nr k| \n(dn 272.nr k- \n(dl 273.. 274.ec \ 275.35 276.nf 277.ll \n(34u 278.nr 80 0 279.nr 38 \w\f3Option\fP 280.if \n(80<\n(38 .nr 80 \n(38 281.nr 38 \w\f4\-classpath <path>\fP 282.if \n(80<\n(38 .nr 80 \n(38 283.nr 38 \w\f4\-cp <path>\fP 284.if \n(80<\n(38 .nr 80 \n(38 285.nr 38 \w\f4\-d <directory>\fP 286.if \n(80<\n(38 .nr 80 \n(38 287.nr 38 \w\f4\-extension\fP 288.if \n(80<\n(38 .nr 80 \n(38 289.nr 38 \w\f4\-help\fP 290.if \n(80<\n(38 .nr 80 \n(38 291.nr 38 \w\f4\-keep\fP 292.if \n(80<\n(38 .nr 80 \n(38 293.nr 38 \w\f4\-r <directory>\fP 294.if \n(80<\n(38 .nr 80 \n(38 295.nr 38 \w\f4\-s <directory>\fP 296.if \n(80<\n(38 .nr 80 \n(38 297.nr 38 \w\f4\-verbose\fP 298.if \n(80<\n(38 .nr 80 \n(38 299.nr 38 \w\f4\-version\fP 300.if \n(80<\n(38 .nr 80 \n(38 301.nr 38 \w\f4\-wsdl[:protocol]\fP 302.if \n(80<\n(38 .nr 80 \n(38 303.nr 38 \w\f4\-servicename <name>\fP 304.if \n(80<\n(38 .nr 80 \n(38 305.nr 38 \w\f4\-portname <name>\fP 306.if \n(80<\n(38 .nr 80 \n(38 307.80 308.rm 80 309.nr 81 0 310.nr 38 \w\f3Description\fP 311.if \n(81<\n(38 .nr 81 \n(38 312.nr 38 \wDisplay help 313.if \n(81<\n(38 .nr 81 \n(38 314.nr 38 \wKeep generated files 315.if \n(81<\n(38 .nr 81 \n(38 316.81 317.rm 81 318.nr 38 \n(a- 319.if \n(81<\n(38 .nr 81 \n(38 320.nr 38 \n(b- 321.if \n(81<\n(38 .nr 81 \n(38 322.nr 38 \n(c- 323.if \n(81<\n(38 .nr 81 \n(38 324.nr 38 \n(d- 325.if \n(81<\n(38 .nr 81 \n(38 326.nr 38 \n(e- 327.if \n(81<\n(38 .nr 81 \n(38 328.nr 38 \n(f- 329.if \n(81<\n(38 .nr 81 \n(38 330.nr 38 \n(g- 331.if \n(81<\n(38 .nr 81 \n(38 332.nr 38 \n(h- 333.if \n(81<\n(38 .nr 81 \n(38 334.nr 38 \n(i- 335.if \n(81<\n(38 .nr 81 \n(38 336.nr 38 \n(j- 337.if \n(81<\n(38 .nr 81 \n(38 338.nr 38 \n(k- 339.if \n(81<\n(38 .nr 81 \n(38 340.35 341.nf 342.ll \n(34u 343.nr 38 1n 344.nr 79 0 345.nr 40 \n(79+(0*\n(38) 346.nr 80 +\n(40 347.nr 41 \n(80+(3*\n(38) 348.nr 81 +\n(41 349.nr TW \n(81 350.if t .if \n(TW>\n(.li .tm Table at line 133 file Input is too wide - \n(TW units 351.fc 352.nr #T 0-1 353.nr #a 0-1 354.eo 355.de T# 356.ds #d .d 357.if \(ts\n(.z\(ts\(ts .ds #d nl 358.mk ## 359.nr ## -1v 360.ls 1 361.ls 362.. 363.ec 364.ta \n(80u \n(81u 365.nr 31 \n(.f 366.nr 35 1m 367\&\h'|\n(40u'\f3Option\fP\h'|\n(41u'\f3Description\fP 368.ne \n(a|u+\n(.Vu 369.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) 370.ta \n(80u \n(81u 371.nr 31 \n(.f 372.nr 35 1m 373\&\h'|\n(40u'\f4\-classpath <path>\fP\h'|\n(41u' 374.mk ## 375.nr 31 \n(## 376.sp |\n(##u-1v 377.nr 37 \n(41u 378.in +\n(37u 379.a+ 380.in -\n(37u 381.mk 32 382.if \n(32>\n(31 .nr 31 \n(32 383.sp |\n(31u 384.ne \n(b|u+\n(.Vu 385.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) 386.ta \n(80u \n(81u 387.nr 31 \n(.f 388.nr 35 1m 389\&\h'|\n(40u'\f4\-cp <path>\fP\h'|\n(41u' 390.mk ## 391.nr 31 \n(## 392.sp |\n(##u-1v 393.nr 37 \n(41u 394.in +\n(37u 395.b+ 396.in -\n(37u 397.mk 32 398.if \n(32>\n(31 .nr 31 \n(32 399.sp |\n(31u 400.ne \n(c|u+\n(.Vu 401.if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) 402.ta \n(80u \n(81u 403.nr 31 \n(.f 404.nr 35 1m 405\&\h'|\n(40u'\f4\-d <directory>\fP\h'|\n(41u' 406.mk ## 407.nr 31 \n(## 408.sp |\n(##u-1v 409.nr 37 \n(41u 410.in +\n(37u 411.c+ 412.in -\n(37u 413.mk 32 414.if \n(32>\n(31 .nr 31 \n(32 415.sp |\n(31u 416.ne \n(d|u+\n(.Vu 417.if (\n(d|+\n(#^-1v)>\n(#- .nr #- +(\n(d|+\n(#^-\n(#--1v) 418.ta \n(80u \n(81u 419.nr 31 \n(.f 420.nr 35 1m 421\&\h'|\n(40u'\f4\-extension\fP\h'|\n(41u' 422.mk ## 423.nr 31 \n(## 424.sp |\n(##u-1v 425.nr 37 \n(41u 426.in +\n(37u 427.d+ 428.in -\n(37u 429.mk 32 430.if \n(32>\n(31 .nr 31 \n(32 431.sp |\n(31u 432.ta \n(80u \n(81u 433.nr 31 \n(.f 434.nr 35 1m 435\&\h'|\n(40u'\f4\-help\fP\h'|\n(41u'Display help 436.ta \n(80u \n(81u 437.nr 31 \n(.f 438.nr 35 1m 439\&\h'|\n(40u'\f4\-keep\fP\h'|\n(41u'Keep generated files 440.ne \n(e|u+\n(.Vu 441.if (\n(e|+\n(#^-1v)>\n(#- .nr #- +(\n(e|+\n(#^-\n(#--1v) 442.ta \n(80u \n(81u 443.nr 31 \n(.f 444.nr 35 1m 445\&\h'|\n(40u'\f4\-r <directory>\fP\h'|\n(41u' 446.mk ## 447.nr 31 \n(## 448.sp |\n(##u-1v 449.nr 37 \n(41u 450.in +\n(37u 451.e+ 452.in -\n(37u 453.mk 32 454.if \n(32>\n(31 .nr 31 \n(32 455.sp |\n(31u 456.ne \n(f|u+\n(.Vu 457.if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) 458.ta \n(80u \n(81u 459.nr 31 \n(.f 460.nr 35 1m 461\&\h'|\n(40u'\f4\-s <directory>\fP\h'|\n(41u' 462.mk ## 463.nr 31 \n(## 464.sp |\n(##u-1v 465.nr 37 \n(41u 466.in +\n(37u 467.f+ 468.in -\n(37u 469.mk 32 470.if \n(32>\n(31 .nr 31 \n(32 471.sp |\n(31u 472.ne \n(g|u+\n(.Vu 473.if (\n(g|+\n(#^-1v)>\n(#- .nr #- +(\n(g|+\n(#^-\n(#--1v) 474.ta \n(80u \n(81u 475.nr 31 \n(.f 476.nr 35 1m 477\&\h'|\n(40u'\f4\-verbose\fP\h'|\n(41u' 478.mk ## 479.nr 31 \n(## 480.sp |\n(##u-1v 481.nr 37 \n(41u 482.in +\n(37u 483.g+ 484.in -\n(37u 485.mk 32 486.if \n(32>\n(31 .nr 31 \n(32 487.sp |\n(31u 488.ne \n(h|u+\n(.Vu 489.if (\n(h|+\n(#^-1v)>\n(#- .nr #- +(\n(h|+\n(#^-\n(#--1v) 490.ta \n(80u \n(81u 491.nr 31 \n(.f 492.nr 35 1m 493\&\h'|\n(40u'\f4\-version\fP\h'|\n(41u' 494.mk ## 495.nr 31 \n(## 496.sp |\n(##u-1v 497.nr 37 \n(41u 498.in +\n(37u 499.h+ 500.in -\n(37u 501.mk 32 502.if \n(32>\n(31 .nr 31 \n(32 503.sp |\n(31u 504.ne \n(i|u+\n(.Vu 505.if (\n(i|+\n(#^-1v)>\n(#- .nr #- +(\n(i|+\n(#^-\n(#--1v) 506.ta \n(80u \n(81u 507.nr 31 \n(.f 508.nr 35 1m 509\&\h'|\n(40u'\f4\-wsdl[:protocol]\fP\h'|\n(41u' 510.mk ## 511.nr 31 \n(## 512.sp |\n(##u-1v 513.nr 37 \n(41u 514.in +\n(37u 515.i+ 516.in -\n(37u 517.mk 32 518.if \n(32>\n(31 .nr 31 \n(32 519.sp |\n(31u 520.ne \n(j|u+\n(.Vu 521.if (\n(j|+\n(#^-1v)>\n(#- .nr #- +(\n(j|+\n(#^-\n(#--1v) 522.ta \n(80u \n(81u 523.nr 31 \n(.f 524.nr 35 1m 525\&\h'|\n(40u'\f4\-servicename <name>\fP\h'|\n(41u' 526.mk ## 527.nr 31 \n(## 528.sp |\n(##u-1v 529.nr 37 \n(41u 530.in +\n(37u 531.j+ 532.in -\n(37u 533.mk 32 534.if \n(32>\n(31 .nr 31 \n(32 535.sp |\n(31u 536.ne \n(k|u+\n(.Vu 537.if (\n(k|+\n(#^-1v)>\n(#- .nr #- +(\n(k|+\n(#^-\n(#--1v) 538.ta \n(80u \n(81u 539.nr 31 \n(.f 540.nr 35 1m 541\&\h'|\n(40u'\f4\-portname <name>\fP\h'|\n(41u' 542.mk ## 543.nr 31 \n(## 544.sp |\n(##u-1v 545.nr 37 \n(41u 546.in +\n(37u 547.k+ 548.in -\n(37u 549.mk 32 550.if \n(32>\n(31 .nr 31 \n(32 551.sp |\n(31u 552.fc 553.nr T. 1 554.T# 1 555.35 556.rm a+ 557.rm b+ 558.rm c+ 559.rm d+ 560.rm e+ 561.rm f+ 562.rm g+ 563.rm h+ 564.rm i+ 565.rm j+ 566.rm k+ 567.if \n-(b.=0 .nr c. \n(.c-\n(d.-53 568 569.LP 570.SH "Example" 571.nf 572\f3 573.fl 574\fP\f3wsgen \-d stock \-cp myclasspath stock.StockService\fP 575.fl 576.fi 577.LP 578This will generate the wrapper classes needed for StockService annotated with @WebService annotation inside \f3stock\fPdirectory. 579.nf 580\f3 581.fl 582\fP\f3wsgen \-wsdl \-d stock \-cp myclasspath stock.StockService\fP 583.fl 584.fi 585.LP 586This will generate a SOAP 1.1 WSDL and schema for your Java class stock.StockService annotated with @WebService annotation. 587.nf 588\f3 589.fl 590\fP\f3wsgen \-wsdl:Xsoap1.2 \-d stock \-cp myclasspath stock.StockService\fP 591.fl 592.fi 593.LP 594Will generate a SOAP 1.2 WSDL. 595.LP 596Note that you do not have to generate WSDL at the development time as JAXWS runtime will automatically generate a WSDL for you when you deploy your service. 597