title: How to get zk zhtml url parameter?
body: <p>I'm using Zk framework and trying to get a url parameter from zhtml page. I've tried:</p>
  
  <pre><code>Executions.getCurrent().getParameter("param");
  </code></pre>
  
  <p>It doesn't work for zhtml although I tried both zscript in the client side and page composer in the server side. But it is working for a zul page. How can I get a url parameter of zhtml as an example:</p>
  
  <pre><code>http://localhost:8080/pystest/reset_password.zhtml?param=xxx
  </code></pre>
  
  <p>Here is my zhtml page:</p>
  
  <pre><code>&lt;!DOCTYPE html&gt;
  &lt;?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" ?&gt;
  &lt;html lang="en" xmlns:zk="zk" xmlns:z="zul"&gt;
  &lt;head&gt;
      &lt;meta charset="UTF-8"/&gt;
      &lt;title&gt;Reset Password&lt;/title&gt;
  
      &lt;meta name="description" content="User reset password page" /&gt;
      &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;
  
      &lt;!-- basic styles --&gt;
  
      &lt;link href="css/strap.css" rel="stylesheet" /&gt;
      &lt;link rel="stylesheet" href="css/font.css" /&gt;
  
      &lt;!-- fonts --&gt;
  
      &lt;link rel="stylesheet" href="css/ace-fonts.css" /&gt;
  
      &lt;!--styles --&gt;
  
      &lt;link rel="stylesheet" href="css/min.css" /&gt;
      &lt;link rel="stylesheet" href="css/tlr.css" /&gt;
  &lt;/head&gt;
  &lt;body class="pass-layout"&gt;
      &lt;z:div sclass="main-container" apply="component.ResetPasswordComposer"&gt;
              &lt;div class="main-content"&gt;
                  &lt;div class="row"&gt;
                      &lt;div class="col-sm-10 col-sm-offset-1"&gt;
                          &lt;div class="pass-container"&gt;
                              &lt;div class="position-relative"&gt;
                                  &lt;div id="resetpass-box" class="resetpass-box visible widget-box no-border"&gt;
                                      &lt;div class="widget-body"&gt;
                                          &lt;div class="widget-main"&gt;
                                              &lt;h4 class="header green lighter bigger"&gt;
                                                  &lt;i class="icon-group blue"&gt;&lt;/i&gt;
                                                  Choose your new password.
                                              &lt;/h4&gt;
  
                                              &lt;form&gt;
                                                  &lt;fieldset&gt;
                                                      &lt;label class="block clearfix"&gt;
                                                          &lt;span class="block input-icon input-icon-right"&gt;
                                                              &lt;z:textbox type="password" class="form-control" placeholder="New password" id="password1" /&gt;
                                                              &lt;i class="icon-lock"&gt;&lt;/i&gt;
                                                          &lt;/span&gt;
                                                      &lt;/label&gt;
  
                                                      &lt;label class="block clearfix"&gt;
                                                          &lt;span class="block input-icon input-icon-right"&gt;
                                                              &lt;z:textbox type="password" class="form-control" placeholder="Verify password" id="password2"/&gt;
                                                              &lt;i class="icon-retweet"&gt;&lt;/i&gt;
                                                          &lt;/span&gt;
                                                      &lt;/label&gt;
  
                                                      &lt;div class="space-24"&gt;&lt;/div&gt;
  
                                                      &lt;div class="clearfix"&gt;
                                                          &lt;button type="reset" class="width-30 pull-left btn btn-sm"&gt;
                                                              &lt;i class="icon-refresh"&gt;&lt;/i&gt;
                                                              Reset
                                                          &lt;/button&gt;
  
                                                          &lt;button id="resetButton" type="button" class="width-65 pull-right btn btn-sm btn-success"&gt;
                                                              Submit
                                                              &lt;i class="icon-arrow-right icon-on-right"&gt;&lt;/i&gt;
                                                          &lt;/button&gt;
                                                      &lt;/div&gt;
                                                  &lt;/fieldset&gt;
                                              &lt;/form&gt;
                                          &lt;/div&gt;
  
                                          &lt;div class="toolbar center"&gt;
                                          &lt;/div&gt;
                                      &lt;/div&gt;&lt;!-- /widget-body --&gt;
                                  &lt;/div&gt;&lt;!-- /resetpass-box --&gt;
                              &lt;/div&gt;&lt;!-- /position-relative --&gt;
                          &lt;/div&gt;&lt;!-- /pass-container --&gt;
                      &lt;/div&gt;&lt;!-- /col-sm-10 col-sm-offset-1 --&gt;
                  &lt;/div&gt;&lt;!-- /row --&gt;
              &lt;/div&gt;&lt;!-- /main-content --&gt;
          &lt;/z:div&gt;&lt;!-- /main-container --&gt;
  
          &lt;!-- below script is not working --&gt;
          &lt;zk:zscript&gt;
              &lt;![CDATA[
                  alert(Executions.getCurrent().getParameter("param"));     
              ]]&gt;
          &lt;/zk:zscript&gt;
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>And server side:</p>
  
  <pre><code>public class ResetPasswordComposer extends GenericForwardComposer&lt;Component&gt; {
  
      /**
       * 
       */
      private static final long serialVersionUID = 1L;
  
      protected Textbox password1;
      protected Textbox password2;
  
      @Override
      public void doAfterCompose(Component comp) throws Exception {
          super.doAfterCompose(comp);
      }
  
      public void onClick$resetButton(){
          UserOperator userOperator=new UserOperator();
          try{
              String token=getToken();
              System.out.println(token);
          }catch(Exception e){
              e.printStackTrace();
          }
  
      }
  
      private String getToken(){
          Execution exec = Executions.getCurrent();
          String param=exec.getParameter("param");
          return param;
      }
  }
  </code></pre>