Christopher Oliver dijo:
> You're right. CallFunctionNode needed modification. Originally, I forgot
> to check in that change. What do you mean by "it does not work with the
> authentication-fw"?.
It is related to the authentication-fw flow. The sitemap goes to this
internal pipeline that is a flow function:
<map:match pattern="do-login">
<!-- try to begin a session -->
<map:call function="login">
<map:parameter name="handler" value="authhandler"/>
<map:parameter name="parameter_name" value="{request-param:username}"/>
<map:parameter name="parameter_password"
value="{request-param:passwd}"/>
<map:parameter name="protected-redirect"
value="{request-param:resource}"/>
<map:parameter name="failure-redirect"
value="entrada?resource={request-param:resource}"/>
</map:call>
</map:match>
The flow function is:
function login() {
var handler = cocoon.parameters["handler"];
if (auth_isAuthenticated(handler))
auth_success();
else if (auth_login(handler, null, cocoon.parameters))
auth_success();
else
auth_failure();
}
The problem looks to be related to this line (cca. 187):
doc = SourceUtil.toDOM(source);
in the PipelineAuthenticator.java
The error is:
DEBUG (2004-01-18) 04:21.32:349 [core.authentication-manager]
(/ait/do-login) http8080-Processor4/PipelineAuthenticator: authenticator:
source.getURI()=cocoon:///autentificar?password=user&name=user
ERROR (2004-01-18) 04:21.32:349 [core.authentication-manager]
(/ait/do-login) http8080-Processor4/PipelineAuthenticator: authenticator:
Attempted to process incomplete pipeline.
org.apache.cocoon.ProcessingException: Attempted to process incomplete
pipeline.
at
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.preparePipeline(AbstractProcessingPipeline.java:511)
at
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.prepareInternal(AbstractProcessingPipeline.java:529)
at
org.apache.cocoon.components.source.impl.SitemapSource.init(SitemapSource.java:392)
at
org.apache.cocoon.components.source.impl.SitemapSource.<init>(SitemapSource.java:256)
at
org.apache.cocoon.components.source.impl.SitemapSourceFactory.getSource(SitemapSourceFactory.java:99)
at
org.apache.excalibur.source.impl.SourceResolverImpl.resolveURI(SourceResolverImpl.java:247)
at
org.apache.cocoon.components.CocoonComponentManager.resolveURI(CocoonComponentManager.java:520)
at
org.apache.cocoon.components.source.SourceUtil.getSource(SourceUtil.java:500)
at
org.apache.cocoon.webapps.authentication.components.PipelineAuthenticator.authenticate(PipelineAuthenticator.java:179)
at
org.apache.cocoon.webapps.authentication.components.DefaultAuthenticationManager.login(DefaultAuthenticationManager.java:247)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
....
Best Regards,
Antonio Gallardo