Closed melloware closed 1 year ago
/cc @Karm (mandrel), @Sanne (hibernate-orm), @galderz (mandrel), @gsmet (hibernate-orm), @yrodiere (hibernate-orm), @zakkak (mandrel)
@mkouba do you think you could have a look? When I see _ClientProxy
, I'm thinking of you :)
@mkouba do you think you could have a look? When I see
_ClientProxy
, I'm thinking of you :)
Well, something attempt to register the generated client proxies from ArC for reflection which does not make sense.
So need to find out which extension does it and why...
@mkouba just to give you a hint this does not happen until I add Hibernate and EnvVars. It works fine if I remove those dependencies.
@mkouba just to give you a hint this does not happen until I add Hibernate and EnvVars. It works fine if I remove those dependencies.
Yes, I tried to remove the Envers extension and still get the same warnings... so it's not Envers.
I'm also wondering why would be the client proxies generated for classes like org.primefaces.showcase.domain.Customer
or org.primefaces.model.charts.donut.DonutChartModel
? These are not beans. So there must be something/extension that registers these classes as additional beans...? Let's debug the build.
They aren't beans in but in the PrimeFaces extension I register all model classes for reflection as they can be used inside JSF pages.
classNames.addAll(collectClassesInPackage(combinedIndex, "org.primefaces.model"));
They aren't beans in but in the PrimeFaces extension I register all model classes for reflection as they can be used inside JSF pages.
classNames.addAll(collectClassesInPackage(combinedIndex, "org.primefaces.model"));
I see but A) this should not result in a client proxy generation and B) what about org.primefaces.showcase.domain.Customer
?
It seems that MyFacesProcessor
does produce a ReflectiveClassBuildItem
for "public types from getters and fields" of all @Named
beans. And it automatically produces a ReflectiveClassBuildItem
for type.name().toString() + "_ClientProxy"
too. And that's not a good idea.
thanks @mkouba i am testing out removing those Clientproxy registrations.
PR submitted to MyFaces: https://github.com/apache/myfaces/pull/559
Confirmed fixed in MyFaces. Thanks @mkouba !
Describe the bug
Original User Report: https://github.com/quarkiverse/quarkus-primefaces/issues/34
I have a project that builds fine in Native Mode: https://github.com/melloware/quarkus-faces
However if we add Hibernate/JPA depdendencies:
all the sudden our native build spits out tons of warnings like this:
Which makes no sense as
org.omnifaces.cdi.GraphicImageBean
is registered properly and works without warning without JPA.Expected behavior
No warnings to Native build just by adding HIbernate
Actual behavior
A dump of warnings including classes that are
@Deleted
by our GraalVM deletes.How to Reproduce?
mvn -Pnative
to build the native and see all the warnings.Output of
uname -a
orver
Linux mellowarep16 5.15.90.1-microsoft-standard-WSL2 #1 SMP Fri Jan 27 02:56:13 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Output of
java -version
Java version: 17.0.6, vendor: Private Build, runtime: /usr/lib/jvm/java-17-openjdk-amd64
GraalVM version (if different from Java)
22.3.1.0-Final Mandrel Distribution (Java Version 17.0.6+10)
Quarkus version or git rev
3.0.0.CR1
Build tool (ie. output of
mvnw --version
orgradlew --version
)Apache Maven 3.9.1 (2e178502fcdbffc201671fb2537d0cb4b4cc58f8)
Additional information
No response