<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 11/12/2015 8:59 AM, Stian Thorgersen
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAJgngAcP7pPe3RHrdH+Dn8kQNsgTjLkFieaDtBV4BVCvTnPaag@mail.gmail.com"
      type="cite">
      <div dir="ltr">Not sure why this is turning into a lengthy
        discussion, but null in the representation has a meaning. If you
        look at how it's implemented the lack of a value (it's set to
        null) results in setting the default value only if creating a
        new entity. If updating an existing entity a null value is
        simply ignored. If you initialize these in the representation
        you will end up overriding existing values. The idea is that
        someone can update a single value without having to include all
        existing values.</div>
    </blockquote>
    So at the beginning I said it would be rare for us to want the
    default to be null.  That's where I was mistaken.  It's good that we
    had the discussion because I needed to know that null has that
    meaning.<br>
    <br>
    Part of this is Java's fault.  A Boolean with three values isn't
    really Boolean.  George Boole is probably rolling over in his grave.<br>
    <blockquote
cite="mid:CAJgngAcP7pPe3RHrdH+Dn8kQNsgTjLkFieaDtBV4BVCvTnPaag@mail.gmail.com"
      type="cite">
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On 12 November 2015 at 14:45, Stan
          Silvert <span dir="ltr">&lt;<a moz-do-not-send="true"
              href="mailto:ssilvert@redhat.com" target="_blank">ssilvert@redhat.com</a>&gt;</span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div text="#000000" bgcolor="#FFFFFF"><span class="">
                <div>On 11/12/2015 8:41 AM, Stian Thorgersen wrote:<br>
                </div>
                <blockquote type="cite">
                  <div dir="ltr">The bug is simply caused by not
                    checking for null</div>
                </blockquote>
              </span> Seriously?  So every time you call a getter on a
              Representation you have to check for null?<br>
              <br>
              If a Boolean should not be null then initialize it
              properly or use boolean.
              <div>
                <div class="h5"><br>
                  <blockquote type="cite">
                    <div class="gmail_extra"><br>
                      <div class="gmail_quote">On 12 November 2015 at
                        14:40, Stan Silvert <span dir="ltr">&lt;<a
                            moz-do-not-send="true"
                            href="mailto:ssilvert@redhat.com"
                            target="_blank">ssilvert@redhat.com</a>&gt;</span>
                        wrote:<br>
                        <blockquote class="gmail_quote" style="margin:0
                          0 0 .8ex;border-left:1px #ccc
                          solid;padding-left:1ex">
                          <div text="#000000" bgcolor="#FFFFFF">
                            <div>On 11/12/2015 8:33 AM, Stian Thorgersen
                              wrote:<br>
                            </div>
                            <blockquote type="cite">
                              <div dir="ltr">RepresentationToModel</div>
                            </blockquote>
                            The bug happened before
                            RepresentationToModel could be called. 
                            That's why we need to initialize variables
                            properly.
                            <div>
                              <div><br>
                                <blockquote type="cite">
                                  <div class="gmail_extra"><br>
                                    <div class="gmail_quote">On 12
                                      November 2015 at 14:20, Stan
                                      Silvert <span dir="ltr">&lt;<a
                                          moz-do-not-send="true"
                                          href="mailto:ssilvert@redhat.com"
                                          target="_blank">ssilvert@redhat.com</a>&gt;</span>
                                      wrote:<br>
                                      <blockquote class="gmail_quote"
                                        style="margin:0 0 0
                                        .8ex;border-left:1px #ccc
                                        solid;padding-left:1ex">
                                        <div text="#000000"
                                          bgcolor="#FFFFFF"><span>
                                            <div>On 11/12/2015 7:39 AM,
                                              Stian Thorgersen wrote:<br>
                                            </div>
                                            <blockquote type="cite">
                                              <div dir="ltr"><br>
                                                <div class="gmail_extra"><br>
                                                  <div
                                                    class="gmail_quote">On
                                                    12 November 2015 at
                                                    13:12, Stan Silvert
                                                    <span dir="ltr">&lt;<a
