FWIW, the ADF af:outputText component has a "truncateAt"
attribute.

-- Adam


On 4/6/06, Gary VanMatre <[EMAIL PROTECTED]> wrote:
>
> >From: "Lindholm, Greg" <[EMAIL PROTECTED]>
>
> >
> > Is there a way to truncate outputText and specify the size
> > you want from a jsp page?
> >
> > I have an object with a long description property.
> > When it's listed in a dataTable I want to truncate the
> > description column to X characters.
> > Where X can be specified for that column.
> >
> > I know I can add a getTruncatedDescription() method to the
> > object but I think a more general facility would be
> > really useful.
> >
> > Does anybody have a way or doing this with current tags?
> >
> > Is this something that could be done with a converter?
> >
> > Is this something that could be added to ?
> >
>
> Sure.  How about something like this:
>
> JSP:
>   <h:dataTable value="#{mybean.data}" var="e">
>   <h:column>
>     <h:outputText binding="#{mybean.output}" value="#{e.chapter}"/>
>   </h:column>
>  </h:dataTable>
>
> Custom Converter:
> public class TrunkConverter implements Converter {
>     private int maximumSize = -1;
>
>     public int getMaximumSize() {
>         return maximumSize;
>     }
>
>     public void setMaximumSize(int maximumSize) {
>         this.maximumSize = maximumSize;
>     }
>
>     public Object getAsObject(FacesContext context, UIComponent component,
> String value) throws ConverterException {
>         return value;
>     }
>     public String getAsString(FacesContext context, UIComponent component,
> Object value) throws ConverterException {
>         StringBuffer buff = new StringBuffer();
>         buff.append(value);
>         buff.setLength(maximumSize);
>
>         return buff.toString();
>     }
>
> }
>
> Backing Bean:
>     private HtmlOutputText output = null;
>     public HtmlOutputText getOutput() {
>         if (output == null) {
>             output = new HtmlOutputText();
>             FacesContext context = FacesContext.getCurrentInstance();
>             context.getApplication().addConverter("com.acme.TrunkConverter",
> "com.acme.TrunkConverter");
>             TrunkConverter converter = (TrunkConverter)
> context.getApplication().createConverter("com.acme.TrunkConverter");
>             converter.setMaximumSize(5);
>             output.setConverter(converter); &n bsp;
>         }
>
>         return output;
>     }
>     public void setOutput(HtmlOutputText output) {
>        this.output = output;
>     }
>
>
>
> >
>
>
> Gary

Reply via email to