Как я могу опубликовать свои классы в веб-сервисе Java? - PullRequest
0 голосов
/ 29 октября 2019

Я разработал веб-приложение на Java (с JSP и сервлетами), которое работает хорошо, но теперь мне нужно разделить его на два (клиент и сервер) для реализации веб-сервисов. У меня уже есть два отдельных проекта. На стороне сервера я использую следующий класс для передачи данных:

@XmlAccessorType(XmlAccessType.FIELD)
public class DtPerson implements Serializable{

    private int id;
    private String name;
    private String lastName;
    private Date birthDate;
    private int petsCount;

    public DtPerson(int id, String name, String lastName, java.sql.Date birthDate, int petsCount) {
        this.id = id;
        this.name = name;
        this.lastName = lastName;
        this.birthDate = birthDate;
        this.petsCount = petsCount;
    }

    public DtPerson() {}

    /* getters and setters... */
}

Но при публикации службы и генерации клиента она генерируется следующим образом:

<code>/**
 * <p>Java class for DtPerson complex type.
 * 
 * <p>The following schema fragment specifies the content expected in this class.
 * 
 * <pre>
 * &lt;complexType name="DtPerson">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}int"/>
 *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="lastName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="birthDate" type="{http://Controladores.Logica/}date" minOccurs="0"/>
 *         &lt;element name="petsCount" type="{http://www.w3.org/2001/XMLSchema}int"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * 
* * * / @XmlAccessorType(XmlAccessType.FIELD) @XmlType (name = "DtPerson", propOrder = {"id", "name", "lastName", "birthDate", "petsCount"}) открытый класс DtPerson {protected int id;защищенное строковое имя;защищенная строка lastName;защищенная дата рождения дата;защищенный int petsCount;/ * получает и устанавливает, отличные от оригиналов на сервере * /}

Как видите, он не генерирует конструктор, а для переменной java.sql.Date генерирует новый пустой класс.

Как я могу сделать так, чтобы мой класс генерировал так же, как на сервере?

Полный код находится в этом хранилище

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...