moz-do-not-send="true" href="mailto:ssilvert@redhat.com" target="_blank">ssilvert@redhat.com</a>&gt;</span>
                                                    wrote:<br>
                                                    <blockquote
                                                      class="gmail_quote"
                                                      style="margin:0 0
                                                      0
                                                      .8ex;border-left:1px
                                                      #ccc
                                                      solid;padding-left:1ex">
                                                      <div
                                                        text="#000000"
                                                        bgcolor="#FFFFFF">
                                                        <div>Funny.  I
                                                          just ran into
                                                          that exact NPE
                                                          yesterday but
                                                          I thought it
                                                          was a state
                                                          that was
                                                          caused by my
                                                          new code.  So
                                                          I only fixed
                                                          it in that one
                                                          representation
                                                          class.  But
                                                          I'm not ready
                                                          to merge that
                                                          yet.<br>
                                                          <br>
                                                          We really need
                                                          to go through
                                                          all the
                                                          representations
                                                          and set
                                                          defaults for
                                                          all instance
                                                          variables of
                                                          type Boolean. 
                                                          It's probably
                                                          rare that we
                                                          would want
                                                          that default
                                                          to be null. 
                                                          Even if it
                                                          should be null
                                                          we should say
                                                          so explicitly.</div>
                                                      </div>
                                                    </blockquote>
                                                    <div><br>
                                                    </div>
                                                    <div>-1 We want them
                                                      to be null. We set
                                                      defaults elsewhere</div>
                                                  </div>
                                                </div>
                                              </div>
                                            </blockquote>
                                          </span> Where?
                                          <div>
                                            <div><br>
                                              <blockquote type="cite">
                                                <div dir="ltr">
                                                  <div
                                                    class="gmail_extra">
                                                    <div
                                                      class="gmail_quote">
                                                      <div> </div>
                                                      <blockquote
                                                        class="gmail_quote"
                                                        style="margin:0
                                                        0 0
                                                        .8ex;border-left:1px
                                                        #ccc
                                                        solid;padding-left:1ex">
                                                        <div
                                                          text="#000000"
bgcolor="#FFFFFF">
                                                          <div><span><font
color="#888888"><br>
                                                          <br>
                                                          Stan</font></span>
                                                          <div>
                                                          <div><br>
                                                          <br>
                                                          On 11/12/2015
                                                          5:42 AM, Stian
                                                          Thorgersen
                                                          wrote:<br>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          <div>
                                                          <div>
                                                          <blockquote
                                                          type="cite">
                                                          <div dir="ltr">That's

                                                          a bug. It's
                                                          failing on "if
                                                          (rep.isServiceAccountsEnabled()

                                                          ..)",
                                                          but serviceAccountsEnabled
                                                          in the
                                                          representation
                                                          can be null,
                                                          which would
                                                          result in this
                                                          NPE.
                                                          <div><br>
                                                          </div>
                                                          <div>Can you
                                                          create a JIRA
                                                          please? If you
                                                          did a PR as
                                                          well that'd be
                                                          even better :)</div>
                                                          </div>
                                                          <div
                                                          class="gmail_extra"><br>
                                                          <div
                                                          class="gmail_quote">On

                                                          12 November
                                                          2015 at 10:58,
                                                          Juraj Janosik
                                                          <span
                                                          dir="ltr">&lt;<a
moz-do-not-send="true" href="mailto:juraj.janosik77@gmail.com"
                                                          target="_blank">juraj.janosik77@gmail.com</a>&gt;</span>
                                                          wrote:<br>
                                                          <blockquote
                                                          class="gmail_quote"
                                                          style="margin:0
                                                          0 0
                                                          .8ex;border-left:1px
                                                          #ccc
                                                          solid;padding-left:1ex">
                                                          <div dir="ltr">
                                                          <div>
                                                          <div>
                                                          <div>
                                                          <div>
                                                          <div>
                                                          <div>
                                                          <div>Hi,<br>
                                                          <br>
                                                          </div>
                                                          I want to
                                                          announce an
                                                          issue with "<a
