Search code examples
javajhipsterjdl

jhipster give error while parsing import jdl


I create a jdl file with "http://www.jhipster.tech/jdl-studio/", but when I launch import in my jhipster project I have this error :

I have no error in jdl Studio

Using JHipster version installed locally in current project's node_modules
Executing jhipster:import-jdl jhipster-jdl.jh
Options: 
The jdl is being parsed.
events.js:160
  throw er; // Unhandled 'error' event
  ^

Error: ERROR!
Error while parsing entities from JDL

at Environment.error (D:\workspace\yvidya\node_modules\yeoman-environment\lib\environment.js:157:40)
at error (D:\workspace\yvidya\node_modules\generator-jhipster\generators\generator-base.js:1676:18)
at parseJDL (D:\workspace\yvidya\node_modules\generator-jhipster\generators\import-jdl\index.js:105:26)
at Object.<anonymous> (D:\workspace\yvidya\node_modules\yeoman-generator\lib\index.js:399:25)
at D:\workspace\yvidya\node_modules\run-async\index.js:25:25
at D:\workspace\yvidya\node_modules\run-async\index.js:24:19
at self.env.runLoop.add.completed (D:\workspace\yvidya\node_modules\yeoman-generator\lib\index.js:400:11)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)
at processImmediate [as _immediateCallback] (timers.js:617:5)

There is my jdl file

entity Entite {
    nom String required maxlength(100),
    numeroLicence String maxlength(30),
    siret String maxlength(15),
    adresse String maxlength(100),
    adresseComplement String maxlength(100),
    codePostal String maxlength(10),
    ville String maxlength(50)
}

entity TypeEntity {
    nom String required maxlength(30)
}

entity WebService {
    nom String required maxlength(30),
    methode String required maxlength(10)
}

entity Profil {
    nom String required maxlength(20)
}

entity UserFonc {
    nom String required maxlength(30)
}

entity TypeBon {
    nom String required maxlength(15)
}

entity NatureBon {
    nom String required maxlength(15)
}

entity Permission {
}

entity BonSav {
    uuid String required maxlength(40),
    logicielId String required maxlength(40),
    codeMagasin String maxlength(10),
    numeroFournisseur String maxlength(40),
    codeReparation String required maxlength(10),
    libelleReparation Text required,
    dateDepot ZonedDateTime required,
    dateRetrait ZonedDateTime required,
    codeClient String required maxlength(10),
    nomClient String required maxlength(30),
    prenomClient String required maxlength(20),
    emailClient String maxlength(50),
    telephoneClient String maxlength(20),
    photo Blob,
    dateCreation ZonedDateTime required,
    dateModification ZonedDateTime required
}

entity Memo {
    titre String required maxlength(200),
    commentaire Text,
    flagTraiter Boolean,
    dateCreation ZonedDateTime required,
    dateModification ZonedDateTime required
}

relationship ManyToMany {
    Profil{WebService(nom)} to WebService{profil}
}

relationship ManyToMany {
    WebService{TypeEntity(nom)} to TypeEntity{webService}
}

relationship ManyToOne {
    Entite{typeEntity(nom)} to TypeEntity
}

relationship ManyToMany {
    Permission{entite(nom)} to Entite{permission}
}

relationship ManyToOne {
    Permission{profil(nom)} to Profil
}

relationship ManyToOne {
    Permission{UserFonc(nom)} to UserFonc
}

relationship ManyToOne {
    BonSav{entite(nom)} to Entite
}

relationship ManyToOne {
    BonSav{nature(nom)} to NatureBon
}

relationship ManyToOne {
    BonSav{type(nom)} to TypeBon
}

relationship ManyToOne {
    BonSav{destinataire(nom)} to Entite
}

relationship ManyToOne {
    Entite{entiteMere(nom)} to Entite
}

relationship ManyToOne {
    Memo{bonSav} to BonSav
}

relationship ManyToOne {
    Memo{createur(nom)} to UserFonc
}

relationship ManyToOne {
    Memo{modificateur(nom)} to UserFonc
}

relationship ManyToOne {
    BonSav{createur(nom)} to UserFonc
}

relationship ManyToOne {
    BonSav{modificateur(nom)} to UserFonc
}

// Set pagination options
paginate WebService, Profil, NatureBon, TypeBon with infinite-scroll
paginate Entite, TypeEntity, BonSav, Memo, UserFonc, Permission with pagination

dto * with mapstruct

// Set service options to all except few
service all with serviceImpl

Can you give me the error parsing? I don't understand...

I am using jhipster 4.9.0 and use function import-jdl

Thanks

Vince


Solution

  • Two of your entities (Memo and BonSav) use Text datatype. This is not a valid JDL datatype. Either use String or TextBlob