Aquileo | Recent changes to wikihttps://sourceforge.net/p/nbpfcrudgen/wiki/Recent changes to wikienMon, 20 Jan 2014 14:48:17 -0000Aquileo | Home modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/Home/<div class="markdown_content"><pre>--- v10
+++ v11
@@ -5,7 +5,7 @@
To get you started, please visit the [GettingStarted] page and follow the tutorial. For a quick video walkthrough, please visit this YouTube video called "[PrimeFaces CRUD Generator in Action](http://youtu.be/jgEItv9ZQN8)" (courtesy of [Geertjan Wielenga](https://blogs.oracle.com/geertjan/entry/youtube_primefaces_crud_generator_for)).
-With the introduction of NetBeans 8, some might be curious as to what the differences are between this project and the out-of-the-box behavior built into NetBeans 8. To answer this question, please feel free to visit this page.
+With the introduction of NetBeans 8, some might be curious as to what the differences are between this project and the out-of-the-box behavior built into NetBeans 8. To answer this question, please feel free to visit [NetBeans 8 CRUD Generator Differences].
For getting the module compiled and working from source inside an IDE version *other than the current NBM build version*, please visit [Installing Into Another NetBeans Version] and see if those instructions can help you.
</pre>
</div>Kay WrobelMon, 20 Jan 2014 14:48:17 -0000https://sourceforge.net8094256776c77fbfe8df270429519342f9317143Aquileo | Home modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/Home/<div class="markdown_content"><pre>--- v9
+++ v10
@@ -4,6 +4,8 @@
This project is intended for developers of PrimeFaces web applications who utilize the NetBeans IDE. It provides a customized wizard for JSF pages that are PrimeFaces centric.
To get you started, please visit the [GettingStarted] page and follow the tutorial. For a quick video walkthrough, please visit this YouTube video called "[PrimeFaces CRUD Generator in Action](http://youtu.be/jgEItv9ZQN8)" (courtesy of [Geertjan Wielenga](https://blogs.oracle.com/geertjan/entry/youtube_primefaces_crud_generator_for)).
+
+With the introduction of NetBeans 8, some might be curious as to what the differences are between this project and the out-of-the-box behavior built into NetBeans 8. To answer this question, please feel free to visit this page.
For getting the module compiled and working from source inside an IDE version *other than the current NBM build version*, please visit [Installing Into Another NetBeans Version] and see if those instructions can help you.
</pre>
</div>Kay WrobelMon, 20 Jan 2014 14:47:30 -0000https://sourceforge.net5d96d1a12942b678a3b1354677a2ad6edf29307cAquileo | NetBeans 8 CRUD Generator Differences modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/NetBeans%25208%2520CRUD%2520Generator%2520Differences/<div class="markdown_content"><p>NetBeans has always had a solid CRUD generator to help generate a full JSF web application with basic functionality for each of the entities. The motivation for this project was a lack of support for PrimeFaces. This situation has changed with the introduction of NetBeans 8 which now supports the generation of PrimeFaces pages.</p>
<p>This page is intended to demonstrate the main differences and similarities between this PrimeFaces CRUD generator and the out-of-the-box behavior of NetBeans 8.</p>
<p>(NOTE: This page is still under construction and will have more detail on each point in the future)</p></div>Kay WrobelMon, 20 Jan 2014 14:45:10 -0000https://sourceforge.netfa71f37ab8bc52bfa98e9351d473c84e6e6d0749Aquileo | GettingStarted modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/<div class="markdown_content"><pre>--- v20
+++ v21
@@ -89,6 +89,8 @@
* Backing Bean Package: `beans`
* Converter Package: `converters`
* PrimeFaces Pages Folder: \[leave blank\]
+ * Generic Include Folder: `/WEB-INF/include`
+ * Entity Include Folder: `/WEB-INF/include/entity`
* Localization Bundle Name: `/Bundle`
* Default Rows Displayed: `10`
* Default Page Selector: `10,20,30`
@@ -108,12 +110,14 @@
1. Three packages, called `controllers`, `entities` and `converters`
* Seven directories under the "Web Pages" node, named after each entity
* A `resources` folder containing `css/pfcrud.css` Cascading Style Sheet
-* Three files under the "Web Pages" node called:
+* Two files under the "Web Pages/WEB-INF/include" node called:
* `apphome.xhtml` containing PrimeFaces **``** and **``** tags for each entity
+ * `template.xhtml` containing one PrimeFaces **``** and five **``** tags, four for each side, and one for the middle, where the body will be inserted for each page. The `layoutUnit` with *`position="north"`* also has the `appmenu.xhtml` file included so that the menu bar will show on top.
+* One file under the "Web Pages" node called:
* `index.xhtml` with a welcome message
- * `template.xhtml` containing one PrimeFaces **``** and five **``** tags, four for each side, and one for the middle, where the body will be inserted for each page. The `layoutUnit` with *`position="north"`* also has the `appmenu.xhtml` file included so that the menu bar will show on top.
-* Each folder representing an entity will contain five files:
- * `Create.xhtml`, `Edit.xhtml`, `View.xhtml` and `List.xhtml` which are include files containing **``** tags, and `index.xhtml` which wraps these files together to one page to be shown to the end-user, containing **``** tags.
+* Entity pages are broken down into include files and publicly exposed files. Include files are put inside "Web Pages/WEB-INF/include/entity" folder, all other pages are inside folders inside the root structure. Each entity will have its own sub-folder named after the entity.
+* Each entity will have five files associated with it:
+ * `Create.xhtml`, `Edit.xhtml`, `View.xhtml` and `List.xhtml` which are include files containing **``** tags, and the publicly exposed `index.xhtml` which wraps these files together to one page to be shown to the end-user, containing **``** tags.
* `Create.xhtml` and `Edit.xhtml` containing PrimeFaces **``** tag an HTML form, and various other PrimeFaces equivalents of JSF tags, such:
- **``**
- **``**
</pre>
</div>Kay WrobelFri, 18 Oct 2013 14:34:33 -0000https://sourceforge.net4710b24a6cfae053f7d88443ac3763beb700b346Aquileo | Installing Into Another NetBeans Version modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/Installing%2520Into%2520Another%2520NetBeans%2520Version/<div class="markdown_content"><pre>--- v5
+++ v6
@@ -7,6 +7,8 @@
***Note: For 7.2.1 or less, you have to change Major Release Version for "Contexts and Dependency Injection Support" from `2` to `1` or the build will fail!***
+
+***Note: Newer versions of the generator may have implemented changes for method calls of NetBeans' internal API's which could change without notice even within a release. Some of those code changes may affect your ability to successfully compile against older versions of NetBeans. It's highly recommended to upgrade NetBeans to the latest supported version where possible. Check out the files section of the project and look for which implementation version is available as binary package.***
Are you still on NetBeans 7.2.1 or 7.2? Go ahead follow these instructions.
</pre>
</div>Kay WrobelFri, 18 Oct 2013 14:22:09 -0000https://sourceforge.net0bf9b687f673f924dcabfef11d6e7aa63d51eefeAquileo | Context Dependency Injection And Its Impact On The Generator modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/Context%2520Dependency%2520Injection%2520And%2520Its%2520Impact%2520On%2520The%2520Generator/<div class="markdown_content"><pre>--- v7
+++ v8
@@ -22,7 +22,7 @@
###### Referencing The Converter ######
In *non-CDI* projects, each converter is traditionally annotated with `@FacesConverter`. JSF pages will then point to converters via the `converterId=` attribute, e.g. ``.
-In contrast, CDI-enabled projects will use the `@Named` annotation which turns the converter a ***managed bean*** that can be referenced inside JSF pages via the `binding=` attribute, e.g. ``.
+In contrast, CDI-enabled projects will use the `@Named` annotation which turns the converter a ***managed bean*** that can be referenced inside JSF pages via the `binding=` attribute, e.g. ``. ***Note: this is now only true for JSF versions prior to JSF 2.2. The new JSF 2.2 spec has fixed CDI issues inside @FacesConverter and now allows proper injection of EJB objects such as the facade***
###### How The Converter Obtains A Reference To Entity Facade Objects ######
The converters require a reference to the EJB Session beans that represent the data access layer for returning an `Entity` object in the `getAsObject()` methods. These are represented by the `EntityFacade` classes in the project. Previously, the *embedded, static converter* inside an `EntityController` class had used `FacesContext` Expression Language lookups to retrieve an instance of the `EntityController` bean in order to access its **`protected`** `getFacade()` method. After the design decision to allow converters to reside in their own packages, this became a bit of a problem because `protected` would restrict access to the managed bean's package. As an alternative approach, the new converter classes will retrieve an instance of the EJB Session bean directly via `InitialContext` and its `lookup()` method. This looks quite cumbersome, would gets the job done of decoupling the converter from the managed bean class completely and not breaking its functionality of returning an `Entity` instance.
</pre>
</div>Kay WrobelFri, 18 Oct 2013 14:14:31 -0000https://sourceforge.net9b221218b28cda784d7350273fb26ea2a4707f6cAquileo | GettingStarted modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/<div class="markdown_content"><pre>--- v19
+++ v20
@@ -23,23 +23,25 @@
----
###### Creating A New Web Application Project ######
+Important: If you are using a newer version of NetBeans (7.3.1+) that ships with Glassfish 4.0 and JSF 2.2, please be sure to download and add the latest PrimeFaces library from the [PrimeFaces Download page](http://primefaces.org/downloads.html). As of this writing, PrimeFaces offers version 4.0 under the *Community Downloads* section. Add the library to your NetBeans installation under *Tools -> Ant Libraries* and call it "PrimeFaces 4.0". This will make PrimeFaces 4.0 available to the "Web Applciation" wizard.
1. Click on File->New Project.
* Choose "Java Web" from Categories and "Web Application" from Projects. Click Next.
* Give your project a name, e.g. SampleApp and choose the Project Location. Leave the rest as is and click Next.
* Configure Server Settings settings as follows:
- * Choose your Application Server. In a default installation, this will be the GlassFish server that came with NetBeans.
- * Set the Java EE Version to Java EE 6 Web (default)
- * Leave "Enable Contexts and Dependency injection" unchecked. This will produce a non-CDI project.
-*Note: If you put a check-mark in this field, be sure to visit the [Context Dependency Injection And Its Impact On The Generator] Wiki page which highlights some of the code differences.*
+ * Choose your Application Server. In a default installation, this will be the GlassFish server 4.0 that came with NetBeans.
+ * Set the Java EE Version to Java EE 7 Web (default)
* Leave the Context Path as is. Click Next.
* Configure the Frameworks as follows:
* Put a check mark next to JavaServer Faces.
- * On Libraries tab, use the server library JSF 2.1
+ * On Libraries tab, use the server library JSF 2.2
* On Configuration tab, leave JSF Servlet URL Pattern as `/faces/*` and select *Facelets* as Preferred Page Language.
- * On Components tab, put a check mark next to PrimeFaces.
-*Note: Click on More to select your PrimeFaces version if you have registered more than one. The default is PrimeFaces 3.2. After you selected the PrimeFaces version of your choice, click Ok.*
+ * On Components tab, put a check mark next to PrimeFaces. *Note: this should pull in the latest PrimeFaces library that's added under "Ant Libraries"
+*Note: Click on More to select your PrimeFaces version if you have registered more than one. The default is PrimeFaces 3.5. After you selected the PrimeFaces version of your choice, click Ok.*
* Click Finish to create the project.
+
+*Note: If you created a CDI project by adding a `beans.xml` file to it, be sure to visit the [Context Dependency Injection And Its Impact On The Generator] Wiki page which highlights some of the code differences.*
+
###### Adding Entities ######
@@ -94,7 +96,7 @@
* Field name artifacts for foreign fields: `descr,name`
* Leave all check marks in the following fields:
Create, Edit, Delete, View, Sort, Filter
- * *Notice the PrimeFaces Version and MyFaces CODI Version matching your project's Libraries classpath. By default, you will see 3.2 for PrimeFaces Version and nothing for MyFaces CODI Version.* ***CODI is only important for CDI projects to enable `@ViewAccessScoped` annotations***
+ * *Notice the PrimeFaces Version, MyFaces CODI Version and JSF Version matching your project's Libraries classpath and setup. If you've followed this sample app, you will see 4.0 for PrimeFaces Version, nothing for MyFaces CODI Version and 2.2 for JSF Version.* ***CODI is only important for CDI projects prior to JSF 2.2 to enable `@ViewAccessScoped` annotations. Recent versions of JSF starting with 2.2 have native support for CDI `@ViewScoped` annotations.***
* Leave "Override existing files" unchecked, unless you previously had files generated.
* Click Finish.
</pre>
</div>Kay WrobelThu, 10 Oct 2013 14:15:07 -0000https://sourceforge.net0448a8e1eba21b73429c3b6dba5a52e87dd546dbAquileo | Context Dependency Injection And Its Impact On The Generator modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/Context%2520Dependency%2520Injection%2520And%2520Its%2520Impact%2520On%2520The%2520Generator/<div class="markdown_content"><pre>--- v6
+++ v7
@@ -12,6 +12,9 @@
One solution, and the one *preferred* by the CRUD generator, is to add ***[Apache MyFaces CODI](http://myfaces.apache.org/extensions/cdi/)*** to the project's libraries. The generator will automatically detect the existence of CODI and add **`@ViewAccessScoped`** annotations to each managed bean. Please visit the CODI documentation regarding [`@ViewAccessScoped`](https://cwiki.apache.org/confluence/display/EXTCDI/Core+Usage#CoreUsage-@ViewAccessScoped) to learn how it works.
One side effect of using MyFaces CODI and `@ViewAccessScoped` is that the end-user can have multiple browser tabs open, each pointing to their own version the managed bean. As a result, a user would be able to e.g. look at two customers side-by-side.
+
+###### View Scope Via JSF 2.2 ######
+With the introduction of the new ***JSF 2.2*** specification, the generator now takes advantages of its built-in **`@javax.faces.view.ViewScoped`** annotation, not to be confused with the non-CDI `@javax.faces.bean.ViewScoped` annotation. MyFaces CODI is not compatible with JSF 2.2 as of this writing as deploying such an application results in deployment errors. So if you are on a recent version of NetBeans which includes Glassfish 4.0 and JSF 2.2 and your project is a CDI project (a `beans.xml` file was added to the project), the generator will be using aforementioned annotation. Please be advised to also add PrimeFaces 4.0 or higher to your project for compatibility with JSF 2.2.
Converters
====
</pre>
</div>Kay WrobelThu, 10 Oct 2013 13:55:26 -0000https://sourceforge.net95028ebcb501764e45443cdadd86246b735c0f11Aquileo | Home modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/Home/<div class="markdown_content"><pre>--- v8
+++ v9
@@ -9,5 +9,7 @@
Since Web Applications can use Context Dependency Injection, which works different in many regards, the CRUD generator will produce different variants of the backing beans and converters required for the CRUD application. For a comparison of CDI vs. non-CDI, please visit [Context Dependency Injection And Its Impact On The Generator].
+**Important: Please be sure to visit the [tickets](https://sourceforge.net/p/nbpfcrudgen/tickets/) section for any current or past issues.**
+
[[project_admins]]
[[download_button]]
</pre>
</div>Kay WrobelMon, 29 Jul 2013 15:17:10 -0000https://sourceforge.net93f7c2efc1fe8c0cfc57233cd9ffbe88acc4da15Aquileo | Installing Into Another NetBeans Version modified by Kay Wrobelhttps://sourceforge.net/p/nbpfcrudgen/wiki/Installing%2520Into%2520Another%2520NetBeans%2520Version/<div class="markdown_content"><pre>--- v4
+++ v5
@@ -1,12 +1,12 @@
Installing Into Another NetBeans Version
====
-The following set of instructions will show you how to install the module *from source* into a version of NetBeans that is currently not the same as the binary distributions. At the time of this writing, the author has NetBeans 7.2.1 installed and is releasing binary NBM packages for that version only.
+The following set of instructions will show you how to install the module *from source* into a version of NetBeans that is currently not the same as the binary distributions. At the time of this writing, the author has NetBeans **7.3** installed and is releasing binary NBM packages for that version only.
-You may also watch [Installing PrimeFaces CRUD Generator From Source in NetBeans 7.3](http://youtu.be/5tvKsjrNh_Y) on YouTube for a visual walkthrough of the process and a specific pitfall with 7.3rc2 (and up).
+You may also watch [Installing PrimeFaces CRUD Generator From Source in NetBeans 7.3](http://youtu.be/5tvKsjrNh_Y) on YouTube for a visual walkthrough of the process and a specific pitfall with 7.3rc2 (and up). This video works for now outdated NetBeans 7.2 and 7.2.1 version as well. Please be mindful of library dependencies as pointed out below.
-***Note: For 7.2.1 and less you have to change the Major Release Version for "Contexts and Dependency Injection Support" from `2` to `1` or the build will fail!***
+***Note: For 7.2.1 or less, you have to change Major Release Version for "Contexts and Dependency Injection Support" from `2` to `1` or the build will fail!***
Are you still on NetBeans 7.2.1 or 7.2? Go ahead follow these instructions.
</pre>
</div>Kay WrobelMon, 03 Jun 2013 16:53:12 -0000https://sourceforge.netee19ea88e112bfe0f7050830a111459da824d5a6