<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Just reproduced this manually in latest
Keycloak and created JIRA
<a class="moz-txt-link-freetext" href="https://issues.jboss.org/browse/KEYCLOAK-2842">https://issues.jboss.org/browse/KEYCLOAK-2842</a> <br>
<br>
Thanks!<br>
Marek<br>
<br>
On 18/04/16 15:14, LEONARDO NUNES wrote:<br>
</div>
<blockquote cite="mid:D33A641A.27AC3%25leo.nunes@ojc.com.br"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<div>Hi,</div>
<div><br>
</div>
<div>I'm getting the error below when I try to add a custom
FormAction to a copy of the Registration Form.</div>
<div>What am I doing wrong?</div>
<div>I'm using Keycloak 1.9.1.Final</div>
<div><br>
</div>
<div>Steps:</div>
<ul>
<li>Created class: AccountsFormAction implements FormAction</li>
<li>Created class: AccountsFormActionFactory implements
FormActionFactory, ConfigurableAuthenticatorFactory</li>
<li>Created file inside of
META-INF/services/org.keycloak.authentication.FormActionFactory
containing the full qualified name of
the AccountsFormActionFactory class</li>
<li>Copied the JAR to providers folder</li>
<li>At the admin console, I choose Add execution
from Registration-copy1 Registration Form Actions menu</li>
<li>At the providers list I choose "Accounts Form Action"</li>
<li>The error below shows when I click Save</li>
</ul>
<div><br>
</div>
<div><br>
</div>
<div>
<div>2016-04-18 09:02:06,658 ERROR
[org.jboss.resteasy.resteasy_jaxrs.i18n] (default task-52)
RESTEASY002005: Failed executing POST
/admin/realms/accounts/authentication/flows/registration-copy1
registration form/executions/execution:
org.jboss.resteasy.spi.BadRequestException: No authentication
provider found for id: accounts-form-action</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.keycloak.services.resources.admin.AuthenticationManagementResource.addExecution(AuthenticationManagementResource.java:394)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
java.lang.reflect.Method.invoke(Method.java:497)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:139)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:295)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:249)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.ResourceLocatorInvoker.invokeOnTargetObject(ResourceLocatorInvoker.java:138)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.ResourceLocatorInvoker.invoke(ResourceLocatorInvoker.java:107)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.ResourceLocatorInvoker.invokeOnTargetObject(ResourceLocatorInvoker.java:133)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.ResourceLocatorInvoker.invoke(ResourceLocatorInvoker.java:107)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.ResourceLocatorInvoker.invokeOnTargetObject(ResourceLocatorInvoker.java:133)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.ResourceLocatorInvoker.invoke(ResourceLocatorInvoker.java:101)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:395)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:202)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:221)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
javax.servlet.http.HttpServlet.service(HttpServlet.java:790)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.keycloak.services.filters.KeycloakSessionServletFilter.doFilter(KeycloakSessionServletFilter.java:78)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:284)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:263)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:174)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.server.Connectors.executeRootHandler(Connectors.java:202)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:793)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)</div>
<div><span class="Apple-tab-span" style="white-space:pre"></span>at
java.lang.Thread.run(Thread.java:745)</div>
</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>
<div>
<div>-- </div>
<div>Leonardo</div>
</div>
</div>
<hr style="height:1px;color:#C4C4C4;">
<div style="font-family:Arial;color:#848484;font-size:11px;"><i>Esta
mensagem pode conter informação confidencial e/ou
privilegiada. Se você não for o destinatário ou a pessoa
autorizada a receber esta mensagem, não poderá usar, copiar ou
divulgar as informações nela contidas ou tomar qualquer ação
baseada nessas informações. Se você recebeu esta mensagem por
engano, por favor avise imediatamente o remetente, respondendo
o e-mail e em seguida apague-o. Agradecemos sua cooperação.
<br>
<br>
This message may contain confidential and/or privileged
information. If you are not the addressee or authorized to
receive this for the addressee, you must not use, copy,
disclose or take any action based on this message or any
information herein. If you have received this message in
error, please advise the sender immediately by reply e-mail
and delete this message. Thank you for your cooperation</i></div>
<i><i>
</i></i>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
keycloak-user mailing list
<a class="moz-txt-link-abbreviated" href="mailto:keycloak-user@lists.jboss.org">keycloak-user@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/keycloak-user">https://lists.jboss.org/mailman/listinfo/keycloak-user</a></pre>
</blockquote>
<br>
</body>
</html>