... | ... | @@ -1007,9 +1007,9 @@ The [JButler Base Project](https://gitlab.labes.inf.ufes.br/labes/jbutler-base-p |
|
|
</ui:composition>
|
|
|
```
|
|
|
|
|
|
## TODO -- Write missing explanations
|
|
|
Looking at the above code, you can see that although we are using a ready-to-use front-end because of the lack of designers, it's still quite complicated to build a decent Web page in our system! To do a good job here, a developer should be familiar with [PrimeFaces](https://www.primefaces.org/) components and [AdminFaces](https://github.com/adminfaces/) layouts. For that purpose, I suggest exploring the [PrimeFaces Demo](https://www.primefaces.org/showcase/) and the [AdminFaces Showcase](https://github.com/adminfaces/admin-showcase). The above code, by the way, is based on the [DataTable CRUD example in PrimeFaces Demo](https://www.primefaces.org/showcase/ui/data/datatable/crud.xhtml?jfwid=14d21).
|
|
|
|
|
|
`src/main/resources/br/ufes/inf/labes/oldenburg/core/view/messages.properties`
|
|
|
Also in the above code, notice that some of the internationalized messages refer not to `msgs` but to `msgsCore`, as JButler suggests that the functionalities of the system be separated in modules or subsystems, which is why we implemented the Java classes under `br.ufes.inf.labes.oldenburg.core` (we named our only subsystem _core_). We need to provide those messages under `msgsCore`, so we create the file `src/main/resources/br/ufes/inf/labes/oldenburg/core/view/messages.properties` with the following contents:
|
|
|
|
|
|
```sh
|
|
|
##
|
... | ... | @@ -1037,7 +1037,7 @@ manageWorkshops.text.entities = Workshops |
|
|
manageWorkshops.text.updateSucceeded = Workshop updated:
|
|
|
```
|
|
|
|
|
|
Add to `faces-config.xml`:
|
|
|
Other than providing the messages in the bundle, we need to tell JSF that this bundle exists and we would like to call it `msgsCore`. Hence, add to `src/main/webapp/WEB-INF/faces-config.xml` the following configuration (next to the other resource bundle configuration already there):
|
|
|
|
|
|
```xml
|
|
|
<resource-bundle>
|
... | ... | @@ -1046,7 +1046,7 @@ Add to `faces-config.xml`: |
|
|
</resource-bundle>
|
|
|
```
|
|
|
|
|
|
Add to `template.xhtml`:
|
|
|
To finish our example, we just need a link at the left-side menu, so we can access our new CRUD feature. Add the following to `src/main/webapp/WEB-INF/templates/template.xhtml`, next to the Home link already there:
|
|
|
|
|
|
```xml
|
|
|
<li><p:link outcome="/core/manageWorkshops/index">
|
... | ... | @@ -1055,3 +1055,4 @@ Add to `template.xhtml`: |
|
|
</p:link></li>
|
|
|
```
|
|
|
|
|
|
That's it! Deploy and try your new CRUD feature which, front-end aside, was mostly provided by JButler! ;) |