OK, will do. -denis
> -------- Original Message -------- > Subject: Re: [xfire-user] imported wsdl complex types > From: Dan Diephouse <[EMAIL PROTECTED]> > Date: Wed, March 29, 2006 8:27 am > To: [email protected] > > Hi Denis, > Can you file a JIRA issue for this? This is not hard to do (it might > even work already) :-) > > - Dan > > Denis Goeury wrote: > > >This is "as designed" in JAXB, it isn't a limitation. In my opinion, > >XFire should let the user create services that handle JAXBElements > >instead of JAXB's generated value classes. > > > >-denis > > > > > > > >>-------- Original Message -------- > >>Subject: Re: [xfire-user] imported wsdl complex types > >>From: Dan Diephouse <[EMAIL PROTECTED]> > >>Date: Wed, March 29, 2006 7:51 am > >>To: [email protected] > >> > >>Hi Frank, > >>Unfortunately this is a limitation with JAXB it seems, but I really need > >>to investigate further. The easy way around this is to create a global > >>schema <element> and not a <complexType> in your schema. > >> > >>- Dan > >> > >>Frank Sweeney wrote: > >> > >> > >> > >>>Hi there, > >>> > >>>I have made a client stub generation (with binding = jaxb) of a > >>>webservice also created with xfire. It automatically generates a class > >>>of the imported complex type as seen below. > >>> > >>>My question is that it seems to create the class with types of > >>>JAXBElement<String> rather than that of type string, is there anyway > >>>that I can get it generate a imported class with the java types > >>>instead. As it makes using the class more difficult > >>> > >>>Type long seems to be handled properly, it is strings and dates that > >>>are set to these types > >>> > >>> > >>>Regards > >>> > >>>Frank > >>> > >>> > >>> > >>>package com.docaccess.webservices.bean; > >>> > >>>import javax.xml.bind.JAXBElement; > >>>import javax.xml.bind.annotation.AccessType; > >>>import javax.xml.bind.annotation.XmlAccessorType; > >>>import javax.xml.bind.annotation.XmlElement; > >>>import javax.xml.bind.annotation.XmlElementRef; > >>>import javax.xml.bind.annotation.XmlType; > >>>import javax.xml.datatype.XMLGregorianCalendar; > >>>import com.accarda.docaccess.webservices.bean.DocSearch; > >>> > >>> > >>>/** > >>>* <p>Java class for DocSearch complex type. > >>>* > >>>* <p>The following schema fragment specifies the expected content > >>>contained within this class. > >>>* > >>>* > >>>*/ > >>>@XmlAccessorType(AccessType.FIELD) > >>>@XmlType(name = "DocSearch", propOrder = { > >>> "additionalTitles", > >>> "creationDateFrom", > >>> "creationDateTo", > >>> "docType", > >>> "invoiceDateFrom", > >>> "invoiceDateTO", > >>> "invoiceNr", > >>> "issuerNr", > >>> "kundeNr", > >>> "lastModifiedDateFrom", > >>> "lastModifiedDateTo", > >>> "mandant", > >>> "maxRecords", > >>> "objectName", > >>> "searchType", > >>> "state", > >>> "tenantNr", > >>> "vuNr" > >>>}) > >>>public class DocSearch { > >>> > >>> @XmlElementRef(name = "additionalTitles", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> additionalTitles; > >>> @XmlElement(namespace = > >>>"http://bean.webservices.docaccess.accarda.com") > >>> protected XMLGregorianCalendar creationDateFrom; > >>> @XmlElement(namespace = > >>>"http://bean.webservices.docaccess.accarda.com") > >>> protected XMLGregorianCalendar creationDateTo; > >>> @XmlElementRef(name = "docType", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> docType; > >>> @XmlElement(namespace = > >>>"http://bean.webservices.docaccess.accarda.com") > >>> protected XMLGregorianCalendar invoiceDateFrom; > >>> @XmlElement(namespace = > >>>"http://bean.webservices.docaccess.accarda.com") > >>> protected XMLGregorianCalendar invoiceDateTO; > >>> @XmlElementRef(name = "invoiceNr", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> invoiceNr; > >>> @XmlElementRef(name = "issuerNr", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> issuerNr; > >>> @XmlElementRef(name = "kundeNr", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> kundeNr; > >>> @XmlElement(namespace = > >>>"http://bean.webservices.docaccess.accarda.com") > >>> protected XMLGregorianCalendar lastModifiedDateFrom; > >>> @XmlElement(namespace = > >>>"http://bean.webservices.docaccess.accarda.com") > >>> protected XMLGregorianCalendar lastModifiedDateTo; > >>> @XmlElementRef(name = "mandant", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> mandant; > >>> @XmlElement(namespace = > >>>"http://bean.webservices.docaccess.accarda.com") > >>> protected Long maxRecords; > >>> @XmlElementRef(name = "objectName", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> objectName; > >>> @XmlElementRef(name = "searchType", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> searchType; > >>> @XmlElementRef(name = "state", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> state; > >>> @XmlElementRef(name = "tenantNr", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> tenantNr; > >>> @XmlElementRef(name = "vuNr", namespace = > >>>"http://bean.webservices.docaccess.accarda.com", type = > >>>JAXBElement.class) > >>> protected JAXBElement<String> vuNr; > >>> > >>> /** > >>> * Gets the value of the additionalTitles property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getAdditionalTitles() { > >>> return additionalTitles; > >>> } > >>> > >>> /** > >>> * Sets the value of the additionalTitles property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setAdditionalTitles(JAXBElement<String> value) { > >>> this.additionalTitles = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the creationDateFrom property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public XMLGregorianCalendar getCreationDateFrom() { > >>> return creationDateFrom; > >>> } > >>> > >>> /** > >>> * Sets the value of the creationDateFrom property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public void setCreationDateFrom(XMLGregorianCalendar value) { > >>> this.creationDateFrom = value; > >>> } > >>> > >>> /** > >>> * Gets the value of the creationDateTo property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public XMLGregorianCalendar getCreationDateTo() { > >>> return creationDateTo; > >>> } > >>> > >>> /** > >>> * Sets the value of the creationDateTo property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public void setCreationDateTo(XMLGregorianCalendar value) { > >>> this.creationDateTo = value; > >>> } > >>> > >>> /** > >>> * Gets the value of the docType property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getDocType() { > >>> return docType; > >>> } > >>> > >>> /** > >>> * Sets the value of the docType property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setDocType(JAXBElement<String> value) { > >>> this.docType = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the invoiceDateFrom property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public XMLGregorianCalendar getInvoiceDateFrom() { > >>> return invoiceDateFrom; > >>> } > >>> > >>> /** > >>> * Sets the value of the invoiceDateFrom property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public void setInvoiceDateFrom(XMLGregorianCalendar value) { > >>> this.invoiceDateFrom = value; > >>> } > >>> > >>> /** > >>> * Gets the value of the invoiceDateTO property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public XMLGregorianCalendar getInvoiceDateTO() { > >>> return invoiceDateTO; > >>> } > >>> > >>> /** > >>> * Sets the value of the invoiceDateTO property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public void setInvoiceDateTO(XMLGregorianCalendar value) { > >>> this.invoiceDateTO = value; > >>> } > >>> > >>> /** > >>> * Gets the value of the invoiceNr property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getInvoiceNr() { > >>> return invoiceNr; > >>> } > >>> > >>> /** > >>> * Sets the value of the invoiceNr property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setInvoiceNr(JAXBElement<String> value) { > >>> this.invoiceNr = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the issuerNr property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getIssuerNr() { > >>> return issuerNr; > >>> } > >>> > >>> /** > >>> * Sets the value of the issuerNr property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setIssuerNr(JAXBElement<String> value) { > >>> this.issuerNr = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the kundeNr property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getKundeNr() { > >>> return kundeNr; > >>> } > >>> > >>> /** > >>> * Sets the value of the kundeNr property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setKundeNr(JAXBElement<String> value) { > >>> this.kundeNr = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the lastModifiedDateFrom property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public XMLGregorianCalendar getLastModifiedDateFrom() { > >>> return lastModifiedDateFrom; > >>> } > >>> > >>> /** > >>> * Sets the value of the lastModifiedDateFrom property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public void setLastModifiedDateFrom(XMLGregorianCalendar value) { > >>> this.lastModifiedDateFrom = value; > >>> } > >>> > >>> /** > >>> * Gets the value of the lastModifiedDateTo property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public XMLGregorianCalendar getLastModifiedDateTo() { > >>> return lastModifiedDateTo; > >>> } > >>> > >>> /** > >>> * Sets the value of the lastModifiedDateTo property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] XMLGregorianCalendar } > >>> * */ > >>> public void setLastModifiedDateTo(XMLGregorianCalendar value) { > >>> this.lastModifiedDateTo = value; > >>> } > >>> > >>> /** > >>> * Gets the value of the mandant property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getMandant() { > >>> return mandant; > >>> } > >>> > >>> /** > >>> * Sets the value of the mandant property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setMandant(JAXBElement<String> value) { > >>> this.mandant = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the maxRecords property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] Long } > >>> * */ > >>> public Long getMaxRecords() { > >>> return maxRecords; > >>> } > >>> > >>> /** > >>> * Sets the value of the maxRecords property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] Long } > >>> * */ > >>> public void setMaxRecords(Long value) { > >>> this.maxRecords = value; > >>> } > >>> > >>> /** > >>> * Gets the value of the objectName property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getObjectName() { > >>> return objectName; > >>> } > >>> > >>> /** > >>> * Sets the value of the objectName property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setObjectName(JAXBElement<String> value) { > >>> this.objectName = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the searchType property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getSearchType() { > >>> return searchType; > >>> } > >>> > >>> /** > >>> * Sets the value of the searchType property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setSearchType(JAXBElement<String> value) { > >>> this.searchType = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the state property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getState() { > >>> return state; > >>> } > >>> > >>> /** > >>> * Sets the value of the state property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setState(JAXBElement<String> value) { > >>> this.state = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the tenantNr property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getTenantNr() { > >>> return tenantNr; > >>> } > >>> > >>> /** > >>> * Sets the value of the tenantNr property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setTenantNr(JAXBElement<String> value) { > >>> this.tenantNr = ((JAXBElement<String> ) value); > >>> } > >>> > >>> /** > >>> * Gets the value of the vuNr property. > >>> * > >>> * @return > >>> * possible object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public JAXBElement<String> getVuNr() { > >>> return vuNr; > >>> } > >>> > >>> /** > >>> * Sets the value of the vuNr property. > >>> * > >>> * @param value > >>> * allowed object is > >>> * [EMAIL PROTECTED] JAXBElement [EMAIL PROTECTED] <[EMAIL > >>> PROTECTED] String [EMAIL PROTECTED] >} > >>> * */ > >>> public void setVuNr(JAXBElement<String> value) { > >>> this.vuNr = ((JAXBElement<String> ) value); > >>> } > >>> > >>>} > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>-- > >>Dan Diephouse > >>(616) 971-2053 > >>Envoi Solutions LLC > >>http://netzooid.com > >> > >> > > > > > > > > > -- > Dan Diephouse > (616) 971-2053 > Envoi Solutions LLC > http://netzooid.com
