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

Reply via email to