XSD рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде JAX-WS рдХрд╛ рд╕реНрд╡-рджрд╕реНрддрд╛рд╡реЗрдЬреАрдХрд░рдг

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдПрдХ рд╕реНрд╡-рджрд╕реНрддрд╛рд╡реЗрдЬреАрдХрд░рдг рд╡реЗрдм рд╕реЗрд╡рд╛ (jax-ws) рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ рдЬреЛ XSD рдкреНрд░рддрд┐рдмрдВрдз рддрддреНрд╡реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред



рдХрд╛рд░реНрдп рд╡рд┐рд╡рд░рдг



"рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдкреНрд░реИрдЧреНрдореЗрдЯрд┐рд╕реНрдЯ" рдкреБрд╕реНрддрдХ рдореЗрдВ рдкреНрд░рд▓реЗрдЦрди рдкрд░ рдПрдХ рдЕрдзреНрдпрд╛рдп рд╣реИред рдпрд╣ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рд╕реВрдЪрдирд╛ рдХрд╛ рдПрдХ рд╕реНрд░реЛрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╡реНрдпреБрддреНрдкрдиреНрди рд░реВрдк рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рдПрдХ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИ (рдпрд╣ рдХрд┐рд╕реА рднреА рдЙрдкрдпреБрдХреНрдд рдпрд╛ рдорд╛рд▓рд┐рдХрд╛рдирд╛ рдкреНрд░рд╛рд░реВрдк рдХреА рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╣реЛ рд╕рдХрддреА рд╣реИ), рдФрд░ рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рддрд╛рд▓рд┐рдХрд╛рдПрдБ рд╕реНрд╡рдпрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИрдВ, рдЗрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрди, рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреАрдПрдУ рдСрдмреНрдЬреЗрдХреНрдЯред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдлрд╛рдпрджреЗ рдпрд╣ рд╣реИрдВ рдХрд┐ рдкреНрд░рд╕реНрддреБрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╡реНрдпреБрддреНрдкрдиреНрди рд░реВрдкреЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЬрд┐рд╕ рд╕реНрдерд╛рди рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдкрд╛рджрд┐рдд рдХреА рдЬрд╛рдПрдЧреА, рд╡рд╣ рдПрдХрдорд╛рддреНрд░ рдореВрд▓ рд╕реНрд░реЛрдд рд╣реИред

рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдпрд╣ рд╣реИ рдХрд┐ рд╕рднреА рдЗрдЪреНрдЫреБрдХ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдиреНрд╡рд░реНрдЯрд░реНрд╕ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ, рдЗрди рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рдкрд╣рд▓реЗ рдЕрдиреБрдмрдВрдз рдФрд░ рдЕрдВрддрд┐рдо рдЕрдиреБрдмрдВрдз рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд╣рд▓рд╛ рдЕрдиреБрдмрдВрдз - рдЬрдм wsdl рдкрд╣рд▓реА рдмрд╛рд░ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЬрд╛рд╡рд╛ рдХреЛрдб рдЗрд╕рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИред рдЕрдиреБрдмрдВрдз рдЕрдВрддрд┐рдо - рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдкрд╣рд▓реЗ рдЬрд╛рд╡рд╛ рдХреЛрдб, рдФрд░ рдЙрд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ wsdlред

рдЖрдк рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╡рд┐рдкрдХреНрд╖ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдВрдХ рдкрд░ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ: docs.spring.io/spring-ws/sites/1.5/reference/html/why-contract-first.html stackoverflow.com/questions/76h27/which-is-the-better- рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдЕрдиреБрдмрдВрдз-рдкрд╣рд▓реЗ рдпрд╛ рдЕрдиреБрдмрдВрдз-рдкрд┐рдЫрд▓реЗ



рдЗрд╕ рдЕрдиреБрдЪреНрдЫреЗрдж рдореЗрдВ, рдореИрдВ рдПрдХ рд╕рдорд╛рди рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡-рдкреНрд░рд▓реЗрдЦрди рдХреЗ рд╕рд╛рде рдПрдХ SOAP рд╡реЗрдм рд╕реЗрд╡рд╛ рдмрдирд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛ - рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рдЗрд╕рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реЛрдЧреАред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ "рдЕрдиреБрдмрдВрдз рдЕрдВрддрд┐рдо" рд╣реИ - рдкрд╣рд▓реЗ рдХреЛрдб рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ wsdl рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд▓реЗрдЦрди рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕ рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХрддрдо рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрддреА рд╣реИ - рдЙрди рд╕рднреА рд╡рд┐рдзрд┐рдпреЛрдВ рдФрд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдкрд░ рдЯрд┐рдкреНрдкрдгреА, рдЬрд┐рдирдХреЗ рд╕рд╛рде рд╕реЗрд╡рд╛ рдХрд╛рдо рдХрд░рддреА рд╣реИ рдФрд░ рдбреЗрдЯрд╛ рд╢реБрджреНрдзрддрд╛ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рддрд░реНрдХред рдпрд╣ рд╕рдорд╛рдзрд╛рди рдХреНрдпреЛрдВ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ? рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрдм рд╕рднреА рд╡рд┐рдХрд╛рд╕ рд▓реЗрдЦрди рдХреЛрдб рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ wsdl рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ, рди рдХрд┐ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрддред рдпрд╛ рдЬрдм рд╢реБрд░реВ рдореЗрдВ wsdl рдореЗрдВ рдкреНрд░рд▓реЗрдЦрди рдмрдирд╛рдП рд░рдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡реЗрдм рддрд░реАрдХреЛрдВ рдХреЛ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рдХреЛ wsdl рдореЗрдВ рд╕реНрдЯреЛрд░ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдпрд╛рдиреА wsdl рдкрд╣рд▓реЗ, рдФрд░ рд╡рд┐рдзрд┐рдпрд╛рдБ, рдХрдХреНрд╖рд╛рдПрдВ, рдФрд░ рдкрдардиреАрдп рдкреНрд░рд▓реЗрдЦрди рдЗрд╕рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВред рдЕрдиреНрдпрдерд╛, рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдкрд╣рд▓реЗ рд╕реЗ рд▓рд┐рдЦреА рдЧрдИ рд╕реЗрд╡рд╛ рдХреЗ рдЕрдиреБрдкрд╛рд▓рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛрдВрдЧреАред рдХрд╛рд░реНрдпред

Xsd рдХреА рдУрд░ рд╕реЗ рд╡реИрдзрддрд╛ рдХреЗ рд▓рд┐рдП рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рднреА рдмреЗрд╣рддрд░ рд╣реИ, рддрд╛рдХрд┐ рдЖрдк рд╡реЗрдм рд╕реЗрд╡рд╛ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд┐рдП рдмрд┐рдирд╛ рдЕрдиреБрд░реЛрдз рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХреЗрдВ рдФрд░ рдпрд╣ рддрд░реНрдХ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣рд╛ рд╣реИ (xsd рдореЗрдВ), рдФрд░ рд╕реЗрд╡рд╛ рдХреЗ рдЖрдВрддреНрд░реЛрдВ рдореЗрдВ рдХрд╣реАрдВ рд╡рд╛рдпрд░реНрдб рдирд╣реАрдВ рд╣реИред



рд╕рдорд╛рдзрд╛рди рдХреЗ рд╡рд┐рдХрд▓реНрдк



рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдЖрдк рдХрд┐рд╕реА рднреА jax-ws рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ wsdl рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдорд╛рдирдХ jax-ws / jaxb рдПрдиреЛрдЯреЗрд╢рди рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрди рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ - рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдврд╛рдВрдЪреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЕрдкрд╛рдЪреЗ CXF (jax-ws) WSDLDocumentation рдПрдиреЛрдЯреЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╡реЗрдм рд╡рд┐рдзрд┐рдпреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЬреЛ рд╡реЗрдм рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдмрд╛рдж рдореЗрдВ wsdl рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ред Jaxb - facets рд▓рд╛рдЗрдмреНрд░реЗрд░реА ( dsg.tuwien.ac.at/staff/hummer/tools/jaxb-facets.html , github.com/whummer/jaxb-facets ) рдХрд╛ рдЙрдкрдпреЛрдЧ xml рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЛ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рд╡реЗрдм рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╡реЗрдм рддрд░реАрдХреЛрдВ рдХреЗ рд▓рд┐рдП CXF рдХреА рддрд░рд╣ рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд╡рд░реНрдЧреЛрдВ рдФрд░ xml рд╕реЗрдо рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдПрдХреНрд╕рдПрд╕рдбреА рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рддрд╛ рд╣реИ - рдПрдХреНрд╕рдПрдордПрд▓ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рддрд┐рдмрдВрдзред ( рдПрдХреНрд╕рдПрд╕рдбреА рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдпрд╣рд╛рдБ рд╣реИ www.w3schools.com/schema/schema_facets.asp ) рдпрд╣ рддрдм рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ рдЬрдм рдЖрдкрдХреЛ рдЕрдирд┐рд╡рд╛рд░реНрдп / рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдореВрд▓реНрдпреЛрдВ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рдЬрд╛рдБрдЪ рдХреЗ рддрд░реНрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА - рдХреНрдпреЛрдВрдХрд┐ jaxb рдкреВрд░реА рддрд░рд╣ рд╕реЗ xsd рдХреА рд╕рддреНрдпрд╛рдкрди рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдиреНрдпреВрдирддрдо, рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдпреЛрдВ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛, рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рд░рд┐рдХреНрдд рдорд╛рдиреЛрдВ рдкрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдореВрд▓реНрдп рдХреА рд▓рдВрдмрд╛рдИ рдкрд░ рд╕реАрдорд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред



рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди



рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдЗрдП рдХрдИ рддрд░реАрдХреЛрдВ рд╕реЗ рдПрдХ рд╕рд░рд▓ рд╡реЗрдм рд╕реЗрд╡рд╛ рдмрдирд╛рдПрдВред

рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред рдкреВрд░реА рд╕реЗрд╡рд╛ dl.dropboxusercontent.com/u/7519092/jax-ws-example.zip рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдпрд╣ рдПрдХ рдЖрдИрдбрд┐рдпрд╛ рдорд╛рд╡реЗрди рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИред IDEA рдореЗрдВ, рдЖрдк IDEA рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЖрдпрд╛рдд рдХрд░рдХреЗ рдпрд╛ рдорд╛рд╡реЗрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЖрдпрд╛рдд рдХрд░рдХреЗ рдпрд╛ рддреЛ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВред Pom.xml рдХреЛ xslt рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ html рдореЗрдВ рдЗрд╕рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рд╕рд╛рде рдПрдХ wsdl рдлрд╝рд╛рдЗрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЗрд╕ wsdl рдореЗрдВ jaxb-facets рд╕реЗ рдкреНрд░рд▓реЗрдЦрди рдЯреИрдЧ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ wsdl (рд▓рд┐рдВрдХ рдкрде рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реБрд▓рдн) / web_service / WebService рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ? wsdl) рдпрд╣ рдЯреИрдЧ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рдПрдиреЛрдЯреЗрд╢рди рдХреЗ рдЙрдкрдпреЛрдЧ рдореЗрдВ рднрд┐рдиреНрдирддрд╛ рд╣реИ - рд╡рд╣рд╛рдБ рдПрдиреЛрдЯреЗрд╢рди рддрд░реАрдХреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдЗрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рдХрдХреНрд╖рд╛ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдПред рдпрд╣ рд▓реЗрдЦ рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрд┐рд╕реА рд╡рд░реНрдЧ рдХреЗ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдПрдиреЛрдЯреЗрд╢рди рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпрд╛ рддреЛ рддрд░реАрдХреЗ рдирд╣реАрдВ рд▓рд╛рдиреЗ рдЪрд╛рд╣рд┐рдП рдпрд╛ @XmlAccessorType (XmlAccessType.FIELD) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред



рдЙрджрд╛рд╣рд░рдг



рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдХрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ



рджрд┐рдирд╛рдВрдХ рдФрд░ рд╕рдордп рдХреЗ рдЕрдзрд┐рдХрддрдо рдФрд░ рдиреНрдпреВрдирддрдо рдореВрд▓реНрдпреЛрдВ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдзред


рджрд┐рдирд╛рдВрдХ рдХреЗ рд▓рд┐рдП:

@XmlSchemaType(name = "date") @Facets(minInclusive = "1900-01-01", maxInclusive = "9999-12-31Z") Date date;
      
      