moz-do-not-send="true"
href="http://keycloak.github.io/docs/rest-api/index.html#_update_the_client"
target="_blank">Update the client</a>" via Admin REST API.<br>
                                                          </div>
                                                          <div><br>
                                                          <u>Description:</u>
                                                          I want to
                                                          change the
                                                          description
                                                          for existing
                                                          client #3.<br>
                                                          <br>
                                                          <u>Note:</u>
                                                          From the
                                                          documentation
                                                          ("<a
                                                          moz-do-not-send="true"
href="http://keycloak.github.io/docs/rest-api/index.html#_update_the_client"
target="_blank">Update the client</a>"), body parameter attributes <br>
                                                          are required
                                                          in schema
                                                          "ClientRepresentation".<br>
                                                          </div>
                                                          <div>Description


                                                          of schema
                                                          "ClientRepresentation"
                                                          notes for any
                                                          mandatory
                                                          attribute.<br>
                                                          <br>
                                                          Are some
                                                          parameters
                                                          mandatory for
                                                          successfuly
                                                          running of
                                                          this scenario
                                                          ?<br>
                                                          <br>
                                                          </div>
                                                          <u>Tested
                                                          scenario:</u><br>
                                                          <u>Tested
                                                          data:</u><br>
                                                          "Update
                                                          Client":<br>
"method":"PUT","url":"&lt;URL&gt;:&lt;PORT&gt;/auth/admin/realms/&lt;REALM&gt;/clients/3"<br>
                                                          <div>"headers":<br>
[["Content-Type","application/json"],<br>
                                                          <div>["Authorization","Bearer
&lt;ACCESS_TOKEN&gt;]]</div>
                                                          </div>
                                                          <div>"body":<br>
                                                          "{<br>
                                                          "id":"3",<br>
"clientId":"testclient-3",<br>
                                                          "name":
                                                          "testclient-3",<br>
                                                          "description":
                                                          "TESTCLIENT-3
                                                          v.2"<br>
                                                          }"<br>
                                                          </div>
                                                          <br>
                                                          </div>
                                                          <u>Test
                                                          Result:</u>
                                                          Status Code:
                                                          500 Internal
                                                          Server Error<br>
                                                          <br>
                                                          </div>
                                                          <u>Some parts
                                                          from console
                                                          logs:</u><br>
                                                          10:35:31,591
                                                          ERROR
                                                          [io.undertow.request]
                                                          (default
                                                          task-18)
                                                          UT005023:
                                                          Exception
                                                          handling
                                                          request to
                                                          /auth/admin/realms/universities/clients/3:
                                                          java.lang.RuntimeException:


                                                          request path:
/auth/admin/realms/universities/clients/3<br>
                                                          ...<br>
                                                              at
org.keycloak.services.filters.KeycloakSessionServletFilter.doFilter(KeycloakSessionServletFilter.java:61)<br>
                                                              ... 29
                                                          more<br>
                                                          <b>Caused by:
java.lang.NullPointerException</b><br>
                                                              at
org.keycloak.services.resources.admin.ClientResource.update(ClientResource.java:106)<br>
                                                          <br>
                                                          <br>
                                                          </div>
                                                          Thanks a lot.<br>
                                                          <br>
                                                          </div>
                                                          Best Regards,<br>
                                                          </div>
                                                          Juraj<br>
                                                          <div>
                                                          <div>
                                                          <div>
                                                          <div>
                                                          <div>
                                                          <div><br>
                                                          <br>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          <br>
_______________________________________________<br>
                                                          keycloak-user
                                                          mailing list<br>
                                                          <a
                                                          moz-do-not-send="true"
href="mailto:keycloak-user@lists.jboss.org" target="_blank">keycloak-user@lists.jboss.org</a><br>
                                                          <a
                                                          moz-do-not-send="true"
href="https://lists.jboss.org/mailman/listinfo/keycloak-user"
                                                          rel="noreferrer"
target="_blank">https://lists.jboss.org/mailman/listinfo/keycloak-user</a><br>
                                                          </blockquote>
                                                          </div>
                                                          <br>
                                                          </div>
                                                          <br>
                                                          <fieldset></fieldset>
                                                          <br>
                                                          <pre>_______________________________________________
keycloak-user mailing list
<a moz-do-not-send="true" href="mailto:keycloak-user@lists.jboss.org" target="_blank">keycloak-user@lists.jboss.org</a>
<a moz-do-not-send="true" href="https://lists.jboss.org/mailman/listinfo/keycloak-user" target="_blank">https://lists.jboss.org/mailman/listinfo/keycloak-user</a></pre>
                                                          </blockquote>
                                                          <br>
                                                          </div>
                                                          </div>
                                                        </div>
                                                        <br>
_______________________________________________<br>
                                                        keycloak-user
                                                        mailing list<br>
                                                        <a
                                                          moz-do-not-send="true"
href="mailto:keycloak-user@lists.jboss.org" target="_blank">keycloak-user@lists.jboss.org</a><br>
                                                        <a
                                                          moz-do-not-send="true"
href="https://lists.jboss.org/mailman/listinfo/keycloak-user"
                                                          rel="noreferrer"
target="_blank">https://lists.jboss.org/mailman/listinfo/keycloak-user</a><br>
                                                      </blockquote>
                                                    </div>
                                                    <br>
                                                  </div>
                                                </div>
                                              </blockquote>
                                              <br>
                                            </div>
                                          </div>
                                        </div>
                                      </blockquote>
                                    </div>
                                    <br>
                                  </div>
                                </blockquote>
                                <br>
                              </div>
                            </div>
                          </div>
                        </blockquote>
                      </div>
                      <br>
                    </div>
                  </blockquote>
                  <br>
                </div>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>