[seam-dev] Excel support

Dan Allen dan.j.allen at gmail.com
Wed Apr 16 11:17:57 EDT 2008


This is exactly the type of proposal I was envisioning. I second Pete
with regards to the CDK. It significantly reduces the pain of
developing JSF components and encourages the source code to be well
organized.

In my mind, this would be a huge feature for Seam...arguably more so
than any other tag-oriented feature we have so far. We definitely want
a lot of sensible defaults to comply with Seam's goal to reduce
typing. While some people want to tweak every cell, others just want
to spit out the data and mess with it in Excel (and get paid sooner).

Do we have a JIRA issue for this project? If not, we need one.

-Dan

On Wed, Apr 16, 2008 at 10:18 AM, Pete Muir <pete.muir at jboss.org> wrote:
> Sounds good.
>
>  You might want to investigate using the RF CDK to quickly build the
> necessary descriptors and getter code - the mail/pdf isn't build like this
> just because it predates the use of the CDK.
>
>
>
>  On 16 Apr 2008, at 11:38, Nicklas Karlsson wrote:
>
> > Yep,
> >
> >  As Daniel mention, there has been some brainstorming around the
> project...
> >
> >  We were also thinking along the lines of the PDF support where there
> > are custom tags that
> > expose functionality of an underlying library and then the final
> > byte[] is hung in a DocumentStore etc.
> >
> > I have good experiences with http://jexcelapi.sourceforge.net/ and it
> > is the most feature-complete and performant (more so than POI)
> > library that I'm aware of.
> >
> > The basic usage could look like
> >
> > <e:workbook value="#{personlist}" var="person">
> >        <e:column>
> >                <e:cell value="#{person.name}"/>
> >        </e:column>
> > </e:workbook>
> >
> > Where we could go with library default values, working like a
> > dataTable (UIData? Daniel is the tag-person here ;-))
> >
> > More complex, optional cases could then look like
> >
> > <e:workbook
> >        protected="true"
> >        <e:workbookSettings
> >                arrayGrowSize="1000"
> >                autoFilterDisabled="true"
> >                cellValidationDisabled="true"
> >                characterSet="1"
> >                drawingsDisabled="true"
> >                encoding="utf-8"
> >                excelDisplayLanguage="fi"
> >                excelRegionalSettings="fi"
> >                formulaAdjust="true"
> >                GCDisabled="true"
> >                ignoreBlanks="false"
> >                intialFileSize="100000"
> >                locale="fi_fi"
> >                mergedCellChecking="false"
> >                namesDisabled="true"
> >                propertySets="false"
> >                rationalization="false"
> >                supressWarnings="true"
> >                temporaryFileDuringWriteDirectory="c:\\temp"
> >                useTemporaryFileDuringWrite="true"/>
> >        <e:sheetSettings
> >                paperSize="a4"
> >                orientation="landscape"
> >                sheetName="data"/>
> >        <e:column width="30">
> >                <f:facet name="header">
> >                        <e:cell/>
> >                </f:facet>
> >                <e:cell
> >                        value="#{person.age}"
> >                        type="number"
> >                        formatMask="#00"
> >                        alignment="left"
> >                        verticalAlignment="bottom"
> >                        orientation="vertical"
> >                        indentation="5"
> >                        shrinkToFit="true"
> >                        wrap="true"
> >                        locked="true"
> >                        comment="No comment">
> >                        <e:background
> >                                color="black"
> >                                pattern="grey_25"/>
> >                        <e:border
> >                                type="bottom"
> >                                lineStyle="dotted"
> >                                color="brown"/>
> >                        <e:cellFeatures>
> >                        </e:cellFeatures>
> >                        <e:font
> >                                name="Times New Roman"
> >                                pointSize="12"
> >                                bold="true"
> >                                italic="true"
> >                                color="red"
> >                                struckout="false"
> >                                underlineStyle="single"
> >                                scriptStyle="superscript"/>
> >                </e:cell>
> >        </e:column>
> > </e:workbook>
> >
> > Exposing pretty much everyting JExcelAPI has to offer. Cell definition
> > would also be cascading so you can modify it on workbook-level
> > and then override some attributes for specific columns.
> >
> > Feedback is welcome!
> >
> > Nik
> > _______________________________________________
> > seam-dev mailing list
> > seam-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/seam-dev
> >
>
>  --
>  Pete Muir
>  http://www.seamframework.org
>  http://in.relation.to/Bloggers/Pete
>
>
>
>
>
>
>  _______________________________________________
>  seam-dev mailing list
>  seam-dev at lists.jboss.org
>  https://lists.jboss.org/mailman/listinfo/seam-dev
>



-- 
Dan Allen
Software consultant | Author of Seam in Action

http://www.mojavelinux.com
http://manning.com/dallen

NOTE: While I make a strong effort to keep up with my email on a daily
basis, life and work come first and, at times, keep me away from my mail
for a while. If you contact me, then don't hear back for more than a week,
it is very likely that I am excessively backlogged or the message was
caught in the spam filters. Please don't hesitate to resend a message if
you feel that it did not reach my attention.



More information about the seam-dev mailing list