рдЬреЗрдирд░реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ xsd рд╕рд░реНрдХрд┐рдЯ:

 <xs:element minOccurs="0" name="date"> <xs:simpleType> <xs:restriction base="xs:date"> <xs:maxInclusive value="9999-12-31Z"/> <xs:minInclusive value="1900-01-01"/> </xs:restriction> </xs:simpleType> </xs:element>
      
      







 @XmlSchemaType(name = "dateTime") @Facets(minInclusive = "1900-01-01T00:00:00", maxInclusive = "9999-12-31T23:59:59") Date dateTime;
      
      







 <xs:element minOccurs="0" name="dateTime"> <xs:simpleType> <xs:restriction base="xs:dateTime"> <xs:maxInclusive value="9999-12-31T23:59:59"/> <xs:minInclusive value="1900-01-01T00:00:00"/> </xs:restriction> </xs:simpleType> </xs:element>
      
      







(рдЬрдХреНрд╕рдмреЗрдЯ-рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рдкрд╣рд▓реБрдУрдВ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рд░)



рд╣рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдХреНрдпреЛрдВрдХрд┐ рдбреАрдмреАрдПрдордПрд╕ рдиреЗ рдЬрд╛рд╡рд╛ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рддрд╛рд░реАрдЦ рд╕реАрдорд╛ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдпрд╛рдиреА рд╡реЗрдм рд╕реЗрд╡рд╛ рдореЗрдВ, рдЖрдк рддрд╛рд░реАрдЦреЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 1000-01-01 рдФрд░ рдЬрд╛рд╡рд╛ рдореЗрдВ рдпрд╣ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди DBMS рдХреЛ рд▓рд┐рдЦрддреЗ рд╕рдордп рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреА, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕ рддрд┐рдерд┐ рд╕реАрдорд╛ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдФрд░ рд╕реНрд╡реАрдХреГрдд рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдкреНрд░рддрд┐рдмрдВрдз рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдПрдХ рддрд┐рдерд┐ рдХреЗ рд▓рд┐рдП, рдЕрдзрд┐рдХрддрдо рддрд┐рдерд┐ рдХреЛ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреЗ рд╕рд╛рде рдЖрдЙрдЯрдкреБрдЯ 9999-12-31 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 9999-12-31 + 04: 00)ред рдпрджрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕ рдорд╛рди рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рддреЗ рд╕рдордп (рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд▓реМрдЯрддреЗ рд╕рдордп) рдПрдХ xsd рд╕рддреНрдпрд╛рдкрди рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреАред



рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝реАрд▓реНрдб рд▓рдВрдмрд╛рдИ рдкрд░ рд╕реАрдорд╛


 @Facets(length = 16) String id;
      
      







 <xs:element minOccurs="0" name="id"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="16"/> </xs:restriction> </xs:simpleType> </xs:element>
      
      







рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдХреНрд╖реЗрддреНрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд▓рдВрдмрд╛рдИ рдпрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд▓рдВрдмрд╛рдИ рдХреЗ рдХреБрдЫ рдЕрдиреНрдп рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╣реИ - рдкрд╛рд╕рдкреЛрд░реНрдЯ рдХреА рд╕рдВрдЦреНрдпрд╛, рдХрд╛рд░реНрдбред



рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдИрдбреА рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдк рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЖрдИрдбреА рдХреЛ рдЕрд▓рдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:



 public class Id { @Facets(length = 16) @XmlAttribute String attr; }
      
      







рдФрд░ рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

 Id id;
      
      







рддреЛ рд╣рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрдХреЗрдд рджреЗрдВрдЧреЗ рдХрд┐ рдпрд╣ рдПрдХ рдЪрд░ рд╣реИ - рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛, рдЬрдмрдХрд┐ рд╕рднреА рдкреНрд░рддрд┐рдмрдВрдз рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред



рд░рд┐рд╕реЗрдЯрд┐рдВрдЧ рдлреАрд▓реНрдбреНрд╕


