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

Reply via email to