<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to GettingStarted</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>Recent changes to GettingStarted</description><atom:link href="https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/feed" rel="self"/><language>en</language><lastBuildDate>Fri, 18 Oct 2013 14:34:33 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/feed" rel="self" type="application/rss+xml"/><item><title>GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- 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:
         - **``**
         - **``**
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Fri, 18 Oct 2013 14:34:33 -0000</pubDate><guid>https://sourceforge.net4710b24a6cfae053f7d88443ac3763beb700b346</guid></item><item><title>GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- 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 -&gt; Ant Libraries* and call it "PrimeFaces 4.0". This will make PrimeFaces 4.0 available to the "Web Applciation" wizard.

 1. Click on File-&gt;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.

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Thu, 10 Oct 2013 14:15:07 -0000</pubDate><guid>https://sourceforge.net0448a8e1eba21b73429c3b6dba5a52e87dd546db</guid></item><item><title>WikiPage GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v18
+++ v19
@@ -27,12 +27,8 @@
 1. Click on File-&gt;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.
-* Choose your Application Server. In a default installation, this will be the GlassFish server that came with NetBeans.
-* Click Add...
-* Choose GlassFish Server 3+ and give it a name (or leave the default). Click Next.
-* Browse for the location of your GlassFish server instance directory. This developer has it installed at /usr/local/java/glassfish3/glassfish on a Linux system. Click Next.
-* Register a local domain (default: domain1) and click Finish.
-* Configure New Web Application settings as follows:
+* 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.*
@@ -40,8 +36,9 @@
 * Configure the Frameworks as follows:
     * Put a check mark next to JavaServer Faces.
     * On Libraries tab, use the server library JSF 2.1
-    * On Configuration tab, leave settings `/faces/*`
-    * On Components tab, put a check mark next to PrimeFaces. Click on More to select your PrimeFaces version if you have registered more than one. The default is PrimeFaces 3.2. Any version lower than that may not be supported by the code produced by the generator. Click Ok.
+    * 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.*
 * Click Finish to create the project.

 ###### Adding Entities ######
@@ -86,7 +83,7 @@
 * Choose "PrimeFaces CRUD Generator" from Categories and "PrimeFaces Pages from Entity Classes" from File Types. Click Next.
 * Click on "Add All &gt;&gt;" and then click Next.
 * Configure Generate PrimeFaces Pages and Classes as follows:
-    * Sessiom Bean Package: `controllers`
+    * Session Bean Package: `controllers`
     * Backing Bean Package: `beans`
     * Converter Package: `converters`
     * PrimeFaces Pages Folder: \[leave blank\]
@@ -124,10 +121,10 @@
         - **``**
     * `View.xhtml` representing a simple view of the data
     * `List.xhtml` containing PrimeFaces **``** and **``, various **``** tags, two **``** tags for catching ***rowSelect*** and ***rowUnselect*** AJAX events to update the View and Edit buttons, which will be disabled when no row is selected and enabled when a row is selected.
-* The `controllers` package contains *Facade* files known from NetBeans' own "JSF Pages from Entity Classes" wizard, with one **`AbstractFacade.java`** class encapsulating JPA operations for all kinds on entities, and one **`EntityFacade.java`** for each entity
+* The `controllers` package contains *Facade* files known from NetBeans' own "JSF Pages from Entity Classes" wizard, with one **`AbstractFacade.java`** class encapsulating JPA operations for all kinds of entities, and one **`EntityFacade.java`** for each entity
 * The `beans` package has a structure similar to the ***Facade*** pattern, with **one** **`AbstractController.java`** class encapsulating all common JSF operations and then **`EntityController.java`** classes for each entity. Since this project does not use Container-managed Dependency Injection, each entity bean is annotated with **`@ViewScoped`**. Having every bean inside a Session is ***not recommended***.
 * The `converters` package contains *one* converter class per entity. `@FacesConverter` classes used to be static and embedded inside the `EntityController` classes. After identifying problems when *many-to-many* relationships were used and `` is generated, a design change was implemented to give Converters their own package and class.
