--- Alex Romayev <[EMAIL PROTECTED]> wrote:
> > > > > Is there a way of making request parameters
> > > > available to CForms?
> > > > > 
> > > > Adding the above configuration should actually
> > do the trick. Hmm.
> > > > Just to make sure: Does Cocoon receive the
> form
> > values at 
> > > all (which 
> > > > means is the form running standalone)?
> > > 
> > > The the form outside of portal works fine.
> > > 
> > > Where did you
> > > > add the above
> > > > configuration to?
> > > 
> > > I've added the configuration to copletdata xml:
> > > 
> > > <SNIP/>
> > 
> > Looks good to me. Hmm.
> > 
> > Ok, the only hint I can give you at the moment is
> to
> > try
> > to debug the coplet adapter and see if it really
> > invokes
> > the coplet with the correct parameters or not.
> 
> OK, here is what I found, in the following line:
> 
> Boolean handlePars = (Boolean)this.getConfiguration(
> coplet, "handleParameters");
> 
> handlePars results in null, which is why nothing
> inside:
> 
> if ( handlePars != null && handlePars.booleanValue()
> )
> 
> 
> gets executed.

Sorry, I don't know why it was giving me null, I tried
it again, and it's not.  I did some more testing and
this is what I found:

String sourceUri = uri;

1. The uri here never has any request parameters, i.e.
it's always
"cocoon:raw:/coplets/registration/login-cforms"

if ( handlePars != null && handlePars.booleanValue() )
{


    List list = (List)
portalService.getTemporaryAttribute(URICopletAdapter.class.getName());

2. The list here is always null, which gets us into
the else clause

    if ( list != null && list.contains( coplet )) {
        // add parameters
        if ( uri.startsWith("cocoon:raw:") ) {
            sourceUri = "cocoon:" + uri.substring(11);
        }
    } else {

        // remove parameters
        if (!uri.startsWith("cocoon:raw:") ) {
            sourceUri = "cocoon:raw:" + uri.substring(7);
        }
    }
}

HTH,

-Alex



Reply via email to