2012-10-28 71 views
0

我們正在嘗試將驗證部署到我的應用程序中,但它不適合我們。如何讓工作流驗證在Aviarc中工作

我們已經設置了當前權限和當前授權者,甚至將登錄查詢設置爲只選擇'a',所以我們保證會得到結果集。

我們已將登錄工作流程複製到工作流程/系統目錄。

它看起來不像它甚至試圖運行登錄查詢。

start.xml工作流程:

<workflow> 
    <authenticate error-screen="login-error" dataset="login"> 
     <show-screen name="login" /> 
    </authenticate> 
    <call-workflow name="home"/> 
</workflow> 

login.xml屏幕:

<screen xmlns:action="urn:aviarc:widget:com.aviarc.toronto.widget.core.action:1" 
    xmlns:app="urn:aviarc:widget:application"> 

    <group-box visible="y" left="10" right="4" top="10" bottom="4" class="blue"> 

     <image height="80" width="245" left="10" top="5" class="mfcologo" /> 
     <line height="5" left="0" right="0" top="120" class="myerblue" /> 

     <text-static visible="y" left="74" top="151" width="80" height="20" text="User name:" /> 
     <text-static visible="y" left="234" top="151" width="80" height="20" text="Password:" /> 

     <text-edit name="username" left="74" top="182" width="100" height="20" field="login.user_name" /> 
     <text-edit name="password" left="234" top="182" width="100" height="20" field="login.user_password" datatype="password" /> 

     <button left="376" top="182" width="60" height="20" label="Login" action="Next"/> 
    </group-box> 
</screen> 

系統/ Login.xml工作流程:

<workflow xmlns:au-security="urn:aviarc:xmlcommand:au.com.aviarc.xmlcommand.security"> 

    <au-security:hash-text text="{$login.user_password}" result-field="login.hashed-password" /> 

    <dataset name="cslogin" databroker="loginqry" query="get-all"> 
     <param name="username" value="{$login.user_name}" /> 
     <param name="password" value="{$login.hashed-password}" /> 
    </dataset> 

    <if test="dataset-empty" value1="cslogin"> 
     <then> 
      <set-field field="login.authenticated" value="n"/> 
     </then> 
     <else> 
      <set-field field="login.authenticated" value="y"/> 
     </else> 
    </if> 
</workflow> 

回答

0

工作流身份驗證需要在輸入密碼之前輸入「用戶名」字段,否則身份驗證將立即失敗並顯示登錄錯誤屏幕。

在您的例子是相當容易固定,改變線在login.xml屏幕從:

<text-edit name="username" left="74" top="182" width="100" height="20" field="login.user_name" /> 

爲:

<text-edit name="username" left="74" top="182" width="100" height="20" field="login.username" /> 

,並在更新參照它系統/登錄工作流程。