> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On 
> Behalf Of Brian Agnew
> Sent: Friday, March 28, 2008 6:50 AM
> To: Karr, David
> Cc: xmltask-users@lists.sourceforge.net
> Subject: Re: [Xmltask-users] Add text to web-app/description 
> if it's present
> 
> 
> I would certainly expect a position="before" to do what you 
> want. I think the samples in the src download must have some 
> examples/tests around this.

I just went through all of the tests.  I don't see anything similar to
this scenario.

Realize that I'm trying to insert this element as the first child of the
"web-app" element.  Using the default of "under" results in the element
being inserted as the last child, not the first child.

The only way I can see this could work is if I somehow found the actual
current first child of "web-app" (I don't know for sure what it will
be), and then insert with position="before".  I tried using the
following, but it didn't work:

        "/*[local-name()='web-app']/child::node()[1]/."

> 
> >> On Thu, March 27, 2008 23:56, Karr, David wrote:
> >> > It's been a while since I've xmltasked.  I'm having some trouble 
> >> > getting done what I need.
> >> >
> >> > I have some text in a couple properties (I'm hardcoding the
> >> values for
> >> > now) that I want to put into the "/web-app/description"
> >> element of a
> >> > web.xml file.  If the element is already present, I want 
> to add the 
> >> > new text after " - ".  If the element wasn't present, then
> >> create the
> >> > element with the new text.
> >> >
> >> > I have two current problems:
> >> >
> >> > If the "description" element was present already, it's 
> supposed to 
> >> > insert a value referencing the property containing the
> >> existing value.
> >> > Instead of the value of the property, it just inserts 
> >> > "${existingDescription}".  I tried printing out the 
> property value 
> >> > after the xmltask tag, and it appears to be fine.
> >> >
> >> > If the "description" element was NOT present, I insert the new 
> >> > "description" element (using that weird trick just 
> talked about for 
> >> > turning off insertion of empty "xmlns" attributes), but it
> >> inserts it
> >> > as the last child of "web-app", not the first.  I don't see
> >> a way to
> >> > do this cleanly.
> >> >
> >> > I also wish there was a cleaner way to "trim" the 
> resulting output 
> >> > (see what I had to do in the first "replace").
> >> >
> >> > Here's my current code:
> >> > ---------------------
> >> > <target name="install-label-info">
> >> >         <taskdef name="xmltask"
> >> > classname="com.oopsconsultancy.xmltask.ant.XmlTask"
> >> >                  classpath="${file.reference.xmltask.jar}"/>
> >> >         <property name="label" value="abc"/>
> >> >         <property name="labelDesc" value="def"/>
> >> >         <xmltask source="${build.web.dir}/WEB-INF/web.xml"
> >> > dest="${build.web.dir}/WEB-INF/web.xml" report="true">
> >> >                  <copy
> >> >
> >> 
> path="/*[local-name()='web-app']/*[local-name()='description']/text()"
> >> > property="existingDescription"/>
> >> >             <replace if="existingDescription"
> >> >
> >> 
> path="/*[local-name()='web-app']/*[local-name()='description']/text()"
> >> >                      expandProperties="true"
> >> >                 ><![CDATA[${existingDescription} - ${label}:
> >> > ${labelDesc}]]></replace>
> >> >             <paste unless="existingDescription"
> >> > path="/*[local-name()='web-app']/.">
> >> >                 <![CDATA[<description
> >> > xmlns="http://java.sun.com/xml/ns/j2ee";>${label}:
> >> > ${labelDesc}</description>]]>
> >> >             </paste>
> >> >                  <copy
> >> >
> >> 
> path="/*[local-name()='web-app']/*[local-name()='description']/text()"
> >> > property="newDescription"/>
> >> >         </xmltask>
> >> >         <echo
> >> message="existingDescription[${existingDescription}]"/>
> >> >         <echo message="newDescription[${newDescription}]"/>
> >> >     </target>
> >> > ---------------------
> >> >
> >> >
> >> >
> >> >
> >> >
> >> 
> ---------------------------------------------------------------------
> >> -
> >> > --- Check out the new SourceForge.net Marketplace.
> >> > It's the best place to buy or sell services for just 
> about anything 
> >> > Open Source.
> >> >
> >> 
> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/mark
> >> e
> >> > tplace _______________________________________________
> >> > Xmltask-users mailing list
> >> > Xmltask-users@lists.sourceforge.net
> >> > https://lists.sourceforge.net/lists/listinfo/xmltask-users
> >> >
> >>
> >>
> >> --
> >> Brian Agnew                  http://www.oopsconsultancy.com
> >> OOPS Consultancy Ltd
> >> Tel: +44 (0)7720 397526
> >> Fax: +44 (0)20 8682 0012
> >>
> >>
> >> --------------------------------------------------------------
> >> -----------
> >> Check out the new SourceForge.net Marketplace.
> >> It's the best place to buy or sell services for just about 
> anything 
> >> Open Source.
> >> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.n
> > et/marketplace
> >> _______________________________________________
> >> Xmltask-users mailing list
> >> Xmltask-users@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/xmltask-users
> >>
> >
> > 
> ----------------------------------------------------------------------
> > --- Check out the new SourceForge.net Marketplace.
> > It's the best place to buy or sell services for just about anything 
> > Open Source.
> > 
> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marke
> > tplace _______________________________________________
> > Xmltask-users mailing list
> > Xmltask-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/xmltask-users
> >
> 
> 
> -- 
> Brian Agnew                  http://www.oopsconsultancy.com
> OOPS Consultancy Ltd
> Tel: +44 (0)7720 397526
> Fax: +44 (0)20 8682 0012
> 
> 
> --------------------------------------------------------------
> -----------
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services for just about 
> anything Open Source.
> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.n
et/marketplace
> _______________________________________________
> Xmltask-users mailing list
> Xmltask-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/xmltask-users
> 

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Xmltask-users mailing list
Xmltask-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xmltask-users

Reply via email to