webflow

cas的webflow

例子

参考

  • success.jsp

    <body> Welcome ${loginBean.userName}!! </body>

  • login.jsp

      <form method="post" action="${flowExecutionUrl}">
          <input type="hidden" name="_eventId" value="performLogin"> 
          <input type="hidden" name="_flowExecutionKey" value="${flowExecutionKey}" />
          <input type="text" name="userName" maxlength="40">
          <input type="password" name="password" maxlength="40">
          <input type="submit" value="Login" />
      </form>
    
  • web.xml

    <servlet>
      <servlet-name>springFlowApplication
      <servlet-class>org.springframework.web.servlet.DispatcherServlet
      <init-param>
          <param-name>contextConfigLocation
          <param-value>classpath://spring-config.xml
      </init-param>
      <load-on-startup>1
    </servlet>
    <servlet-mapping>
     <servlet-name>springFlowApplication
     <url-pattern>/
    </servlet-mapping>
  • spirng-config.xml

      <context:component-scan base-package="com.jcg.examples" />
      <bean
      class="org.springframework.web.servlet.view.InternalResourceViewResolver">
          <property name="prefix" value="/jsp/" />
          <property name="suffix" value=".jsp" />
      </bean>
      <import resource="flow-definition.xml"/>
    
  • flow-definition.xml

      <bean class="org.springframework.webflow.mvc.servlet.FlowHandlerMapping">
          <property name="flowRegistry" ref="bookSearchFlowRegistry" />
      </bean>
      <bean class="org.springframework.webflow.mvc.servlet.FlowHandlerAdapter">
          <property name="flowExecutor" ref="bookSearchFlowExecutor" />
      </bean>
      <flow:flow-executor id="bookSearchFlowExecutor" flow-registry="bookSearchFlowRegistry" />
      <flow:flow-registry id="bookSearchFlowRegistry">
          <flow:flow-location id="bookSearchFlow" path="/flows/book-search-flow.xml" />
      </flow:flow-registry> 
    
  • book-search-flow.xml

      <var name="loginBean" class="com.jcg.examples.bean.LoginBean" />
      <view-state id="displayLoginView" view="jsp/login.jsp" model="loginBean">
          <transition on="performLogin" to="performLoginAction" />
      </view-state>
      <action-state id="performLoginAction">
          <evaluate expression="loginService.validateUser(loginBean)" />
          <transition on="true" to="displaySuccess" />
          <transition on="false" to="displayError" />
      </action-state>
      <view-state id="displaySuccess" view="jsp/success.jsp" model="loginBean"/>
      <view-state id="displayError" view="jsp/failure.jsp" />
    
  • LoginService.java
    @Service
    public class LoginService {
          public String validateUser(LoginBean loginBean)        {
                  String userName = loginBean.getUserName();
                  String password = loginBean.getPassword();
                  return Boolean.toString(userName.equals("Chandan") && password.equals("TestPassword");
          }
    }
    
  • LoginBean
    public class LoginBean implements Serializable
    {
          private static final long serialVersionUID = 1L;
          private String userName;
          private String password;
    //........ommited
    

results matching ""

    No results matching ""