[
https://issues.apache.org/jira/browse/NETBEANS-5397?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17324477#comment-17324477
]
Matthias Bläsing commented on NETBEANS-5397:
--------------------------------------------
Thank you - it is reproducible and looks like a problem in the integration of
the Javac helper classes.
h1. Steps to reproduce
It happens independent of DBMS and can be traced into the code generation:
# Ensure H2 driver is present
## Download from maven central:
[https://repo1.maven.org/maven2/com/h2database/h2/1.4.200/h2-1.4.200.jar]
## Register it in NetBeans
# Create a new DB with the h2 driver:
## Select "Connect using" from context menu of H2 Driver Entry
## Enter "dummy" for "User Name" and nothing for "Password"
## Replace <FILE> in JDBC URl with a localpath, for example in a temp
directory, for example: "/tmp/testdb"
## Choose Next and select "PUBLIC" as schema and select finish
# Create minium structure, open connection to newly created connection and run
SQL:
{code:sql}
create table t1 (id integer, title varchar(255), primary key (id));
create table t2 (id integer, title varchar(255), t1_id integer references
t1(id), primary key (id));
{code}
# Create an empty Maven Project (Java with Maven -> Java Application)
# Select in Context Menu of new Project New -> Other and select "Persistence"
-> Entity Classes from Database
# Select the connection created in step 3 and add Table T2 (Table T1 will be
added as a dependency of T2), select "Next"
# Select Finish
h2. Expected Result
Two classes T1 and T2, one for each table, with properties for each column and
a property with a name like "T1ID" in class T2, which is of type Collection of
T1.
h2. Observed Result
Two classes T1 and T2 are created, but both have no members and en exxception
in code generation is observed:
{noformat}
SEVERE [org.openide.util.RequestProcessor]: Error in RequestProcessor
org.netbeans.modules.j2ee.persistence.wizard.fromdb.RelatedCMPWizard$1
java.lang.NullPointerException
at
com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:914)
at
com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(JavacProcessingEnvironment.java:113)
at
com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1298)
at
com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1380)
at
com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1350)
at
com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1240)
at
com.sun.tools.javac.main.JavaCompiler.lambda$readSourceFile$3(JavaCompiler.java:930)
at com.sun.tools.javac.code.ClassFinder.complete(ClassFinder.java:330)
at com.sun.tools.javac.code.Symbol.complete(Symbol.java:683)
at
com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:1434)
at
com.sun.tools.javac.model.JavacElements.nameToSymbol(JavacElements.java:262)
at
com.sun.tools.javac.model.JavacElements.doGetElement(JavacElements.java:184)
at
com.sun.tools.javac.model.JavacElements.doGetTypeElement(JavacElements.java:172)
at
com.sun.tools.javac.model.JavacElements.getTypeElement(JavacElements.java:167)
at
com.sun.tools.javac.model.JavacElements.getTypeElement(JavacElements.java:85)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.JavaPersistenceGenerator$Generator$EntityClassGenerator.generateRelationship(JavaPersistenceGenerator.java:1438)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.JavaPersistenceGenerator$Generator$ClassGenerator.run(JavaPersistenceGenerator.java:866)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.JavaPersistenceGenerator$Generator$2.run(JavaPersistenceGenerator.java:577)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.JavaPersistenceGenerator$Generator$2.run(JavaPersistenceGenerator.java:571)
at org.netbeans.api.java.source.JavaSource$1.run(JavaSource.java:673)
at org.netbeans.api.java.source.JavaSource$1.run(JavaSource.java:663)
at
org.netbeans.api.java.source.JavaSource$MultiTask.run(JavaSource.java:502)
at
org.netbeans.modules.parsing.impl.TaskProcessor.callUserTask(TaskProcessor.java:586)
at
org.netbeans.modules.parsing.api.ParserManager$UserTaskAction.run(ParserManager.java:130)
at
org.netbeans.modules.parsing.api.ParserManager$UserTaskAction.run(ParserManager.java:114)
at
org.netbeans.modules.parsing.impl.TaskProcessor$2.call(TaskProcessor.java:181)
at
org.netbeans.modules.parsing.impl.TaskProcessor$2.call(TaskProcessor.java:178)
at
org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:153)
at
org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:335)
at
org.netbeans.modules.parsing.nb.DataObjectEnvFactory.runPriorityIO(DataObjectEnvFactory.java:118)
at
org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:67)
at
org.netbeans.modules.parsing.impl.TaskProcessor.runUserTask(TaskProcessor.java:178)
at
org.netbeans.modules.parsing.api.ParserManager.parse(ParserManager.java:81)
at
org.netbeans.api.java.source.JavaSource.runUserActionTaskImpl(JavaSource.java:452)
at
org.netbeans.api.java.source.JavaSource.runUserActionTask(JavaSource.java:423)
at
org.netbeans.api.java.source.JavaSource.runModificationTask(JavaSource.java:684)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.JavaPersistenceGenerator$Generator.runImpl(JavaPersistenceGenerator.java:571)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.JavaPersistenceGenerator$Generator.run(JavaPersistenceGenerator.java:379)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.JavaPersistenceGenerator.generateBeans(JavaPersistenceGenerator.java:206)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.JavaPersistenceGenerator.generateBeans(JavaPersistenceGenerator.java:149)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.RelatedCMPWizard.createBeans(RelatedCMPWizard.java:391)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.RelatedCMPWizard.access$000(RelatedCMPWizard.java:63)
at
org.netbeans.modules.j2ee.persistence.wizard.fromdb.RelatedCMPWizard$1.run(RelatedCMPWizard.java:248)
at
org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
at
org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
[catch] at
org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)
{noformat}
> Generating entities from (mysql) database while adding all tables does not
> work
> -------------------------------------------------------------------------------
>
> Key: NETBEANS-5397
> URL: https://issues.apache.org/jira/browse/NETBEANS-5397
> Project: NetBeans
> Issue Type: Bug
> Components: javaee - Persistence
> Affects Versions: 12.2
> Environment: !image-2021-03-02-11-40-58-636.png!
> Reporter: Peter Hendriks
> Priority: Blocker
> Attachments: NBEntityCreationTest.zip, Screenshot 2021-03-02 at
> 11.39.14.png, image-2021-03-02-11-40-58-636.png
>
>
> At this moment, when adding entities from a db with the wizard and selecting
> all tables. Entities will result in plain classes without even getters or
> setters.
>
> The ide throws a persistence error.
>
> when adding the entities table for table at a time it works, np
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists