Hi makkus, I have opened an jira issue for further investigation: https://jira.apache.org/jira/browse/TOMEE-2709
Could you upload the source code, you used for creating the WAR archive there? It could be beneficial, if we are going into debugging this issue. In addition, I can confirm, that this happens on M3 and Final. Best, Richard ----------- Thanks for this, Marcus! I've asked the development community to look into it. Please be patient as it can take a while to figure these things out. On Mon, Oct 14, 2019 at 5:14 AM makkus <[hidden email]> wrote: > Hi Folks, > > in TomEE 8.0.0 there seems to be something wrong with the Principal > injection: The follwoing code works fine in M2: > > package leaktest; > > import java.security.Principal; > import javax.enterprise.context.RequestScoped; > import javax.inject.Inject; > import javax.inject.Named; > > @Named > @RequestScoped > public class PrincipalTest { > > @Inject > private Principal principal; > > public String userName(){ > return principal.getName(); > } > } > > Inside a JSF page I can use "User Name: #{principalTest.userName()}" to > display the user name. (See attached leak2.war > <http://tomee-openejb.979440.n4.nabble.com/file/t376354/leak2.war> or > https://1drv.ms/u/s!AlHB9FAlFWW_iLJlTcyBEqApE_UAvQ?e=HODheK for example. ) > > > In 8.0.0. this is code will produce an IllegalArgumentException: > > java.lang.IllegalArgumentException: object is not an instance of declaring > class > > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > > > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > java.base/java.lang.reflect.Method.invoke(Method.java:566) > > > org.apache.openejb.cdi.ManagedSecurityService$PrincipalInvocationHandler.invoke(ManagedSecurityService.java:183) > com.sun.proxy.$Proxy72.getName(Unknown Source) > leaktest.PrincipalTest.userName(PrincipalTest.java:25) > > > leaktest.PrincipalTest$$OwbNormalScopeProxy0.userName(leaktest/PrincipalTest.java) > > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > > > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > java.base/java.lang.reflect.Method.invoke(Method.java:566) > javax.el.BeanELResolver.invoke(BeanELResolver.java:158) > ... > > > Doese someone kow if this code is unsupported in 8.0.0 ? How can I get a > reference to the principal name in 8.0.0. > > Best Regards, > Marcus > > > > > -- > Sent from: > http://tomee-openejb.979440.n4.nabble.com/TomEE-Users-f979441.html >-- Richard Zowalla, M.Sc.Research Associate, PhD Student | Medical Informatics Hochschule Heilbronn – University of Applied SciencesMax-Planck-Str. 39 D-74081 Heilbronn phone: +49 7131 504 6791mail: richard.zowalla@hs-heilbronn.deweb: http://www.mi.hs-heilbronn.de/
smime.p7s
Description: S/MIME cryptographic signature