рдХреБрдЫ рд╡реИрдХрд▓реНрдкрд┐рдХ рдлрд╝реАрд▓реНрдб рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдмрд╣реБрдд рд╕рд░рд▓рддрд╛ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдПрдХ рдЦрд╛рд▓реА рдЯреИрдЧ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг <рдирд╛рдо />) рдФрд░ рдЬрдм рдЕрдирдорд░реНрд╕рд╣реЙрд▓рд┐рдВрдЧ (рдЬрд╛рд╡рд╛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ xml рдЕрдиреБрд░реЛрдз рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдирд╛) рд╣рдореЗрдВ рдмрд╕ рдПрдХ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдорд┐рд▓рддреА рд╣реИ (String.isEmpty (TM == true)ред рдФрд░ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╢реВрдиреНрдп рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред



рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдпрд╛ рджрд┐рдирд╛рдВрдХ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЦрд╛рд▓реА рдЯреИрдЧ рдкрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреА:

рдЕрдирдорд░реНрд╢рд┐рдВрдЧ рддреНрд░реБрдЯрд┐: cvc-datatype-valid.1.2.1.1: '' 'рдкреВрд░реНрдгрд╛рдВрдХ' рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рдорд╛рди рдирд╣реАрдВ рд╣реИ



рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ - рдПрдХ рдЦрд╛рд▓реА рдЯреИрдЧ рдХреЛ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рд╢реВрдиреНрдп рдорд╛рдирд╛ рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИ - рдЕрд╢рдХреНрдд рдПрдХ рдЯреИрдЧ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рд╣реИ)ред



рдпрд╣ рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред



 @XmlElement(defaultValue = "-2147483648") Integer id;
      
      







 <xs:element default="-2147483648" minOccurs="0" name="id" type="xs:int"/>
      
      







рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрдк рдЬрд╛рд╡рд╛ рдореЗрдВ рдПрдХ рдЦрд╛рд▓реА рдЯреИрдЧ (<id />) рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдИрдбреА рд╡реИрд░рд┐рдПрдмрд▓ -2147483648 (рдпрд╣ Integer.MIN_VALUE рд╣реИ) рдорд╛рди рд▓реЗрдЧрд╛ред рдпрд╣ рд╕рдорд╛рдзрд╛рди рдПрдХ рдирд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рдкреИрдЯрд░реНрди рдХреА рддрд░рд╣ рдПрдХ рд╕рд╛ рд╣реИ - рдЬрдм рдЖрдкрдХреЛ рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдХрд┐ рдПрдХ рд╢реВрдиреНрдп рдорд╛рди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд╛рд░рд┐рдд рд╣реЛ рдЧрдпрд╛ рд╣реИ (рдФрд░ рдмрд╕ рдПрдХ рдореВрд▓реНрдп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ), рддреЛ рд╣рдо рдПрдХ рд╡рд┐рд╢реЗрд╖ рдЕрд╢рдХреНрдд рд╡рд╕реНрддреБ рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред

en.wikipedia.org/wiki/Null_Object_pattern



рддрд╛рд░реАрдЦреЛрдВ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╣реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:



 @XmlSchemaType(name = "date") @XmlElement(defaultValue = "1900-01-01") Date date;
      
      







 <xs:element default="1900-01-01" minOccurs="0" name="date" type="xs:date"/>
      
      







 @XmlSchemaType(name = "dateTime") @XmlElement(defaultValue = "1900-01-01T00:00:00") Date dateTime;
      
      







 <xs:element default="1900-01-01T00:00:00" minOccurs="0" name="dateTime" type="xs:dateTime"/>
      
      







рдХреБрдЫ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХреГрдд


рдлреАрд▓реНрдб рдбреЙрдХреНрдпреВрдореЗрдВрдЯреЗрд╢рди рдбреЙрдХреНрдпреВрдореЗрдВрдЯреЗрд╢рди рдПрдиреЛрдЯреЗрд╢рди (jaxb-facets рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



 @XmlSchemaType(name = "date") @Documentation("  ") @Facets(minInclusive = "1900-01-01", maxInclusive = "9999-12-31Z") Date date;
      
      







 <xs:element minOccurs="0" name="date"> <xs:annotation> <xs:documentation>  </xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:date"> <xs:maxInclusive value="9999-12-31Z"/> <xs:minInclusive value="1900-01-01"/> </xs:restriction> </xs:simpleType> </xs:element>
      
      







рд╕реАрдПрдХреНрд╕рдПрдл рд╕реЗ рдбрдмреНрд▓реНрдпреВрдПрд╕рдбреАрдПрд▓рдбреАрдПрдирдЬреЗрдбреЗрд╢рди рдПрдиреЛрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡реЗрдм рд╕реЗрд╡рд╛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬреАрдХрд░рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



 @WSDLDocumentation("   .     XML Schema Restrictions") String facetsExampleMethod(FacetsExample request);
      
      







 <wsdl:operation name="facetsExampleMethod"> <wsdl:documentation>    .     XML Schema Restrictions </wsdl:documentation> <wsdl:input message="tns:facetsExampleMethod" name="facetsExampleMethod"/> <wsdl:output message="tns:facetsExampleMethodResponse" name="facetsExampleMethodResponse"/> </wsdl:operation>
      
      







рдЗрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЖрдЧреЗ рд╡рд░реНрдгрди wsdl рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред



рд╕реЗрд╡рд╛ рдкреНрд░рд▓реЗрдЦрди рдкреАрдврд╝реА (wsdl рд╕реЗ html)


рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП wsdl рдХреЛ рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рджреГрд╢реНрдп рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, xslt рдлрд╝рд╛рдЗрд▓ tomi.vanek.sk/index.php?page=wsdl-viewer SoapUI рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрдардиреАрдп HTML рднреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╕рдм StackOverflow рдкрд░ рд╡рд░реНрдгрд┐рдд рд╣реИ:

stackoverflow.com/questions/686103/generating-html-documentation-from-wsdl HTML рдХреЛ рдмрд┐рд▓реНрдб рд╕реНрдЯреЗрдЬ рдкрд░ рд░реВрдкрд╛рдВрддрд░рдг pom.xml рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдЧрд▓рд╛ рдпрд╣ рдкреГрд╖реНрда <рдПрдкреНрд▓реАрдХреЗрд╢рди рдкрде> /WWService.html рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред

рдХреБрдЫ HTML рдкреАрдврд╝реА рдХреЗ рдиреЛрдЯ рдирд╣реАрдВ:

рд╡реЗрдм рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХреЗрд╡рд▓ рддрднреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрджрд┐ @SOAPBinding (рд╢реИрд▓реА = SOAPBinding.Style.RPC) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред

рдбреЙрдХреНрдпреВрдореЗрдВрдЯреЗрд╢рди рдПрдиреЛрдЯреЗрд╢рди wsdl рдореЗрдВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░, рддрджрдиреБрд╕рд╛рд░, HTML рдбреЙрдХреНрдпреБрдореЗрдВрдЯреЗрд╢рди рдореЗрдВ рдХреЗрд╡рд▓ рдЬрдм рд░рдирдЯрд╛рдЗрдо рд░рдирд┐рдВрдЧ рд╕рд░реНрд╡рд┐рд╕ рд╕реЗ wsdl рдЬреЗрдирд░реЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реЛрддрд╛ рд╣реИред рдЬрдм wsdl рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдЙрд╕рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ рдРрд╕рд╛ рдХреНрдпреЛрдВ - рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ wsdl рдЬрдирд░реЗрдЯрд░ рддреНрд░реБрдЯрд┐ред



рдЬрдХреНрд╕рдм-рдкрд╣рд▓реБрдУрдВ рдХреА рдЕрдиреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ


рдореИрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ jaxb-facets рдХреА рдЕрдиреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдБрдЧрд╛ рдЬрд┐рдирдХрд╛ рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛:

рдПрдХ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдореВрд▓реНрдп рдХреА рдЬрд╛рдБрдЪ - Facets.patternред

рд╡реНрд╣реЙрдЯреНрд╕рдПрдк рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд▓реЙрдЬрд┐рдХ рд╕реЗрдЯ рдХрд░рдирд╛ - Facets.whiteSpaceред рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдХреЛ рдЦрд╛рддреЗ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд░рд┐рдХреНрдд рд╕реНрдерд╛рди (рдЯреИрдм рдФрд░ рд▓рд╛рдЗрди рдмреНрд░реЗрдХ рдХреЗ рд▓рд┐рдП) рдХреЗ рд╕рд╛рде рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреЗрд╡рд▓ рддрдм рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм xsd рдореЗрдВ рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИ, рдЕрд░реНрдерд╛рдд рд╡реНрд╣реЙрдЯреНрд╕рдПрдк рдХреЗ рдкрд╛рддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдЬрд╛рд╡рд╛ рдХреЛрдб рдХреЛ рд╡реИрд╕рд╛ рд╣реА рдореВрд▓реНрдп рдорд┐рд▓рддрд╛ рд╣реИред рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ рдХрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдлрд╝реАрд▓реНрдб рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реИ, рдЬрдм рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╕реЗ рднрд░рд╛ рдлрд╝реАрд▓реНрдб рдХреЛ рдЦрд╛рд▓реА рдХреЗ рд░реВрдк рдореЗрдВ рднреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред



рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, jaxb-facets рд╕рднреА xsd рдкреНрд░рддрд┐рдмрдВрдз рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЖрдк рдкреГрд╖реНрда рдХреЗ рдЕрдВрдд рдореЗрдВ www.w3schools.com/schema/schema_facets.asp рдкреГрд╖реНрда рдХреЗ рдЕрдВрдд рдореЗрдВ рдЙрдирдХреЗ рд╕рд╛рде рдЦреБрдж рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг (2.2.6) xs рдореЗрдВ: рдореБрдЦрд░ рд╕рдорд░реНрдерди рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рдЙрджрд╛рд╣рд░рдг xs: IBM рд╡реЗрдмрд╕рд╛рдЗрдЯ ( www.ibm.com/developerworks/en/library/x-xml1152 ) рд╕реЗ рдореБрдЦрд░ рдХрд░реЗрдВ:

 <xs:element name="dimension"> <xs:complexType> <xs:attribute name="height" type="xs:int"/> <xs:attribute name="width" type="xs:int"/> <xs:assert test="@height < @width"/> </xs:complexType> </xs:element>
      
      







рдЯрд┐рдкреНрдкрдгреА



рдореИрдВ рджреЛрд╣рд░рд╛рддрд╛ рд╣реВрдВ, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрджрд┐ рдХреЛрдИ рд╕реЗрд╡рд╛ "рд╕реНрдХреНрд░реИрдЪ" рд╕реЗ рд▓рд┐рдЦреА рдЬрд╛рддреА рд╣реИ, рддреЛ рд╕рд╣реА wsdl рдмрдирд╛рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рд╡рд╛ рдХреЛрдб рдФрд░ рдбреЙрдХреНрдпреВрдореЗрдВрдЯреЗрд╢рди рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд▓рд┐рдЦрд┐рдд рд╡реЗрдм рд╕реЗрд╡рд╛ рд╣реИ, рддреЛ рдЗрд╕рдореЗрдВ XSD рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдЧреНрд░рд╛рд╣рдХ рдХреА рдУрд░ рд╕реЗ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдкрд╛рд░рджрд░реНрд╢реА рдмрдирд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ - рд╡рд╣ рдЗрдирдкреБрдЯ рдорд╛рдиреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХрд╛ рддрд░реНрдХ рджреЗрдЦреЗрдВрдЧреЗ (рд╣рд╛рд▓рд╛рдВрдХрд┐, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╕рднреА рдирд╣реАрдВ - рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ DBMS рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рдмрд┐рдирд╛ рдкреНрд░рд╢реНрдиреЛрдВ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред рдХреБрдЫ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрд╕рд╛рдзрди)ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░рд▓реЗрдЦрди рдкреАрдврд╝реА рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдорд╛рдкрджрдВрдбреЛрдВ, рддрдХрдиреАрдХ рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реЗрдм рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдкрддреНрд░рд╛рдЪрд╛рд░ рдХреА рдЖрд╕рд╛рдиреА рд╕реЗ рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред рдирд┐рд░реНрджреЗрд╢ред рдЗрд╕рдХреЗ рдмрд┐рдирд╛, рдХрд┐рд╕реА рдХреЛ рднреА рдЯрд╛рдЗрдк рдХрд░рдХреЗ рдЬрд╛рдВрдЪ рдХрд░рдиреА рд╣реЛрдЧреА - рд╡реЗрдм рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдФрд░ рдЙрддреНрддрд░реЛрдВ рдХреЛ рджреЗрдЦрдирд╛, рдпрд╛ рдЙрддреНрдкрдиреНрди wsdl рдХреА рдкреЗрдЪреАрджрдЧрд┐рдпреЛрдВ рдХреЛ рд╕рдордЭрдирд╛ред



All Articles