alvinalexander.com | career | drupal | java | mac | mysql | perl | scala | uml | unix  

Struts example source code file (struts-chat.xml)

This example Struts source code file (struts-chat.xml) is included in the DevDaily.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Java - Struts tags/keywords

apache, apache, configuration, doctype, doctype, foundation//dtd, public, software, software, struts, utf-8, utf-8

The Struts struts-chat.xml source code

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
  <package name="chat" extends="struts-default" namespace="/chat">
    <interceptors>
      <interceptor name="chatAuthentication"
             class="org.apache.struts2.showcase.chat.ChatAuthenticationInterceptor" />
      <interceptor-stack name="chatAuthenticationStack">
        <interceptor-ref name="createSession" />
        <interceptor-ref name="exception"/>
                <interceptor-ref name="alias"/>
                <interceptor-ref name="servletConfig"/>
                <interceptor-ref name="prepare"/>
                <interceptor-ref name="i18n"/>
                <interceptor-ref name="chain"/>
                <interceptor-ref name="debugging"/>
                <interceptor-ref name="modelDriven"/>
                <interceptor-ref name="fileUpload"/>
                <interceptor-ref name="staticParams"/>
                <interceptor-ref name="params"/>
                <interceptor-ref name="conversionError"/>
                <interceptor-ref name="validation">
                    <param name="excludeMethods">input,back,cancel,browse
                </interceptor-ref>
                <interceptor-ref name="workflow">
                    <param name="excludeMethods">input,back,cancel,browse
                </interceptor-ref>
                <interceptor-ref name="chatAuthentication" />
      </interceptor-stack>
    </interceptors>

    <global-results>
      <result name="login" type="freemarker">/chat/chatLogin.ftl
    </global-results>

    <action name="main">
      <interceptor-ref name="chatAuthentication" />
      <result type="freemarker">/chat/roomSelection.ftl
    </action>

    <action name="login" class="chatLoginAction">
      <interceptor-ref name="defaultStack" />
      <result type="redirect">/chat/showRooms.action
      <result name="input" type="freemarker">/chat/chatLogin.ftl
    </action>

    <action name="logout" class="chatLogoutAction">
      <interceptor-ref name="defaultStack" />
      <result type="redirect">/chat/main.action
    </action>

    <action name="showRooms">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="freemarker">/chat/roomSelection.ftl
    </action>

    <action name="enterRoom" class="enterRoomAction">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="freemarker">/chat/showRoom.ftl
    </action>

    <action name="exitRoom" class="exitRoomAction">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="redirect">/chat/showRooms.action
    </action>

  </package>

  <package name="chat-remote" extends="struts-default" namespace="/chat/ajax">
    <interceptors>
      <interceptor name="chatAuthentication"
             class="org.apache.struts2.showcase.chat.ChatAuthenticationInterceptor" />
      <interceptor-stack name="chatAuthenticationStack">
        <interceptor-ref name="createSession" />
        <interceptor-ref name="exception"/>
                <interceptor-ref name="alias"/>
                <interceptor-ref name="servletConfig"/>
                <interceptor-ref name="prepare"/>
                <interceptor-ref name="i18n"/>
                <interceptor-ref name="chain"/>
                <interceptor-ref name="debugging"/>
                <interceptor-ref name="modelDriven"/>
                <interceptor-ref name="fileUpload"/>
                <interceptor-ref name="staticParams"/>
                <interceptor-ref name="params"/>
                <interceptor-ref name="conversionError"/>
                <interceptor-ref name="validation">
                    <param name="excludeMethods">input,back,cancel,browse
                </interceptor-ref>
                <interceptor-ref name="workflow">
                    <param name="excludeMethods">input,back,cancel,browse
                </interceptor-ref>
                <interceptor-ref name="chatAuthentication" />
      </interceptor-stack>
    </interceptors>


    <action name="usersAvailable" class="usersAvailableAction">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="freemarker">/chat/usersAvailable.ftl
    </action>

    <action name="roomsAvailable" class="roomsAvailableAction">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="freemarker">/chat/roomsAvailable.ftl
    </action>

    <action name="createRoom" class="crudRoomAction" method="create">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="freemarker">/chat/createRoom.ftl
      <result name="input" type="freemarker">/chat/createRoom.ftl
    </action>

    <action name="messagesAvailableInRoom" class="messagesAvailableInRoomAction">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="freemarker">/chat/messagesAvailableInRoom.ftl
      <result name="input" type="freemarker">/chat/messagesAvailableInRoom.ftl
    </action>

    <action name="sendMessageToRoom" class="sendMessageToRoomAction">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="freemarker">/chat/sendMessageToRoomResult.ftl
      <result name="input" type="freemarker">/chat/sendMessageToRoomResult.ftl
    </action>

    <action name="usersAvailableInRoom" class="usersAvailableInRoomAction">
      <interceptor-ref name="chatAuthenticationStack" />
      <result type="freemarker">/chat/usersAvailableInRoom.ftl
    </action>
  </package>
</struts>

Other Struts examples (source code examples)

Here is a short list of links related to this Struts struts-chat.xml source code file:

... this post is sponsored by my books ...

#1 New Release!

FP Best Seller

 

new blog posts

 

Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.

A percentage of advertising revenue from
pages under the /java/jwarehouse URI on this website is
paid back to open source projects.