
Before you begin, you need to install the required software on your
computer as
described here.






0. Start NetBeans IDE.
1. Create SynchronousSample
SOA project.























| <?xml version="1.0"
encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://xml.netbeans.org/schema/SynchronousSample" xmlns:tns="http://xml.netbeans.org/schema/SynchronousSample" elementFormDefault="qualified"> <xsd:complexType name="simpleProcess"> <xsd:sequence> <xsd:element name="paramA" type="xsd:string"/> </xsd:sequence> </xsd:complexType> <xsd:element name="typeA" type="tns:simpleProcess"/> </xsd:schema> |




| <?xml version="1.0"
encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://xml.netbeans.org/examples/PurchaseOrder" xmlns:tns="http://xml.netbeans.org/examples/PurchaseOrder" elementFormDefault="qualified"> <xsd:annotation> <xsd:documentation xml:lang="en"> Purchase order schema for Example.com. Copyright 2000 Example.com. All rights reserved. </xsd:documentation> </xsd:annotation> <xsd:element name="purchaseOrder" type="tns:PurchaseOrderType"/> <xsd:element name="comment" type="xsd:string"/> <xsd:complexType name="PurchaseOrderType"> <xsd:sequence> <xsd:element name="shipTo" type="tns:USAddress"/> <xsd:element name="billTo" type="tns:USAddress"/> <xsd:element ref="tns:comment" minOccurs="0"/> <xsd:element name="items" type="tns:Items"/> </xsd:sequence> <xsd:attribute name="orderDate" type="xsd:date"/> </xsd:complexType> <xsd:complexType name="USAddress"> <xsd:sequence> <xsd:element name="name" type="xsd:string"/> <xsd:element name="street" type="xsd:string"/> <xsd:element name="city" type="xsd:string"/> <xsd:element name="state" type="xsd:string"/> <xsd:element name="zip" type="xsd:decimal"/> </xsd:sequence> <xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/> </xsd:complexType> <xsd:complexType name="Items"> <xsd:sequence> <xsd:element name="item" minOccurs="0" maxOccurs="unbounded"> <xsd:complexType> <xsd:sequence> <xsd:element name="productName" type="xsd:string"/> <xsd:element name="quantity"> <xsd:simpleType> <xsd:restriction base="xsd:positiveInteger"> <xsd:maxExclusive value="100"/> </xsd:restriction> </xsd:simpleType> </xsd:element> <xsd:element name="USPrice" type="xsd:decimal"/> <xsd:element ref="tns:comment" minOccurs="0"/> <xsd:element name="shipDate" type="xsd:date" minOccurs="0"/> </xsd:sequence> <xsd:attribute name="partNum" type="tns:SKU" use="required"/> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> <!-- Stock Keeping Unit, a code for identifying products --> <xsd:simpleType name="SKU"> <xsd:restriction base="xsd:string"> <xsd:pattern value="\d{3}-[A-Z]{2}"/> </xsd:restriction> </xsd:simpleType> </xsd:schema> |


