Replies: 14 comments 11 replies
-
I'll review tomorrow :) |
Beta Was this translation helpful? Give feedback.
-
Hello, As I don't build applications around data I'm not a JDL user, and, to be honest, I don't know what it is doing. Can you explain the goal of the JDL integration in JHLite?
Thanks in advance. To be honest, I don't think I'll be able to help a lot on that because:
|
Beta Was this translation helpful? Give feedback.
-
I think it can be usefull, as some companies loves "Data Driven" Serious answer now: I totally agree with @DamnClin @antarus : I suggest to discuss seriously first about this, before going too further. I don't want you to lost your time on this, unless we all agree 🙏 For your information, I manage to use generator-jhipster JDL in a project generated with JHipster Lite, I can give more details if needed |
Beta Was this translation helpful? Give feedback.
-
Don't worry, I'm not wasting my time too much, it allows me to get up to speed in java for September For me the JDL is used to describe my final application. I try not to think by the database anymore and I think that the JDL remains a very good DSL to generate an application. It could be used initially to define the properties of the different modules. it could evolve to
I will be interested in your current workflow @pascalgrimaud |
Beta Was this translation helpful? Give feedback.
-
The JDL was only a solution to a need: avoid the questions of the generator. How: by proposing an alternative way to generate an app. The question is not how we can use the JDL but whether a DSL is actually needed |
Beta Was this translation helpful? Give feedback.
-
@antarus : here the workflow I used once, using a project generated with JH Lite: {
"actions": [
{
"module": "init",
"date": "2022-07-28T06:15:53.861632052Z",
"properties": {
"projectName": "beer project",
"baseName": "beer"
}
},
{
"module": "maven-java",
"date": "2022-07-28T06:16:10.801385380Z",
"properties": {
"projectName": "beer project",
"baseName": "beer",
"packageName": "tech.jhipster.beer"
}
},
{
"module": "springboot",
"date": "2022-07-28T06:19:22.553784268Z",
"properties": {
"projectName": "beer project",
"baseName": "beer",
"packageName": "tech.jhipster.beer"
}
},
{
"module": "springboot-tomcat",
"date": "2022-07-28T06:19:38.908305238Z",
"properties": {
"projectName": "beer project",
"baseName": "beer",
"packageName": "tech.jhipster.beer",
"serverPort": 8080
}
},
{
"module": "postgresql",
"date": "2022-07-28T06:22:01.226414001Z",
"properties": {
"projectName": "beer project",
"baseName": "beer",
"packageName": "tech.jhipster.beer",
"serverPort": 8080
}
},
{
"module": "liquibase",
"date": "2022-07-28T06:22:06.464943674Z",
"properties": {
"projectName": "beer project",
"baseName": "beer",
"packageName": "tech.jhipster.beer",
"serverPort": 8080
}
}
]
} Then, I added a fake {
"generator-jhipster": {
"baseName": "beer",
"databaseType": "sql",
"devDatabaseType": "postgresql",
"entities": [],
"entitySuffix": "Entity",
"lastLiquibaseTimestamp": 1657095849000,
"packageFolder": "tech/jhipster/beer",
"packageName": "tech.jhipster.beer",
"prodDatabaseType": "postgresql",
"skipClient": true
}
} Here a JDL:
Here what is generated, in the dedicated package Then, I only keep Entity, Repository and changelog xml. All other classes are deleted |
Beta Was this translation helpful? Give feedback.
-
cc @jdubois about the discussion, related to JDL |
Beta Was this translation helpful? Give feedback.
-
Hello, after having used the jdl a little with the generator jhipster in hexagonal infra from jhipster-lite, the jdl is not very suitable. For example, we cannot make a distinction between an entity and a Value Object.(I like record !) The jdl is very database oriented with relationShip. I would like in my jdl to be able to describe my business entities/VO, my jpa entities and my different objects, not necessarily generating all the CRUD functions With In the end, it would take either other options in the JDL not to generate jpa entities but business model or make a DSL more suitable for jhipster-lite so that it generates it. |
Beta Was this translation helpful? Give feedback.
-
small draft for a dsl jhipster-lite for discussion: https://gist.github.com/antarus/63dd5035fa20f3277a2ebac93414299a |
Beta Was this translation helpful? Give feedback.
-
Thanks for the hard work @antarus !! |
Beta Was this translation helpful? Give feedback.
-
Hello, I started creating the parser/lexer for the dsl file. You can find it here https://github.com/antarus/jhipster-lite/tree/feature/dsl For the moment only the parsing part of the file is done, Ii think I'll start working on the generation part next week But I admit that I still don't really know how to integrate it properly into the project :'( |
Beta Was this translation helpful? Give feedback.
-
Ok, I will take a look a it later.
But great work!
…
Hello,
I started creating the parser/lexer for the dsl file. You can find it here https://github.com/antarus/jhipster-lite/tree/feature/dsl <https://github.com/antarus/jhipster-lite/tree/feature/dsl>
For the moment only the parsing part of the file is done, Ii think I'll start working on the generation part next week
But I admit that I still don't really know how to integrate it properly into the project :'(
—
Reply to this email directly, view it on GitHub <#2754 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAZ65ZEP555DJEEE2LP3PFDWK6MLNANCNFSM54QCQMRQ>.
You are receiving this because you commented.
|
Beta Was this translation helpful? Give feedback.
-
@jdubois it's not yet crud but it's starting to generate code.. |
Beta Was this translation helpful? Give feedback.
-
Yes @antarus I would start by doing CRUD only:
|
Beta Was this translation helpful? Give feedback.
-
hello,
@pascalgrimaud
I started a parser for the jdl (https://github.com/antarus/jdl) with antlr.
With the experience of the jdl parser in nodejs, I wanted to know if the approach was the right one or if there were things to change or take into account before rushing headlong. @MathieuAA an opinion?
Should we have a specific version of the jdl for jhipster-lite? I am not sure.
Otherwise, some ideas emerge from a first analysis of the JDL.
The concept of application could be a successive addition of specific modules and configurations in jhipster-lite.
Beta Was this translation helpful? Give feedback.
All reactions