I believe this was fixed in Struts 1.3.8

https://issues.apache.org/struts/browse/STR-2955
http://svn.apache.org/viewvc?view=rev&revision=480593

Niall

On 5/8/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
Hi all,
We have found a possible bug in struts 1.3.5 (may be also in 1.3.8) during
the use of the validate attribute together with extends attribute. The
struts-config.xml is the following: <action
path="/anagrafiche/ins_circo_start"
        type="circhi.anagrafiche.presentation.circhi.CircoAction"
      validate="false" parameter="activecreate,default=activecreate">
<forward name="active" path="anagrafiche.circo"/>
</action>

<action path="/anagrafiche/ins_circo_end"
extends="/anagrafiche/ins_circo_start"
          name="circoForm" scope="request"
        cancellable="true" validate="true" input="anagrafiche.circo"
        parameter="create_end=create">
<exception type="business.BusinessException" key="error.businessexception"
path="anagrafiche.circo"/> <forward name="success" path="common.ok"/>
</action>

The problem is that the validate attribute is not overrided in the second
action (i.e. /anagrafiche/ins_circo_end). So the validation process is not
performed when the /anagrafiche/ins_circo_end is called. The possible bug
is in the inheritFrom method of the ActionConfig class.
In particular in the following statement:
if (getValidate()) {
        setValidate(config.getValidate());
}
the getValidate() returns the value of the validate attribute and not if
it is as been overridden or not.

IS IT CORRECT?

A possible solution can be to add an instance variabile "boolean
validateattributesetted=false" that is set to true when the setValidate
method is called and change the statement if
(getvalidateAttributeSetted()). The same problem may occur in the
cancellable attribute.


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



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

Reply via email to