J'ai un pb pour récupérer une variable depuis une scriplet.

J'ai écrit la scriplet qui me retourne simplement une chaîne de caractères.
Le code de la scriptlet

import net.sf.jasperreports.engine.*;

public class TestScriptlet extends net.sf.jasperreports.engine.JRDefaultScriptlet {
//La valeur qui sera affichée dans le rapport
private String montantChiffreLettre = null;
/** Creates a new instance of JRIreportDefaultScriptlet */
public TestScriptlet() {
montantChiffreLettre = "test";

}

//Variable qui sera utilisée ans le rapport
public String getMontantChiffreLettre() {

return montantChiffreLettre;
}


/** Begin EVENT_AFTER_COLUMN_INIT This line is generated by iReport. Don't modify or move please! */
public void afterColumnInit() throws JRScriptletException
{
super.beforeColumnInit();
}
/** End EVENT_AFTER_COLUMN_INIT This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_AFTER_DETAIL_EVAL This line is generated by iReport. Don't modify or move please! */
public void afterDetailEval() throws JRScriptletException
{
super.afterDetailEval();
}
/** End EVENT_AFTER_DETAIL_EVAL This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_AFTER_GROUP_INIT This line is generated by iReport. Don't modify or move please! */
public void afterGroupInit(String groupName) throws JRScriptletException
{
super.afterGroupInit(groupName);
}
/** End EVENT_AFTER_GROUP_INIT This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_AFTER_PAGE_INIT This line is generated by iReport. Don't modify or move please! */
public void afterPageInit() throws JRScriptletException
{
super.afterPageInit();
montantChiffreLettre = "test";
}
/** End EVENT_AFTER_PAGE_INIT This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_AFTER_REPORT_INIT This line is generated by iReport. Don't modify or move please! */
public void afterReportInit() throws JRScriptletException
{

}
/** End EVENT_AFTER_REPORT_INIT This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_BEFORE_COLUMN_INIT This line is generated by iReport. Don't modify or move please! */
public void beforeColumnInit() throws JRScriptletException
{

}
/** End EVENT_BEFORE_COLUMN_INIT This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_BEFORE_DETAIL_EVAL This line is generated by iReport. Don't modify or move please! */
public void beforeDetailEval() throws JRScriptletException
{

}
/** end EVENT_BEFORE_DETAIL_EVAL Please don't touch or move this comment*/

/** End EVENT_BEFORE_DETAIL_EVAL This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_BEFORE_GROUP_INIT This line is generated by iReport. Don't modify or move please! */
public void beforeGroupInit(String groupName) throws JRScriptletException
{

}
/** End EVENT_BEFORE_GROUP_INIT This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_BEFORE_PAGE_INIT This line is generated by iReport. Don't modify or move please! */
public void beforePageInit() throws JRScriptletException
{

}
/** End EVENT_BEFORE_PAGE_INIT This line is generated by iReport. Don't modify or move please! */
/** Begin EVENT_BEFORE_REPORT_INIT This line is generated by iReport. Don't modify or move please! */
public void beforeReportInit() throws JRScriptletException
{

}

/** End EVENT_BEFORE_REPORT_INIT This line is generated by iReport. Don't modify or move please! */

}

Et j'essaye de la récupére dans mon rapport dans un texte field avec l'expression
$P{REPORT_SCRIPTLET}.getMontantChiffreLettre()

J'obtient l'erreur à la génération du rapport
Erreur*lors*du*remplissage*de*l’impression…*Error*evaluating*expression*:* ****Source*text*:*$P{REPORT_SCRIPTLET}.getMontantChiffreLettre()
net.sf.jasperreports.engine.fill.JRExpressionEvalException:*Error*evaluating*expression*:* ****Source*text*:*$P{REPORT_SCRIPTLET}.getMontantChiffreLettre()* ****at*net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:197)* ****at*net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:537)* ****at*net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:505)* ****at*net.sf.jasperreports.engine.fill.JRFillElement.evaluateExpression(JRFillElement.java:826)* ****at*net.sf.jasperreports.engine.fill.JRFillTextField.evaluateText(JRFillTextField.java:368)* ****at*net.sf.jasperreports.engine.fill.JRFillTextField.evaluate(JRFillTextField.java:353)* ****at*net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:275)* ****at*net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:426)* ****at*net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:1380)* ****at*net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:692)* ****at*net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:255)* ****at*net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:113)* ****at*net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:879)* ****at*net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:782)* ****at*net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63)* ****at*net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:402)* ****at*net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:234)* ****at*it.businesslogic.ireport.IReportCompiler.run(IReportCompiler.java:947)* ****at*java.lang.Thread.run(Unknown*Source)* Caused*by:*java.lang.NoSuchMethodError:*TestScriptlet.getMontantChiffreLettre()Ljava/lang/String;* ****at*Test_1224275751437_275616.evaluate(Test_1224275751437_275616:167)* ****at*net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:186)* ****...*18*more*

Merci si quelqu'un voit le pb