Results 1 to 2 of 2

Thread: Roo doesn't create ManagedBeans if the domain is reverse enginereed from a database

  1. #1

    Unhappy Roo doesn't create ManagedBeans if the domain is reverse enginereed from a database

    Hello everyone.
    I've tried to create a simple project with handmade entities, on top of which I created a jsf/primefaces web tier.
    The tutorial which I followed, and that works like a charm, can be found here.

    This is the full list of roo commands executed for it:

    Code:
    project --topLevelPackage com.springroo.autoshowroom --projectName roo-autoshowroom
    persistence setup --provider HIBERNATE --database HYPERSONIC_IN_MEMORY
    enum type --class ~.domain.Model
    enum constant --name Audi
    enum constant --name BMW
    enum constant --name Ford
    enum constant --name Mercedes
    enum constant --name Opel
    enum constant --name Volvo
    enum constant --name VW
    entity jpa --class ~.domain.Car
    field string --fieldName modelName --notNull
    field enum --fieldName model --type ~.domain.Model --notNull 
    field number --fieldName price --type java.lang.Integer --notNull --min 10
    field date --fieldName dateOfProduction --type java.util.Date --past
    entity jpa --class ~.domain.Customer
    field string --fieldName name --sizeMax 20 --notNull
    field string --fieldName address --sizeMax 50 --notNull
    field string --fieldName email --regexp "[a-zA-Z0-9]+@[a-zA-Z0-9]+\.[a-zA-Z0-9]+"
    field set --fieldName cars --type ~.domain.Car --mappedBy customer --notNull false --cardinality ONE_TO_MANY
    field reference --fieldName customer --class ~.domain.Car --type ~.domain.Customer --notNull
    web jsf setup --implementation APACHE_MYFACES --theme  START
    web jsf all --package ~.jsf
    perform tests
    perform package
    perform eclipse
    quit
    Now, I tried to make 2 more projects, using an oracle database and a mysql database reverse engineering to build the entities. Here is the full roo log:

    Code:
    project --topLevelPackage com.rhad.jmon.web --projectName jmonweb --java 6 --packaging JAR
    jpa setup --provider HIBERNATE --database ORACLE 
    osgi install --url file:///C:\oracleosgi\target\com.oracle.roo.jdbc.ojdbc14-10.2.0.4.0.0001.jar
    database reverse engineer --schema ORAP8 --package ~.domain --testAutomatically false --enableViews false --includeTables "JMON_LOGGING JMON_MONITOR JMON_RISORSE_FS JMON_RISORSE_CPU JMON_RISORSE_PS JMON_RISORSE_MEM JMON_RISORSE_PING" --includeNonPortableAttributes false --activeRecord false
    web jsf setup --implementation APACHE_MYFACES --theme BLACK_TIE 
    web jsf all --package ~.jsf
    perform package
    The problem is that when I create entities via reverse engineering, I get the following exception:

    Code:
    GRAVE: Servlet.service() for servlet [Faces Servlet] in context with path [/jmonweb] threw exception [Target Unreachable, identifier 'jmonLoggingBean' resolved to null] with root cause
    javax.el.PropertyNotFoundException: Target Unreachable, identifier 'jmonLoggingBean' resolved to null
    which, after comparing the handmade and reverse engineered projects, I think that I can pinpoint to the fact that in the handmade one roo created a CarBean_Roo_ManagedBean.aj in the ~.jsf package, while there is no ...ManagedBean.aj at all created in both the reverse engineered projects.

    What am I doing wrong? Why isn't roo creating ManagedBeans when the entities are generated via reverse engineering?

    Thanks everyone for your help,
    Roberto

  2. #2

    Default

    Replying to myself, setting activeRecord to false is the issue. Can any mod delete or lock this thread?
    Thank you!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •