Here is how I do it:


                  <j:new var="aBigDecimal1"
className="java.math.BigDecimal">
                     <j:arg type="java.lang.String"
value="${passrateTotal.toString()}"/>
                  </j:new>
                  <j:new var="aBigDecimal2"
className="java.math.BigDecimal">
                     <j:arg type="java.lang.String"
value="${nrOfProjects.toString()}"/>
                  </j:new>
                  <j:new var="aJavaLangInteger"
className="java.lang.Integer">
                     <j:arg type="java.lang.String" value="0"/>
                  </j:new>
                  <j:invoke var="anInt" on="${aJavaLangInteger}"
method="intValue"/>
                  <j:invoke var="Result" on="${aBigDecimal1}"
method="divide">
                     <j:arg value="${aBigDecimal2}"/>
                     <j:arg value="${anInt}"/>
                     <j:arg value="${anInt}"/>
                  </j:invoke>

-----Original Message-----
From: Wim Deblauwe [mailto:[EMAIL PROTECTED] 
Sent: Thursday, June 16, 2005 3:00 AM
To: Maven Users List
Subject: JEXL arithmatic strangeness


Hi,

does somebody know why division does not work in JEXL? I have the following
fragment:

<x:set var="nrOfProjects"
select="count(//[EMAIL PROTECTED]'junitpassrate'][not(text()='-')][text()])"
/>
<x:forEach var="passRate"
select="//[EMAIL PROTECTED]'junitpassrate'][not(text()='-')][text()]">
    <x:set var="passrateValue" select="number(substring-before(text(), '
%'))"/>
    <j:set var="passrateTotal" value="${passrateTotal + passrateValue}"/>
    <echo>total: ${passrateTotal}</echo>
</x:forEach>
<echo>total: ${passrateTotal}</echo>
<echo>nrOfProjects: ${nrOfProjects}</echo>
<j:set var="averagePassrate" value="${passrateTotal / nrOfProjects}"/>
<p>Average pass rate (not-weighed): </p> <echo>${averagePassrate}</echo>
<j:set var="averagePassrate2" value="${passrateTotal * nrOfProjects}"/>
<echo>${averagePassrate2}</echo>

The variable 'averagePassrate' is empty somehow. However when I change the
division ('/') by multiplification or addition or subtraction, the math is
performed correctly. Any ideas?

regards,

Wim

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to