-* Please also observe how the generator has intelligently identified various foreign key field names where possible to be used as `itemLabel` attributes in drop-down lists as well as for the `outputText` in the `List.xhtml` files. If it was unable to identify such fields, the entity's **`@Id`** field was used. This is thanks to the *Field name artifacts* feature introduced in recent versions of the generator. If an entity field contains either `descr` or `name` (in that order), that field is then being used for e.g. the manufacturer name or the product code. This will greately increase developer productivity as this essentially allows developers to provide their own commonly used field names according to their data model!
+* Please also observe how the generator has intelligently identified various foreign key field names where possible to be used as `itemLabel` attributes in drop-down lists as well as for the `outputText` in the `List.xhtml` files. If it was unable to identify such fields, the entity's **`@Id`** field was used. This is thanks to the *Field name artifacts* feature introduced in recent versions of the generator. If an entity field contains either `descr` or `name` (in that order), that field is then being used for e.g. the manufacturer name or the product code. This will greatly increase developer productivity as this allows developers to provide their own commonly used field names according to their data model!

 Running The Application
 ----
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Mon, 11 Feb 2013 21:08:29 -0000</pubDate><guid>https://sourceforge.nete2e7b0163a844c594ab2da6ae826221344acd04c</guid></item><item><title>WikiPage GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v17
+++ v18
@@ -27,7 +27,7 @@
 1. Click on File-&gt;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.
-* Choose your Application Server. It is possible at this point that there is none in the list if all settings have been wiped out. This happens e.g. when you perform a "Clean" operation on the CRUD Generator Module. If that's the case, go to the next step. Otherwise continue at step 9.
+* Choose your Application Server. In a default installation, this will be the GlassFish server that came with NetBeans.
 * Click Add...
 * Choose GlassFish Server 3+ and give it a name (or leave the default). Click Next.
 * Browse for the location of your GlassFish server instance directory. This developer has it installed at /usr/local/java/glassfish3/glassfish on a Linux system. Click Next.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Mon, 11 Feb 2013 20:52:37 -0000</pubDate><guid>https://sourceforge.net26e513c1d805045b8df7fd0a8cb4f814e469f72d</guid></item><item><title>WikiPage GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v16
+++ v17
@@ -35,6 +35,7 @@
 * Configure New Web Application settings as follows:
     * 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.*
     * Leave the Context Path as is. Click Next.
 * Configure the Frameworks as follows:
     * Put a check mark next to JavaServer Faces.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Mon, 11 Feb 2013 20:50:34 -0000</pubDate><guid>https://sourceforge.net5322cbe48b769ddc4281f237be09a62fd553637f</guid></item><item><title>WikiPage GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v15
+++ v16
@@ -4,7 +4,7 @@
 Getting The Plugin
 ----

-The module is being release as an installable NBM plugin module. The module is NetBeans implementation dependent, so please watch for the implementation version indicated in the file.
+The module is being release as an installable NBM plugin module. The module is NetBeans implementation dependent, so please watch for the implementation version indicated in the file. If the IDE you're using is ***not*** the same, please go ahead and try [Installing Into Another NetBeans Version].

 1. Download the `nbpfcrudgen-x.x-y.y.yimpl.zip` plugin file.
 * Unzip the file which contains an NBM file.
@@ -34,13 +34,13 @@
 * Register a local domain (default: domain1) and click Finish.
 * Configure New Web Application settings as follows:
     * Set the Java EE Version to Java EE 6 Web (default)
-    * Put a check mark next to "Enable Contexts and Dependency injection"
+    * Leave "Enable Contexts and Dependency injection" unchecked. This will produce a non-CDI project.
     * 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 Configuration tab, replace `/faces/*` with `*.xhtml`
-    * On Components tab, put a check mark next to PrimeFaces. Click on More to select your PrimeFaces version if you have registered more than one. The default is PrimeFaces 3.2. Any version lower than than may not be supported by the code the generator produces. Click Ok.
+    * On Configuration tab, leave settings `/faces/*`
+    * On Components tab, put a check mark next to PrimeFaces. Click on More to select your PrimeFaces version if you have registered more than one. The default is PrimeFaces 3.2. Any version lower than that may not be supported by the code produced by the generator. Click Ok.
 * Click Finish to create the project.

 ###### Adding Entities ######
@@ -86,14 +86,17 @@
 * Click on "Add All &gt;&gt;" and then click Next.
 * Configure Generate PrimeFaces Pages and Classes as follows:
     * Sessiom Bean Package: `controllers`
-    * JSF Classes Package: `beans`
+    * Backing Bean Package: `beans`
+    * Converter Package: `converters`
     * PrimeFaces Pages Folder: \[leave blank\]
     * Localization Bundle Name: `/Bundle`
     * Default Rows Displayed: `10`
     * Default Page Selector: `10,20,30`
 You can change this to whatever you like. It affect the drop-down list that is shown in PrimeFaces DataTable's pager.
     * Field name artifacts for foreign fields: `descr,name`
-    * *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.*
+    * 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***
     * Leave "Override existing files" unchecked, unless you previously had files generated.
 * Click Finish.

@@ -102,7 +105,7 @@

 NetBeans will now generate multiple files under source packages and under Web Pages. Here is a break-down of what was created:

-1. Two packages, called `controllers` and `entities`
+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:
@@ -121,9 +124,9 @@
     * `View.xhtml` representing a simple view of the data
     * `List.xhtml` containing PrimeFaces **``** and **``, various **``** tags, two **``** tags for catching ***rowSelect*** and ***rowUnselect*** AJAX events to update the View and Edit buttons, which will be disabled when no row is selected and enabled when a row is selected.
 * The `controllers` package contains *Facade* files known from NetBeans' own "JSF Pages from Entity Classes" wizard, with one **`AbstractFacade.java`** class encapsulating JPA operations for all kinds on entities, and one **`EntityFacade.java`** for each entity
-* The `beans` package now has a structure similar to the **Facade** pattern, with **one** **`AbstractController.java`** class encapsulating all common JSF operations and then **`EntityController.java`** classes for each entity. Since this project uses Container-managed Dependency Injection, each entity bean uses the **`@Named`** and **`@SessionScoped`** annotations. Having every bean inside a Session is ***not recommended***, but unfortunately standard CDI specification does not include a View scope. If your project is not CDI-enabled, each entity bean will include the **`@ManagedBean`** and &lt;del&gt;**`@ViewScoped`**&lt;/del&gt; **`@SessionScoped`** annotations.
-    * Note: it is highly advised to download the Apache MyFaces CODI library, which is a CDI Extension. It provides an annotation called **`@ViewAccessScoped`** which works exactly as this author has intended. **The PrimeFaces CRUD Generator can now generate those annotations if it detects the CODI libraries in the project classpath!**
-* Please also observe how the generator has intelligently identified various foreign key field names to be used as `itemLabel` attributes in drop-down lists as well as for the `ouputText` in the `List.xhtml` files. This is thanks to the *Field name artifacts* feature introduced in recent versions of the generator. If an entity field contains either `descr` or `name` (in that order), that field is then being used for e.g. the manufacturer name or the product code. This will greately increase developer productivity as this essentially allows developers to provide their own commonly used field names according to their data model!
+* The `beans` package has a structure similar to the ***Facade*** pattern, with **one** **`AbstractController.java`** class encapsulating all common JSF operations and then **`EntityController.java`** classes for each entity. Since this project does not use Container-managed Dependency Injection, each entity bean is annotated with **`@ViewScoped`**. Having every bean inside a Session is ***not recommended***.
+* The `converters` package contains *one* converter class per entity. `@FacesConverter` classes used to be static and embedded inside the `EntityController` classes. After identifying problems when *many-to-many* relationships were used and `` is generated, a design change was implemented to give Converters their own package and class.
+* Please also observe how the generator has intelligently identified various foreign key field names where possible to be used as `itemLabel` attributes in drop-down lists as well as for the `outputText` in the `List.xhtml` files. If it was unable to identify such fields, the entity's **`@Id`** field was used. This is thanks to the *Field name artifacts* feature introduced in recent versions of the generator. If an entity field contains either `descr` or `name` (in that order), that field is then being used for e.g. the manufacturer name or the product code. This will greately increase developer productivity as this essentially allows developers to provide their own commonly used field names according to their data model!

 Running The Application
 ----
