Reverse Engineering Wizard does not show any Tables/Classes

12 posts, 0 answers
  1. Barry
    Barry avatar
    18 posts
    Member since:
    Jul 2008

    Posted 16 May 2009 Link to this post

     I have a project that I started using Open Access Q3 from 2008 that I have now converted to using OpenAccess Q1 2009. The project used the reverse engineering wizard to generate persistent classes for an oracle database.

    I have now tried creating a new project (same solution or different solution creates the same problem) using exactly the same procedure (as far as I am aware) of enableing the project to use OpenAcces (Q1 2009 version). The backend database is exactly the same as the first project that Ienabled. The 'test connection' button in the enable project wizard returns 'successful conection' response. But the reverse engineering wizard does not/display any tables/classes.

    Any help would be appreciated

    Barry



  2. Ady
    Admin
    Ady avatar
    588 posts

    Posted 18 May 2009 Link to this post

    Hello Barry,

     Can you confirm that the user has access to the objects in the schema? Does the wizard show tables if you try connecting using another set of credentials?


    Regards,
    Ady
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
  3. DevCraft banner
  4. Barry
    Barry avatar
    18 posts
    Member since:
    Jul 2008

    Posted 18 May 2009 Link to this post

    I have an existing project that accesses the Oracle database. This project was created using OpenAccess Q3 2008 version. The reverse engineering wizard in this project  shows schema elements for the database.

    I am now trying to create a new project using OpenAccess Q1 2009 version to access the same oracle database using the same login credentials as the project that works. So.... yes I am sure that I have the appropriate access rights.

    Is it possible that oracle access in the reverse engineering wizard does not work in the Q1 2009 release?
  5. Ady
    Admin
    Ady avatar
    588 posts

    Posted 18 May 2009 Link to this post

    Hi Barry,
     
     No, that would not be the case. We have tested the feature for Oracle and are currently using it successfully.

     Can you re-execute the wizard on the older project (created with the Q3 2008 version) and perform a 'Merge schema changes' step? This way we can see whether the wizard can read the schema objects with the newer version.

    Greetings,
    Ady
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
  6. Barry
    Barry avatar
    18 posts
    Member since:
    Jul 2008

    Posted 19 May 2009 Link to this post

    With the Q1 2009 version of openAccess loaded on my computer:

    1. If I re-open the the project created with the Q3 2008 version of OpenAccess and start the reverse engineering wizard (all tables/classes are  shown - as previousely noted). If I then select the Merge Schema Changes step, the form/dialog comes up empty. If I then check the 'Display Unchanged' Items check box I see all the Tables and Classes.
    2. If I repeat the process with a project created under the Q1 2009 version of OpenAccess, I get empty forms/dialogs at all stages listed above

     

    I have tried unloading the Q1 2009 version of OpenAcess and re-installing the Q3 2008 version to verify that I can still successfully reverse engineer new projects under Q3 2008. This worked OK.

    Reloading Q1 2009 version recreated the same problem that has been documented in this thread.

     

  7. Ady
    Admin
    Ady avatar
    588 posts

    Posted 22 May 2009 Link to this post

    Hello Barry,

     Can you please try the following
    • Ensure that there is no existing reversemapping.config in the new project before you execute the wizard.
    • Open the working project with Q1 2009 version and perform a 'Reload schema' (You need not save the settings). Do you get any schema objects after a reload?
    • Can you compare the app.config files of the working and non-working projects to ensure that exactly the same connection parameters are used.
     
     Awaiting your findings.
    All the best,
    Ady
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
  8. Barry
    Barry avatar
    18 posts
    Member since:
    Jul 2008

    Posted 22 May 2009 Link to this post

    After enabling a project to use OpenAccess version Q3 2008 and another project using Q1 2009 the only difference in the app.config file is in the section starting 

    <section name="openaccess ......". The version Q1 2009 project contains an attribue 'requirePermission="false"' that is not present in the Q3 2008 version. The connection data is the same between the two projects.

     

    Reloading the Q1 2009 version with no reverse engineering mapping does not do anything.

    When starting the reverse engineering wizard in the Q3 2008 project the first thing that happens is that an options dialog comes is displayed. In this dialog you select the schema. In the Q1 2009 this options dialog does not appear.

    In the Q3 2008 project after saving the configuration from the reverse engineering wizard, the reversemapping.config file ends with an options section that contains a list of all schemata that is contained in the database and a <usedShcemata> tag identifying the schema selected in the options dialog that comes up at the start of the reverse engineering wizard process.

    In the Q1 2009 project after saving the the reverse mapping wizard configuration (where there is no prompt to select a schema) there is no list of schemata at the end of the reversmappong.config file, and the <usedSchemata> is set to "(default)". In the database that I am using the default schema has no objects (tables, views etc). If I manually edit the reversemapping.config file so that the <usedSchemata> element points to a valid schema, and then run the reverse engineering schema and do merge changes, I see all the tables in the database and can proceed to finish the wizard and generate the appropriate classes.

     

    It appears that the Q1 2009 version is not able to find the schema in the database.

    AN ASIDE: If I am trying to enable a class libary (that does not contain an app.config file) to use openAccess where is the connection information stored?

    Having realised that the empty default schema may be the problem, I have tried enabling a project  to use OpenAccess Q1 2009 against an oracle database that has objects in the default schema and that works OK!

    Barry

     

  9. Ady
    Admin
    Ady avatar
    588 posts

    Posted 26 May 2009 Link to this post

    Hi Barry,
     
     You are right there. The behavior of the wizard when it comes to schema handling has changed. The wizard now fetches only the objects in the default schema for the user (in case of Oracle).

     The 'Enable Project' wizard adds/updates the app.config and stores the connection settings in the 'connections' node under the 'OpenAccess' section.


    Regards,
    Ady
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
  10. Barry
    Barry avatar
    18 posts
    Member since:
    Jul 2008

    Posted 26 May 2009 Link to this post

    These changes are definitely a backward step and should be flagged as bugs introduced in the Q1 2009 version that should be fixed by the next release.

  11. Ady
    Admin
    Ady avatar
    588 posts

    Posted 29 May 2009 Link to this post

    Hello Barry,

     You are right. We have noted this and will work on improving the schema handling for oracle.
    As a workaround you could connect using the schema owner credentials for the objects you want to Reverse engineer. . Once you have the classes generated you could use the appropriate user during runtime.

    Best wishes,
    Ady
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
  12. Barry
    Barry avatar
    18 posts
    Member since:
    Jul 2008

    Posted 31 May 2009 Link to this post

    The work around that I am using is simply to use the reverse engineering wizard to generate a reversemapping.config - no classes are generated - because none are present in the default schema., I can then manually change the reversemapping.config file to point to the correct schema and then rerun the wizard to do a merge changes option and everything works fine.

    Thanks for your help

    Barry
  13. Ady
    Admin
    Ady avatar
    588 posts

    Posted 04 Jun 2009 Link to this post

    Hello Barry,

     Yes, that is also a possible workaround.

    We will keep you posted on the developments regarding schema handling.
    Do feel free to get back to us in case you have any further questions.

    Best wishes,
    Ady
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Check out the tips for optimizing your support resource searches.
Back to Top
DevCraft banner