<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>