@@ -135,4 +138,4 @@
 Known Issues
 ----

-At the time of this writing, JSF managed beans will have a broad scope of `@SessionScoped` because `@ViewScoped` does not work properly. JSF will create another bean instance once a row is selected in a databable and several bindings on the page will fail. A better approach is to use CDI and add Apache MyFaces CODI to the project.
+None at the time of this writing. Be sure to check the **Tickets** area for any open issues.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Mon, 11 Feb 2013 19:32:46 -0000</pubDate><guid>https://sourceforge.net2f31d57392a36395a33499c27e86cd23dafa0057</guid></item><item><title>WikiPage GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v14
+++ v15
@@ -52,23 +52,27 @@
 * Choose "Persistence" from Categories and "Entity Classes from Database" from File Types. Click Next.
 * Specify Database Tables as follows:
     * Configure Data Source. For this sample application, choose `jdbc/sample` from the list. NetBeans connects to the server-supplied Derby `SAMPLE` database and populates Available Tables.
-    * For this sample, click on `PRODUCT` table and then click the Add\&gt; button. NetBeans carries over two related tables to the Selected Tables: `MANUFACTURER` and `PRODUCT_CODE`. Click Next.
+    * For this sample, click on *Add All* button. NetBeans carries over all database tables. Click Next.
 * Configure Entity Classes as follows:
     * Specify Package. Here we type the "entities" (all lower-case).
-    * Uncheck "Generate Named Query Annotations for Persistent Fields".
-    * Uncheck "Generate JAXB Annotations".
+    * Leave "Generate Named Query Annotations for Persistent Fields" checked.
+    * Leave "Generate JAXB Annotations" checked.
     * Leave the check mark next to "Create Persistence Unit". Click Next.
 * Configure Mapping Options as follows:
     * Association Fetch: `default`
-    * Collection Type: `java.util.List`
+    * Collection Type: `java.util.Collection` (default)
     * Leave everything else unchecked except for "Use Column Names in Relationships".
 * Click Finish.

-NetBeans generates the entities package and three entity classes:
+NetBeans generates the entities package and seven entity classes:

++ `Customer.java`
++ `DiscountCode.java`
 + `Manufacturer.java`
++ `MicroMarket.java`
 + `Product.java`
 + `ProductCode.java`
++ `PurchaseOrder.java`

 It also added a `persistence.xml` file to the project for referencing the sample database.

@@ -88,6 +92,8 @@
     * Default Rows Displayed: `10`
     * Default Page Selector: `10,20,30`
 You can change this to whatever you like. It affect the drop-down list that is shown in PrimeFaces DataTable's pager.
+    * Field name artifacts for foreign fields: `descr,name`
+    * *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.*
     * Leave "Override existing files" unchecked, unless you previously had files generated.
 * Click Finish.

@@ -97,7 +103,7 @@
 NetBeans will now generate multiple files under source packages and under Web Pages. Here is a break-down of what was created:

 1. Two packages, called `controllers` and `entities`
-* Three directories under the "Web Pages" node, called `manufacturer`, `product`, `productCode` representing folders for each entity
+* 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:
     * `apphome.xhtml` containing PrimeFaces **``** and **``** tags for each entity
@@ -111,11 +117,13 @@
         - **``**
         - **``**
         - **``**
