Hi Martin I know how xsd restrictions work but I was just wondering if we can enforce this from the POJO source code (by use of annotations).
Thanks for your help Regards, Miguel Sanders TWS/TSAMP Specialist Phone: 32-2 339 24 21 | Mobile: 32-478 80 50 23 E-mail: miguel.sand...@be.ibm.com Avenue Du Bourget, 42 Brussels, 1130 Belgium International Business Machines of Belgium sprl / bvba Siège social / Maatschappelijke zetel: Avenue du Bourget 42 Bourgetlaan, B-1130 Bruxelles/Brussel N° d'entreprise / Ondernemingsnr: TVA / BTW BE 0405 912 336 RPM Bruxelles / RPR Brussel From: Martin Gainty <mgai...@hotmail.com> To: Miguel Sanders1/Belgium/IBM@IBMBE, Date: 06/06/2013 00:32 Subject: RE: [Axis2] Question on xsd restriction <!-- definition of the restricted string --> <xs:simpleType name="restrictedLength"> <xs:restriction base="xs:string"> <xs:maxLength value="4" /> </xs:restriction> </xs:simpleType> <!-- definition for the element with an attribute and text content --> <xs:element name="Xyz"> <xs:complexType> <xs:simpleContent> <xs:extension base="restrictedLength"> <xs:attribute name="YES" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> Saludos Cordiales desde EEUU Martin Gainty ______________________________________________ Porfavor...no altere ni interrumpir esta communicacion..Gracias To: java-user@axis.apache.org Subject: [Axis2] Question on xsd restriction From: miguel.sand...@be.ibm.com Date: Wed, 5 Jun 2013 20:46:10 +0200 Hi guys I've been asked recently to publish some of our existing POJOs as webservices using Axis2. I'm really impressed how easy this is so thanks a lot for this great effort. However, there's one thing I am currently unable to do, concerning the use of xsd:restrictions for my string elements (maxLength). Currently, the generated schema from the WSDL looks like this: <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://dps.tsm.ibm.com/xsd "> <xs:complexType name="ArchiveRequest"> <xs:sequence> <xs:element minOccurs="0" name="archiveFileRequest" nillable="true" type="ax225:ArchiveFileRequest"/> </xs:sequence> </xs:complexType> <xs:complexType name="ArchiveFileRequest"> <xs:sequence> <xs:element minOccurs="0" name="checksumType" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="checksumValue" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="fileName" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="overwrite" type="xs:boolean"/> <xs:element minOccurs="0" name="tsmDescription" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="tsmFileSpaceName" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="tsmHighLevelName" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="tsmLowLevelName" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="tsmManagementClass" nillable="true" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="ArchiveResponse"> <xs:sequence> <xs:element minOccurs="0" name="archiveFileRequest" nillable="true" type="ax225:ArchiveFileRequest"/> <xs:element minOccurs="0" name="archiveFileResponse" nillable="true" type="ax225:ArchiveFileResponse"/> <xs:element minOccurs="0" name="resultCode" type="xs:int"/> <xs:element minOccurs="0" name="resultMessage" nillable="true" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="ArchiveFileResponse"> <xs:sequence> <xs:element minOccurs="0" name="checksumValue" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="tsmObjectArchiveDate" nillable="true" type="xs:dateTime"/> <xs:element minOccurs="0" name="tsmObjectID" type="xs:long"/> </xs:sequence> </xs:complexType> </xs:schema> However, for certain string elements in ArchiveFileRequest, I would like to enforce a restriction based on the maximum length of the string. Is there a way for the generated XSD to have this enforced from the POJO source? I have been reading about annotations but it's not really clear if this works out of the box with Axis2 or if I need another module to have this. Any help is appreciated. Regards, Miguel Sanders TWS/TSAMP Specialist Phone: 32-2 339 24 21 | Mobile: 32-478 80 50 23 E-mail: miguel.sand...@be.ibm.com Avenue Du Bourget, 42 Brussels, 1130 Belgium International Business Machines of Belgium sprl / bvba Siège social / Maatschappelijke zetel: Avenue du Bourget 42 Bourgetlaan, B-1130 Bruxelles/Brussel N° d'entreprise / Ondernemingsnr: TVA / BTW BE 0405 912 336 RPM Bruxelles / RPR Brussel Tenzij hierboven anders aangegeven: / Sauf indication contraire ci-dessus: / Unless otherwise stated above: International Business Machines of Belgium sprl / bvba Siège social / Maatschappelijke zetel: Avenue du Bourget 42 Bourgetlaan, B-1130 Bruxelles/Brussel N° d'entreprise / Ondernemingsnr: TVA / BTW BE 0405 912 336 RPM Bruxelles / RPR Brussel Tenzij hierboven anders aangegeven: / Sauf indication contraire ci-dessus: / Unless otherwise stated above: International Business Machines of Belgium sprl / bvba Siège social / Maatschappelijke zetel: Avenue du Bourget 42 Bourgetlaan, B-1130 Bruxelles/Brussel N° d'entreprise / Ondernemingsnr: TVA / BTW BE 0405 912 336 RPM Bruxelles / RPR Brussel
<<image/gif>>
<<image/gif>>