drilling a bit further down the code i come to believe, that there is a bug in com.atlassian.crowd.plugin.descriptors.webwork.PluginAwareActionConfig.build:
public static PluginAwareActionConfig build(String methodName, String className, Map<String, String> parameters,
Map<String, ResultConfig> results, List<InterceptorMapping> interceptors,
List<? extends ExceptionMappingConfig> exceptionMappings, String packageName, List<String> allowedMethods) {
ActionConfig base = new ActionConfig.Builder(packageName, null, className)
.methodName(methodName)
.addParams(parameters)
.addResultConfigs(results)
.addInterceptors(interceptors)
.addExceptionMappings(exceptionMappings)
.addAllowedMethod(allowedMethods)
.build();
return new PluginAwareActionConfig(base);
}
the line
ActionConfig base = new ActionConfig.Builder(packageName, null, className)
sets the (action-)name to null and ignores the name configured in the atlassian-plugin.xml. thatswhy every action in the same package gets the same key in com.atlassian.crowd.plugin.descriptors.webwork.PluginAwareConfigurationDecorator.