+        - **``**
     * `View.xhtml` representing a simple view of the data
     * `List.xhtml` containing PrimeFaces **``** and **``, various **``** tags, two **``** tags for catching ***rowSelect*** and ***rowUnselect*** AJAX events to update the View and Edit buttons, which will be disabled when no row is selected and enabled when a row is selected.
 * The `controllers` package contains *Facade* files known from NetBeans' own "JSF Pages from Entity Classes" wizard, with one **`AbstractFacade.java`** class encapsulating JPA operations for all kinds on entities, and one **`EntityFacade.java`** for each entity
 * The `beans` package now has a structure similar to the **Facade** pattern, with **one** **`AbstractController.java`** class encapsulating all common JSF operations and then **`EntityController.java`** classes for each entity. Since this project uses Container-managed Dependency Injection, each entity bean uses the **`@Named`** and **`@SessionScoped`** annotations. Having every bean inside a Session is ***not recommended***, but unfortunately standard CDI specification does not include a View scope. If your project is not CDI-enabled, each entity bean will include the **`@ManagedBean`** and &lt;del&gt;**`@ViewScoped`**&lt;/del&gt; **`@SessionScoped`** annotations.
     * Note: it is highly advised to download the Apache MyFaces CODI library, which is a CDI Extension. It provides an annotation called **`@ViewAccessScoped`** which works exactly as this author has intended. **The PrimeFaces CRUD Generator can now generate those annotations if it detects the CODI libraries in the project classpath!**
+* Please also observe how the generator has intelligently identified various foreign key field names to be used as `itemLabel` attributes in drop-down lists as well as for the `ouputText` in the `List.xhtml` files. This is thanks to the *Field name artifacts* feature introduced in recent versions of the generator. If an entity field contains either `descr` or `name` (in that order), that field is then being used for e.g. the manufacturer name or the product code. This will greately increase developer productivity as this essentially allows developers to provide their own commonly used field names according to their data model!

 Running The Application
 ----
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Mon, 28 Jan 2013 23:08:15 -0000</pubDate><guid>https://sourceforge.net183a2d2edfc0290e698385add5684d176171cbc0</guid></item><item><title>WikiPage GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v13
+++ v14
@@ -114,8 +114,8 @@
     * `View.xhtml` representing a simple view of the data
     * `List.xhtml` containing PrimeFaces **``** and **``, various **``** tags, two **``** tags for catching ***rowSelect*** and ***rowUnselect*** AJAX events to update the View and Edit buttons, which will be disabled when no row is selected and enabled when a row is selected.
 * The `controllers` package contains *Facade* files known from NetBeans' own "JSF Pages from Entity Classes" wizard, with one **`AbstractFacade.java`** class encapsulating JPA operations for all kinds on entities, and one **`EntityFacade.java`** for each entity
-* The `beans` package now has a structure similar to the **Facade** pattern, with **one** **`AbstractController.java`** class encapsulating all common JSF operations and then **`EntityController.java`** classes for each entity. Since this project uses Container-managed Dependency Injection, each entity bean uses the **`@Named`** and **`@SessionScoped`** annotations. Having every bean inside a Session is ***not recommended***, but unfortunately standard CDI specification does not include a View scope. If your project is not CDI-enabled, each entity bean will include the **`@ManagedBean`** and **`@ViewScoped`** annotations.
-    * Note: it is highly advised to download the Apache MyFaces CODI library, which is a CDI Extension. It provides an annotation called **`@ViewAccessScoped`** which works exactly as this author has intended. **The PrimeFaces CRUD Generator can now generate those annotations!**
+* The `beans` package now has a structure similar to the **Facade** pattern, with **one** **`AbstractController.java`** class encapsulating all common JSF operations and then **`EntityController.java`** classes for each entity. Since this project uses Container-managed Dependency Injection, each entity bean uses the **`@Named`** and **`@SessionScoped`** annotations. Having every bean inside a Session is ***not recommended***, but unfortunately standard CDI specification does not include a View scope. If your project is not CDI-enabled, each entity bean will include the **`@ManagedBean`** and &lt;del&gt;**`@ViewScoped`**&lt;/del&gt; **`@SessionScoped`** annotations.
+    * Note: it is highly advised to download the Apache MyFaces CODI library, which is a CDI Extension. It provides an annotation called **`@ViewAccessScoped`** which works exactly as this author has intended. **The PrimeFaces CRUD Generator can now generate those annotations if it detects the CODI libraries in the project classpath!**

 Running The Application
 ----
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Sun, 27 Jan 2013 08:56:58 -0000</pubDate><guid>https://sourceforge.net2e94d42c9470ffb5f3202cf4dae30eae6c643bb4</guid></item><item><title>WikiPage GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v12
+++ v13
@@ -74,6 +74,8 @@

 ###### Generating PrimeFaces Pages from Entity Classes ######

+***Note: The code generator can now detect PrimeFaces version and Apache MyFaces CODI CDI-Extension version!***
+
 1. Highlight the project node.
 * Click on File-&gt;New File from the menu.
 * Choose "PrimeFaces CRUD Generator" from Categories and "PrimeFaces Pages from Entity Classes" from File Types. Click Next.
@@ -113,7 +115,7 @@
     * `List.xhtml` containing PrimeFaces **``** and **``, various **``** tags, two **``** tags for catching ***rowSelect*** and ***rowUnselect*** AJAX events to update the View and Edit buttons, which will be disabled when no row is selected and enabled when a row is selected.
 * The `controllers` package contains *Facade* files known from NetBeans' own "JSF Pages from Entity Classes" wizard, with one **`AbstractFacade.java`** class encapsulating JPA operations for all kinds on entities, and one **`EntityFacade.java`** for each entity
 * The `beans` package now has a structure similar to the **Facade** pattern, with **one** **`AbstractController.java`** class encapsulating all common JSF operations and then **`EntityController.java`** classes for each entity. Since this project uses Container-managed Dependency Injection, each entity bean uses the **`@Named`** and **`@SessionScoped`** annotations. Having every bean inside a Session is ***not recommended***, but unfortunately standard CDI specification does not include a View scope. If your project is not CDI-enabled, each entity bean will include the **`@ManagedBean`** and **`@ViewScoped`** annotations.
-    * Note: it is highly advised to download the Apache MyFaces CODI library, which is a CDI Extension. It provides an annotation called **`@ViewAccessScoped`** which works exactly as this author has intended. But since this is a third-party library and not part of NetBeans, the PrimeFaces CRUD Generator cannot simple generate those annotations. Keep your eyes peeled for future versions of the generator...
+    * Note: it is highly advised to download the Apache MyFaces CODI library, which is a CDI Extension. It provides an annotation called **`@ViewAccessScoped`** which works exactly as this author has intended. **The PrimeFaces CRUD Generator can now generate those annotations!**

 Running The Application
 ----
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Wed, 23 Jan 2013 07:19:58 -0000</pubDate><guid>https://sourceforge.net5e34e3665819ab9e4134b6eae75df3004467ebb5</guid></item><item><title>WikiPage GettingStarted modified by Kay Wrobel</title><link>https://sourceforge.net/p/nbpfcrudgen/wiki/GettingStarted/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v11
+++ v12
@@ -125,4 +125,4 @@
 Known Issues
 ----

-At the time of this writing, the application will crash once you select an entity from the menu if you don't have CDI enabled. This is being worked on. For more issues or to report new ones, please see the Tickets section.
+At the time of this writing, JSF managed beans will have a broad scope of `@SessionScoped` because `@ViewScoped` does not work properly. JSF will create another bean instance once a row is selected in a databable and several bindings on the page will fail. A better approach is to use CDI and add Apache MyFaces CODI to the project.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kay Wrobel</dc:creator><pubDate>Wed, 23 Jan 2013 07:14:36 -0000</pubDate><guid>https://sourceforge.nete7a3d070fb1928b1b3c9d579044afd660edd0b92</guid></item></channel></rss>