myfaces-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <Manuel.Gamerdin...@t-systems.com>
Subject AW: @BeanValidation annotation at class level
Date Fri, 19 Oct 2012 14:13:17 GMT
Hi Gerhard,

no, we're using the standard WebSphere 8.0 stack which uses OpenWebBeans 1.1.0. 
Anyways can you give me more information about the ProxyHelper?

Regards,
Manuel


-----Ursprüngliche Nachricht-----
Von: Gerhard Petracek [mailto:gerhard.petracek@gmail.com] 
Gesendet: Freitag, 19. Oktober 2012 16:01
An: MyFaces Discussion
Betreff: Re: @BeanValidation annotation at class level

hi manuel,

i guess - you are using weld...
you can register a custom ProxyHelper to get rid of the issue.

regards,
gerhard

http://www.irian.at

Your JSF/JavaEE powerhouse -
JavaEE Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces



2012/10/19 <Manuel.Gamerdinger@t-systems.com>

> Hi Gerhard,
>
> I created an issue. My further analysis showed that this is a bug and 
> not an improvement. The byte code proxy is correct. The 
> @BeanValidation annotation is not marked as @Inherited and therefore 
> not populated to its subclasses. But the proxy is a subclass.
> So for me there are 2 possibilities to correct:
> 1) Make the Annotation inherited. But I think that would validate 
> ExtVal's concept of additive groups within a class hierarchy.
> 2) The suggested solution from my mail before.
>
> It would be great if we could get a patch soon!
> Thanx,
> Manuel
>
>
>
> -----Ursprüngliche Nachricht-----
> Von: Gerhard Petracek [mailto:gerhard.petracek@gmail.com]
> Gesendet: Freitag, 19. Oktober 2012 13:19
> An: MyFaces Discussion
> Betreff: Re: @BeanValidation annotation at class level
>
> hi manuel,
>
> thx for providing the details.
> please file a jira ticket (improvement) for it at [1].
>
> regards,
> gerhard
>
> [1] https://issues.apache.org/jira/browse/EXTVAL
>
> http://www.irian.at
>
> Your JSF/JavaEE powerhouse -
> JavaEE Consulting, Development and
> Courses in English and German
>
> Professional Support for Apache MyFaces
>
>
>
> 2012/10/19 <Manuel.Gamerdinger@t-systems.com>
>
> > Update: It works when I use the @RequestScoped Annotation from 
> > javax.faces.bean instead of javax.enterprise.context. In that case 
> > there is no byte code proxy returned (objectToInspect.getClass()).
> > But anyways I expect that it should also run with the CDI scopes.
> >
> > Manuel Gamerdinger
> >
> > T-Systems GEI GmbH
> > Systems Integration
> > Industry Application Solutions
> > Project Center Industry Applications Manuel Gamerdinger Software 
> > Architect Fasanenweg 5, 70771 Leinfelden-Echterdingen
> > +49 711 999-8704 (Tel.)
> > +49 160 8224185 (Mobil)
> > E-Mail: manuel.gamerdinger@t-systems.com
> > Internet: http://www.t-systems.de
> >
> > T-Systems GEI GmbH
> > Supervisory Board: Dr. Ferri Abolhassan (Chairman) Board of
> > Management: Hans-Jörg Glaß (Chairman), Jan Krellner Commercial
> > register: Amtsgericht Aachen HRB 7106 Registered office: Aachen Int.
> > VAT No. DE 811 137 130
> >
> > Notice: This transmittal and/or attachments may be privileged or 
> > confidential. It is intended solely for the addressee named above. 
> > Any review, dissemination, or copying is strictly prohibited. If you 
> > received this transmittal in error, please notify us immediately by 
> > reply and immediately delete this message and all its attachments. 
> > Thank
> you.
> >
> > Big changes start small - conserve resources by not printing every
> e-mail.
> >
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Gamerdinger, Manuel
> > Gesendet: Freitag, 19. Oktober 2012 12:38
> > An: users@myfaces.apache.org
> > Betreff: AW: @BeanValidation annotation at class level
> >
> > Hi Gerhard,
> >
> > thanx for quick response. I tracked down the problem that the 
> > Annotation
> > (@BeanValidation) is not available on objectToInspect.getClass() in
> >
> ExtValBeanValidationMetaDataInternals#transferGroupValidationInformationToFoundGroups.
> >
> > objectToInspect.getClass() returns a bytecode enhanced proxy class
> > (...Dlg_$$_javassist_85) where I can see only the @RequestScoped 
> > Annotation from CDI. Besides @BeanValidation also the @Named 
> > Annotation from CDI is missing.
> > I don't know if this behavior of a byte code proxy is correct!? I 
> > would expect that at least Annotations from Retention CLASS and 
> > RUNTIME are also available on the proxies.
> >
> > I also wonder a little why
> > ExtValBeanValidationMetaDataInternals#processClass does not use the 
> > classToInspect (Unproxied Class) to gather the Annotations. If this 
> > method would pass classToInspect instead of objectToInspect to the 
> > #transferGroupValidationInformationToFoundGroups everything should 
> > be
> fine.
> >
> > Any help with this issue is appreciated!
> > Regards,
> > Manuel
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Gerhard Petracek [mailto:gerhard.petracek@gmail.com]
> > Gesendet: Donnerstag, 18. Oktober 2012 21:49
> > An: MyFaces Discussion
> > Betreff: Re: @BeanValidation annotation at class level
> >
> > hi manuel,
> >
> > you can check it in ExtValBeanValidationMetaDataInternals#
> > extractExtValBeanValidationMetaData
> > (see #inspectFirstBean (= class level), #inspectFirstProperty, 
> > #inspectBaseOfProperty (= class level) and #inspectLastProperty)
> >
> > regards,
> > gerhard
> >
> > http://www.irian.at
> >
> > Your JSF/JavaEE powerhouse -
> > JavaEE Consulting, Development and
> > Courses in English and German
> >
> > Professional Support for Apache MyFaces
> >
> >
> >
> > 2012/10/18 <Manuel.Gamerdinger@t-systems.com>
> >
> > > Hello MyFaces ExtVal users,
> > >
> > > I've a question regarding group validation together with 
> > > @BeanValidation annotation. In my example the @BeanValidation 
> > > annotation only works on page bean fields. On class level it seems 
> > > that
> > the annotation is ignored.
> > >
> > > This works:
> > > @BeanValidation(useGroups=IUiGroupStage2.class)
> > >     private String wmc;
> > >
> > > This doesn't work:
> > > @BeanValidation(useGroups=IUiGroupStage2.class)
> > > public class HomeDlg implements Serializable {
> > >
> > > The following documentation states that it should be possible to 
> > > declare the annotation at class level:
> > > http://wiki.apache.org/myfaces/Extensions/Validator/DevDoc
> > > But now how can I make it run? Is there some configuration to be done?
> > >
> > > Thanx in advance!
> > > Manuel
> > >
> > >
> >
>

Mime
View raw message