cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Piroumian, Konstantin" <KPiroum...@flagship.ru>
Subject Re: [Request for Feedback] re: HTML Form <-> XML <-> JavaBeans Binding [was: Announcement]
Date Wed, 13 Mar 2002 10:36:07 GMT
----- Original Message -----
From: "Ivelin Ivanov" <ivelin@iname.com>
To: <cocoon-dev@xml.apache.org>
Sent: Wednesday, March 13, 2002 6:11 AM
Subject: Re: [Request for Feedback] re: HTML Form <-> XML <-> JavaBeans
Binding [was: Announcement]


>
> ----- Original Message -----
> From: "Piroumian, Konstantin" <KPiroumian@flagship.ru>
> > To get more feedback on it it'll be fine if you could create a simple
> webapp
> > sample and add it to C2 with a brief description/documentation. IMO,
> > generally, people is too lazy to install it and try if they are not
> > interested or don't know what is it for.
>
> I can create a .war. How do I add it to C2?
> Do you mean I should distribute a .war instead of the current .zip and
thus
> make the deployment easier?

Oh, no. I mentioned webapp not in its WAR meaning. A sample with 1 or 2
pages would be quite enough: a page with a form (displaying errors on
submit) and a success page displaying the submutted data using the JavaBean.

> I've read the Contributions section on the web site and followed the
> instructions.
> Submitted a [patch] through Bugzilla and announced it on the list.

Quite enough.

>
> I'm also expecting some feedback from the folks who worked on ExFormula
and
> Chiba integration with Cocoon.
>
> > > I got feedback from Sam and Michael that the proposed
> > > implementation is not bad start and is worth extending, but I
> > > need more people from the core team to look at it, before I
> > > can continue with more advanced features.
> >
> > Hope, I'll have time to look at it a little later (maybe on the next
> release
> > ;) ).
>
>
> I guess I'll just move on with a complete wizard sample based on
FormBinder
> and Schematron that will cover navigating and error handling issues.

That would be fine!

Regards,
    Konstantin

