Unable to add an entity with Site as its name.The application does start but the index page doesn't load at all.
Does anyone faced such issue ?
Yes this is normal because the root state of a JHipster app is named 'site' which conflicts with the state to manage your 'site' entity.
Solution is to rename JHipster root state defined in app.js to something else like 'root' and then update all its child states by searching for parent: 'site' and replacing it by parent: 'root'.
Related
I've observed the following behavior when I generate a new application using JHipster:
When I just call jhipster, it shows a set of prompts to make my choices.
When I call jhipster jdl <myjslfile.jdl>:
2.1. If the JDL has just entities, not declaring a config application section, I've got an error: Database type is required to validate entities.
2.2. If the JDL has the minimum config application like the following, it assumes some defaults and does not show any prompt.
I'm trying to write my own blueprint and I'd like to know how could I tell to Jhipster some default values should be considered when loading a JDL.
I thought that if I just set the prompt attribute default would be the solution, but I did this and have no effect, the prompts are always shown. When there are more than one application declared in the JDL file it's worst because it's not possible to distinguish what is being answered to each application since this processes happen in parallel.
Regards,
application {
config {
baseName microserviceExample,
applicationType microservice,
prodDatabaseType postgresql
}
entities X
}
entity X {
name String required minlength(3)
}
Personally, I don't like depending on default values that could be changed by a new major version (e.g. default for service registry will change in JHipster 8 from Eureka to Consul).
Why is this a problem to explicit these values in your JDL? For me the JDL should be self contained as much as possible.
Alternatively, you could define a .yo-rc.json file in your project directory or in its parent directory if you want to apply to several apps below.
And finally, you could open a feature request on github for the dev team to comment.
I generated two apps using jhipster command. One for a Jhipster demo called Blog and the other one called MyFarm.
In blog, there were three entities: Blog, Entry and Tag
In MyFarm there are two entities: Farm and Product.
The first app Blog works properly. Then I stop it. I open and run the new App myFarm and it keeps trying to reach the Blog entities... that it doesn't find obviously and then I get an error.
To generate the entities I used the import of a jh file containing the following:
entity Farm {
name String required minlength(3),
details TextBlob required
}
entity Product {
type String required,
quality Quality required,
quantity Integer required,
date Instant required
}
relationship ManyToOne {
Farm {user(login)} to User,
Product{farm(name)} to Farm
}
paginate Product with infinite-scroll
enum Quality {
MAUVAISE, BONNE, EXCELLENTE
}
The entities have been generated properly then. But they are in red in my IDE and the App doesn't try to reachc those entities upon running.
Does somebody have a clue, please?
The port is configured in the .yo-rc.json file in each project, edit one and change value of serverPort property, then re-generate your app by executing jhipster.
I generated a microservice with jdl file using jhipster v4.6.2, when generating the gateway entity from an existing microservice, I got this error:
$ jhipster entity Media
Executing jhipster:entity Media
Options:
The entity Media is being created.
? Do you want to generate this entity from an existing microservice? Yes
? Enter the path to the microservice root directory: ../media
Found the .jhipster/Media.json configuration file, entity can be automatically generated!
Error: ERROR!
The entity configuration file could not be read!
at Environment.error (/Users/austinzhang/.config/yarn/global/node_modules/yeoman-environment/lib/environment.js:140:40)
at constructor.error (/Users/austinzhang/.config/yarn/global/node_modules/generator-jhipster/generators/generator-base.js:1610:18)
at constructor._loadJson (/Users/austinzhang/.config/yarn/global/node_modules/generator-jhipster/generators/entity/index.js:246:18)
at prompt.then (/Users/austinzhang/.config/yarn/global/node_modules/generator-jhipster/generators/entity/prompts.js:87:18)
at <anonymous>
any ideas for resolve it.
Thanks a lot for your help.
I am seeking for a way to create DTO and service automatically from entity. To be more specific I've created some entities and their relationship using JDL-studio and imported using jhipster cli but I didn't found dto and service. Even I tried other option like changing .json file under .jhipster folder but no luck.
Is there any option out there?
Well, I found the solution myself that once the entity is created the entity json file will also automatically created on .jhipster folder and for the service and DTO what we have to do is we've to just put following properties on .json entity.
"dto": "mapstruct",
"service": "serviceImpl",
"microserviceName": "WntVehicleAuthority",
and after that we 've to issue yo jhipster:entity EntityName and it will automatically generate service and dto.
Note only mention Entity name not extension
ie, yo jhipster:entity Employee
I’m a complete JHipster beginner and I want to create my first own JHipster application, but I got a problem that I’m not able to solve.
Firstly, I generated my app with following settings:
-Monolithic application
then I chose a base name and a default Java package of my app and HTTP Session Authentication.
Later, I chose following:
-SQL, MYSQL, MYSQL, Yes, with ehcache, Gradle, CSS preprocessor : Yes, Internationalization: Yes, Testing framework: Gatling
And to that moment everything looked fine , then I wanted to create my entity as follows:
Yo jhipster:entity activitylist
and I added three fields:
-activityname (String), acitivitydate (LocalDate) and rating (Integer) and then I added relationship with entity user, type: many to one.
Afterwards
I used yo jhipster:entity user and I added following fields: login(String), name(String), surname(String) and added relationship one to many with field user.
However, everytime when I tried to run it with docker I got compile Java Failure and following warnings:
warning: Unmapped target property: "authorities".
UserDTO userToUserDTO(User user);
error: Unknown property "password" in return type.
User userDTOToUser(UserDTO userDTO);
I would appreciate any help.
The problem with your app is the name of your entity: user.
You need to change the name of this entity because when You name it as following You create a new Java class : User, however JHipster has its own built-in User Java class which is located in src/main/java/domain folder.
This class has its own getter, setter methods and mapper which operation is affected when your entity „user" is created.
You can notice this fact in Your warnings when compiler informs You that it encountered unknown properties in Your return type in User userDTOToUser. I would strongly recommend You changing name of the user entity and everything else should work fine.