Как сериализовать класс C #, который будет отправлен на Java с SOAP - PullRequest
0 голосов
/ 04 октября 2018

У меня есть проблема, и я не могу понять, как ее решить.Я буду признателен за все помогает.В нашем проекте внутренний код был написан на C #, а внешний интерфейс - на Java.Например, есть класс User, и я хочу сделать этот класс Serializable.В C # есть атрибут [Serializable ()], но это не имеет смысла.Как я могу сделать класс User Serializable таким образом, чтобы он оставался Serializable в Java тоже.Надеюсь, что смог правильно выразить свою проблему.Заранее спасибо за любую помощь.

[Serializable(), XmlRoot("User")]
[DataContract(Name = "User", Namespace = "urn:Rabita")]
public class User
{
    [XmlElement]
    [DataMember]
    public string Id { get; set; }

    [XmlElement]
    [DataMember]
    public DateTime LastLogin { get; set; }
other fields and contructors

В Java этот класс создается следующим образом:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "User", propOrder = {
    "id",
    "lastLogin",
    "lastPasswordChange",
    "email",
    "otpTryCount",
    "loginFailCount",
    "loginCount",
    "lastFailDate",
    "otpType",
    "lastOtpFailDate",
    "lastName",
    "firstName",
    "pinCode",
    "phone",
    "userType",
    "accessType",
    "address",
    "documentName",
    "documentSerial",
    "documentNumber",
    "documentDate",
    "documentInstitution",
    "middleName",
    "gender",
    "isActive",
    "contractStatus",
    "userId"
})

public class User {

    @XmlElement(name = "Id")
    protected String id;
    @XmlElement(name = "LastLogin", required = true)
    @XmlSchemaType(name = "dateTime")
    protected XMLGregorianCalendar lastLogin;
    getters and constructors
...