>
>
> Cheers,
>
> Ivelin
>
>
> > (Btw, I am not from the core team)
> >
> > Regards,
> > Konstantin
> >
> > >
> > > Thanks,
> > >
> > > Ivelin
> > >
> > > ----- Original Message -----
> > > From: "Ivelin Ivanov" <ivelin@iname.com>
> > > To: <cocoon-dev@xml.apache.org>
> > > Cc: "Dmitri Plotnikov" <dmitri@plotnix.com>
> > > Sent: Sunday, March 10, 2002 6:47 AM
> > > Subject: Re: Comitting components
> > >
> > >
> > > > Folks,
> > > >
> > > > I think we might have made one small step towards HTML Form
> > > symmetry
> > > > in Cocoon. The approach I have taken after long discussions
> > > and even
> > > > longer hours before my monitor is enhancing the Cocoon
> > > Action concept
> > > > so that it is coherent with the rest of the framework.
> > > >
> > > > Thanks to the people who built JXPath  and  Castor (and
> > > CastorTransformer),
> > > > I think we now have a way to elegantly map content to
> > > business logic.
> > > (HTML
> > > > Forms <-> XML/XPath <-> JavaBeans)
> > > >
> > > > The idea has been in circulation for a long time: unmarshal
> > > JavaBeans
> > > > from the buziness layer to XML, so that they can be part of the
> > > > content model
> > > and
> > > > then use XPath expressions for HTML Form elements so that
> > > on POST the
> > > > same JavaBean can be updated and sent back to the business logic.
> > > >
> > > > You can download a scratchpad formatted bundle here:
> > > > http://prdownloads.sourceforge.net/freebuilder/CocoonForm.zip
> > > > I've only used Apache licensed files this time ;)
> > > > The examples are based on the CastorTransformer examples, so they
> > > > should
> > > be
> > > > easy to comprehend.
> > > >
> > > > The code is very simple. I've tried not to touch more advanced
> > > > problems
> > > like
> > > > error handling and reporting, unusual custom mapping and multi page
> > > wizards.
> > > > Thought I should first present to the rest of the group a simple
> > > > prototype for feasibility test .
> > > >
> > > >
> > > > Below I will show just a sample XSL file which takes an XML
> > > > presentation
> > > of
> > > > a JavaBean and renders HTML forms with the appropriate XPath
> > > > expressions.
> > > It
> > > > will hopefully sharpen your apetite enough to make you look at the
> > > > code
> > > and
> > > > participate in the
> > > > discussion:
> > > >
> > > >
> > > > ---------------------------
> > > > - <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> > > > version="1.0">
> > > >   <xsl:output method="html" omit-xml-declaration="yes" />
> > > > - <xsl:template match="/zoo">
> > > > - <html>
> > > > - <body>
> > > >   Please edit and submit:
> > > >   <br />
> > > >   <xsl:apply-templates />
> > > >   </body>
> > > >   </html>
> > > >   </xsl:template>
> > > > - <xsl:template match="animal[1]">
> > > > - <form method="post" action="test">
> > > >   <xsl:variable name="animalName" select="name" />
> > > >   Animal name:
> > > >   <input type="text" name="name" value="{$animalName}" />
> > > >   <br />
> > > >   Kind:
> > > > - <b>
> > > >   <xsl:value-of select="personalInfo/@kind" />
> > > >   </b>
> > > >   <br />
> > > >   <xsl:variable name="animalScope" select="scope" />
> > > >   Animal scope:
> > > >   <input type="text" name="scope" value="{$animalScope}" />
> > > >   <br />
> > > >   <xsl:variable name="preference1" select="preferences[1]" />
> > > >   First Preference:
> > > >   <input type="text" name="preferences[1]" value="{$preference1}" />
> > > >   <br />
> > > >   <xsl:variable name="preference2" select="preferences[2]" />
> > > >   Second Preference:
> > > >   <input type="text" name="preferences[2]" value="{$preference2}" />
> > > >   <br />
> > > >   <input type="submit" />
> > > >   </form>
> > > >   <br />
> > > >   Counter:
> > > >   <xsl:value-of select="@count" />
> > > >   </xsl:template>
> > > >   <xsl:template match="*" />
> > > >   </xsl:stylesheet>
> > > > ----------------------------------
> > > >
> > > >
> > > > Looking forward to comments.
> > > >
> > > > Cheers,
> > > >
> > > > Ivelin
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > ----- Original Message -----
> > > > From: "Ivelin Ivanov" <ivelin@iname.com>
> > > > To: "Nicola Ken Barozzi" <nicolaken@apache.org>;
> > > <cocoon-dev@xml.apache.org>
> > > > Cc: <"[dplotnik@"@iname.com
> > > > Sent: Thursday, March 07, 2002 3:57 PM
> > > > Subject: Re: Comitting components
> > > >
> > > >
> > > > >
> > > > > Way cool !
> > > > >
> > > > > We've been using castor .93 for quite serious xml traffic between
> > > hundreds
> > > > win c++ clients and a java portal. Great performance.
> > > > >
> > > > > Donating this transformer also saved me some work.
> > > > > As I mentioned before I am workin on a little prototype that'll
> > > hopefully
> > > > introduce some HTML Forms symmetry in cocoon.
> > > > >
> > > > > From an earlier email by Konstantin:
> > > > > >It would be also fine to have an action that >performs
> > > the opposite
> > > > > >operation: set properties of JavaBean object(s) with
> > > request param
> > > values
> > > > > >using XPath expressions, e.g.:
> > > > > >customer/firstname = Ozzy
> > > > > >customer/lastname = Osbourne
> > > > > >can be converted to XML:
> > > > > ><customer>
> > > > > >    <firstname>Ozzy</firstname>
> > > > > >    <lastname>Osbourne</lastname>
> > > > > ></customer>
> > > > >
> > > > > I am working on this with Dmitri's help using his JXPath lib.
> > > > > http://cvs.apache.org/viewcvs/jakarta-commons/jxpath/
> > > > >
> > > > > It's being used for Jakarta JSTL and Workflow (which says
> > > enough for
> > > > > its
> > > > quality).
> > > > >
> > > > > Let me know if someone else is working in this direction
> > > so that we
> > > don't
> > > > double the work.
> > > > >
> > > > > Regards,
> > > > >
> > > > > Ivelin
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: "Nicola Ken Barozzi" <nicolaken@apache.org>
> > > > > Date: Thu, 7 Mar 2002 18:03:30 +0100
> > > > > To:  <cocoon-dev@xml.apache.org>
> > > > > Subject: Re: Comitting components
> > > > >
> > > > >
> > > > > > From: "Matthew Langham" <mlangham@s-und-n.de>
> > > > > >
> > > > > > > today two new "things" were donated/comitted to the Cocoon
> > > > scratchpad -
> > > > > > the
> > > > > > > Castor Transformer and the POI Serialization code.
> > > > > > >
> > > > > > > It would help people like me (who do not read all the
> > > messages
> > > > > > > or
> > > much
> > > > > > worse
> > > > > > > remember them all) if comitters could add a couple of lines
or
> > > > paragraphs
> > > > > > as
> > > > > > > to what can be done with the new components when
> > > sending off the
> > > > > > > announcements.
> > > > > >
> > > > > > You are right. Thank you for the pointer.
> > > > > > Here is a brief explanation.
> > > > > >
> > > > > > ----------------------
> > > > > >  POI Serializer
> > > > > > ----------------------
> > > > > >
> > > > > > The POI project, now hosted on
> > > http://jakarta.apache.org/poi/ , is
> > > > > > a
> > > > project
> > > > > > that consists of APIs for manipulating various file
> > > formats based
> > > > > > upon Microsoft's OLE 2 Compound Document format using
> > > pure Java.
> > > > > > OLE 2
> > > > Compound
> > > > > > Document Format based files include most Microsoft Office files
> > > > > > such
> > > as
> > > > XLS
> > > > > > and DOC.
> > > > > >
> > > > > > The HSSFSerializer uses POI's HSSF xls file write API
> > > > > > http://jakarta.apache.org/poi/hssf/index.html , and is now in
> > > > > > Cocoon
> > > > proper
> > > > > > (not scratchpad).
> > > > > >
> > > > > > It makes it possible to output xml following the schema of
> > > > > > gnumeric to
> > > > an
> > > > > > xls file.
> > > > > > Examples are present in the "extra" section, under "legacy file
> > > > formats".
> > > > > >
> > > > > > To install the Cocoon war easily, do:
> > > > > >
> > > > > > build.(sh|bat) clean
> > > > > > build.(sh|bat) installwar
> > > > > >
> > > > > > ----------------------------
> > > > > >  Castor Transformer (in scratchpad)
> > > > > > ----------------------------
> > > > > >
> > > > > > Marshals a object from the the sitemap, request, session or
> > > > > > Servlet
> > > > Context
> > > > > > into a series of SAX events, and can seek for the java bean
> > > > automaticaly.
> > > > > > TheCastortransformer can be configured with a default mapping.
> > > > > > This
> > > > mapping
> > > > > > is used as long as no other mappings are specified.
> > > > > >
> > > > > >   <map:transformer name="CastorTransformer"
> > > > > >
> > > > src="org.apache.cocoontransformation.CastorTransformer">
> > > > > >     <mapping>castor/xmapping.xml</mapping>
> > > > > >   </map:transformer>
> > > > > >
> > > > > > A sample for the use:
> > > > > >    <root
> > > xmlns:castor="http://castor.exolab.org/cocoontransfomer">
> > > > > >       <castor:InsertBean source="session" key="invoice"/>
> > > > > >       <castor:InsertBean source="sitemap" key="product"
> > > > > >                mapping="castor/specicalmapping.xml"/>
> > > > > >    </root>
> > > > > >
> > > > > > The CastorTransfomer support only one Element
> > > castor:InsertBean.
> > > > > > This element is replaced with the marshalled object.
> > > > > >
> > > > > > Other information can be found in the scratchpad sample
> > > > > > sub-sitemap
> > > > under
> > > > > > docs.
> > > > > >
> > > > > > To install the Cocoon war with scratchpad stuff easily, do:
> > > > > >
> > > > > > build.(sh|bat) clean
> > > > > > build.(sh|bat) installscratchpadwar
> > > > > >
> > > > > > The demo is under http://server:port/cocoon/samples/castor/
> > > > > >
> > > > > > --
> > > > > > Nicola Ken Barozzi                   nicolaken@apache.org
> > > > > >             - verba volant, scripta manent -
> > > > > >    (discussions get forgotten, just code remains)
> > > > > >
> > > ------------------------------------------------------------------
> > > > > > ---
> > > > > >
> > > > > >
> > > > > >
> > > ------------------------------------------------------------------
> > > > > > ---
> > > > > > To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> > > > > > For additional commands, email: cocoon-dev-help@xml.apache.org
> > > > > >
> > > > > >
> > > > >
> > > > > --
> > > > >
> > > > > _______________________________________________
> > > > > Sign-up for your own FREE Personalized E-mail at Mail.com
> > > > > http://www.mail.com/?sr=signup
> > > > >
> > > > > Travelocity.com is giving away two million travel miles.
> > > > >
> > > >
> > > http://ad.doubleclick.net/clk;3969773;6991039;g?http://svc.tra
> > velocity.com/p
> > > romos/millionmiles_main/0,,TRAVELOCITY,00.html
> > > >
> > > >
> > > > --------------------------------------------------------------------
> > > > -
> > > > To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> > > > For additional commands, email: cocoon-dev-help@xml.apache.org
> > > >
> > >
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> > > For additional commands, email: cocoon-dev-help@xml.apache.org
> > >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> > For additional commands, email: cocoon-dev-help@xml.apache.org
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> > For additional commands, email: cocoon-dev-help@xml.apache.org
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> For additional commands, email: cocoon-dev-help@xml.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org


Mime
View raw message