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 Bi nding [was: Announcement]
Date Tue, 12 Mar 2002 15:02:01 GMT
> 
> Konstantin,
> 
> did you have time to look at the FormBeanBinder code I've 
> submitted? Does it satisfy the Form symmety requirement 
> you've placed on the list shortly after the Castor 
> transformer become available?

Unfortunately I am currently too busy with document reading/reviewing at my
work and hadn't time to look at it. I hope that it goes in the right
direction.

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 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
;) ).
(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


Mime
View raw message