Thanks, this is an auto-generated class and we should change the
generator. As you might have notice we should change every method.
Someone knows where has been put the autogeneration stuff after the
reorg? Should we change the generator to write toString() instead of
the cast? IMO we should do it,

Regards,

Bruno

2005/7/26, Richard Wallace <[EMAIL PROTECTED]>:
> The file is in api/trunk, and here's the svn diff.
> 
> Index: src/java/javax/faces/component/html/HtmlGraphicImage.java
> ===================================================================
> --- src/java/javax/faces/component/html/HtmlGraphicImage.java
> (revision 225332)
> +++ src/java/javax/faces/component/html/HtmlGraphicImage.java   (working
> copy)
> @@ -92,7 +92,7 @@
>      {
>          if (_height != null) return _height;
>          ValueBinding vb = getValueBinding("height");
> -        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
> +        return vb != null ? vb.getValue(getFacesContext()).toString() :
> null;
>      }
> 
>      public void setIsmap(boolean ismap)
> 
> Thanks.
> 
> Bruno Aranda wrote:
> 
> >You are right with that Richard, if is better to do .toString() than
> >the cast to String. Can you submit a patch or tell me Class/line so I
> >can fix this?
> >
> >Regards,
> >
> >Bruno
> >
> >2005/7/26, Richard Wallace <[EMAIL PROTECTED]>:
> >
> >
> >>Here's a related question.  The line that is causing me my problems is:
> >>
> >>        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
> >>
> >>Isn't it better to do vb.getValue(getFacesContext()).toString() for
> >>performance reasons anyways?  I mean, if it is a String object it will
> >>just do a "return this;" which should be cheaper than a cast from an
> >>Object to a String.  It also causes the value to be coerced into a
> >>String.  Unless this is strictly forbidden by the standard, it can't see
> >>a reason not to implement it this way.
> >>
> >>Thanks,
> >>Rich
> >>
> >>Richard Wallace wrote:
> >>
> >>
> >>
> >>>Klug, Boris wrote:
> >>>
> >>>
> >>>
> >>>>Hi!
> >>>>
> >>>>the problem may be that a your calculation returns an int but the el
> >>>>statement
> >>>>has to return an String. So do the calculation in your managed bean
> >>>>and return
> >>>>the result as a String.
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>Thanks for the reply.  I had expected that the value would be coerced
> >>>into the proper type tho, as in other EL statements.  Is this a bug or
> >>>the right thing?  If this implementation is correct, is there anyway
> >>>to convert the calculation to a string?  I really don't like the idea
> >>>of having to do the calculation in the backing bean cause then my page
> >>>designers can't easily vary the size of the image.  I could put it in
> >>>the faces-config.xml, but that would still require them to restart
> >>>their tomcat instance just to make a change to the page layout/display.
> >>>
> >>>Right now I've got a workaround.  It's rather messy but it works.  I
> >>>basically use the plain old <img> tag and do a couple of
> >>><h:outputText> in the attributes to make sure the image path contains
> >>>the contextPath and then one to  perform and output the calculation in
> >>>the height attribute.  Like I said, it's rather messy, but it works
> >>>and allows the page designers to make better control over the page
> >>>layout and display.
> >>>
> >>>Rich
> >>>
> >>>
> >>>
> >>>>--
> >>>>Boris Klug
> >>>>
> >>>>
> >>>>Zitat von Richard Wallace <[EMAIL PROTECTED]>:
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>Hello everyone,
> >>>>>
> >>>>>I'm working on a report that has a bar chart.  I thought the easiest
> >>>>>way
> >>>>>to display it would be to use something like:
> >>>>>
> >>>>><h:graphicImage url="/images/visual_bar_1.gif" width="46"
> >>>>>height="#{reportHandler.score * 18}" border="0" />
> >>>>>
> >>>>>But that horks with:
> >>>>>
> >>>>>java.lang.ClassCastException
> >>>>>       at
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>javax.faces.component.html.HtmlGraphicImage.getHeight(HtmlGraphicImage.java:95)
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>       at sun.reflect.GeneratedMethodAccessor110.invoke(Unknown Source)
> >>>>>       at
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>       at java.lang.reflect.Method.invoke(Method.java:324)
> >>>>>       at
> >>>>>javax.faces.component._ComponentAttributesMap.getComponentProperty(_C
> >>>>>
> >>>>>Can I not set the height to some calculated value?
> >>>>>
> >>>>>Thanks,
> >>>>>Rich
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>
> >>
> 
>

Reply via email to