| <?xml version="1.0"
encoding="UTF-8"?> <xs:schema targetNamespace="http://xml.netbeans.org/examples/LoanApplication" xmlns="http://xml.netbeans.org/examples/LoanApplication" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:element name="autoLoanApplication"> <xs:annotation> <xs:documentation>A loan application xml schema</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="loan" type="LoanType"/> <xs:element name="term" type="xs:integer"/> <xs:element name="amount"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:minInclusive value="5000.00"/> <xs:maxInclusive value="10000.00"/> <xs:fractionDigits value="2"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="application"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="individual"/> <xs:enumeration value="joint"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="state" type="StateType"/> <xs:element name="applicant" type="ApplicantType" maxOccurs="2"/> <xs:element name="tradeIn" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="vehicle" type="CarType"/> <xs:element name="monthlyPayment"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:fractionDigits value="2"/> <xs:minInclusive value="0.00"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:simpleType name="LoanType"> <xs:restriction base="xs:string"> <xs:enumeration value="new"/> <xs:enumeration value="used dealer"/> <xs:enumeration value="used private"/> <xs:enumeration value="refinance"/> <xs:enumeration value="lease buyout"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="StateType"> <xs:restriction base="xs:string"> <xs:enumeration value="AZ"/> <xs:enumeration value="CA"/> <xs:enumeration value="NY"/> <xs:enumeration value="TX"/> </xs:restriction> </xs:simpleType> <xs:complexType name="ApplicantType"> <xs:sequence> <xs:element name="name"> <xs:complexType> <xs:sequence> <xs:element name="first" type="xs:string"/> <xs:element name="middle" type="xs:string"/> <xs:element name="last" type="xs:string"/> <xs:element name="suffix"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Jr"/> <xs:enumeration value="Sr"/> <xs:enumeration value="II"/> <xs:enumeration value="III"/> <xs:enumeration value="IV"/> <xs:enumeration value="V"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="SSID"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="\d{3}-\d{2}-\d{4}"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="birthDate" type="xs:date"/> <xs:element name="homePhone" type="PhoneNumberType"/> <xs:element name="cellPhone" type="PhoneNumberType"/> <xs:element name="emailAddress"> <xs:simpleType> <xs:restriction base="xs:string"/> </xs:simpleType> </xs:element> <xs:element name="residence" type="ResidenceType" maxOccurs="unbounded"/> <xs:element name="employment"> <xs:complexType> <xs:sequence> <xs:element name="status"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="unemployed"/> <xs:enumeration value="employed"/> <xs:enumeration value="self employed"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="detail" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="occupation" type="xs:string"/> <xs:element name="employer"> <xs:complexType> <xs:sequence> <xs:element name="name"/> <xs:element name="address" type="AddressType"/> <xs:element name="lengthOfEmployment" type="DurationType"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="workPhone" type="PhoneNumberType"/> <xs:element name="grossMonthlyIncome"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:minInclusive value="0.00"/> <xs:fractionDigits value="2"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="supplementalIncome"> <xs:complexType> <xs:sequence> <xs:element name="source"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="alimony"/> <xs:enumeration value="child support"/> <xs:enumeration value="investments"/> <xs:enumeration value="part time job"/> <xs:enumeration value="rental property"/> <xs:enumeration value="retirement income"/> <xs:enumeration value="social security"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="grossMonthlyIncome"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:minInclusive value="0.00"/> <xs:fractionDigits value="2"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="AddressType"> <xs:sequence> <xs:element name="address1"/> <xs:element name="address2"/> <xs:element name="city"/> <xs:element name="state" type="StateType"/> <xs:element name="zip"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minLength value="5"/> <xs:maxLength value="5"/> <xs:pattern value="\d{5}"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="PhoneNumberType"> <xs:sequence> <xs:element name="areaCode"/> <xs:element name="exchange"/> <xs:element name="number"/> <xs:element name="extension" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="OccupancyType"> <xs:sequence> <xs:element name="type"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="rent"/> <xs:enumeration value="own"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="movedIn" type="xs:date"/> <xs:element name="lengthOfOccupancy" type="DurationType"/> <xs:element name="payment"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:fractionDigits value="2"/> <xs:minInclusive value="0.00"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="ResidenceType"> <xs:sequence> <xs:element name="address" type="AddressType"/> <xs:element name="occupancy" type="OccupancyType"/> </xs:sequence> </xs:complexType> <xs:complexType name="CarType"> <xs:sequence> <xs:element name="year" type="xs:gYear"/> <xs:element name="make" type="xs:string"/> <xs:element name="model" type="xs:string"/> <xs:element name="VIN" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="DurationType"> <xs:sequence> <xs:element name="years" type="xs:positiveInteger"/> <xs:element name="months"> <xs:simpleType> <xs:restriction base="xs:positiveInteger"> <xs:minInclusive value="1"/> <xs:maxInclusive value="12"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:schema> |