kr.co.hit.live.web.action
Class AbstractWebAction

java.lang.Object
  extended by kr.co.hit.live.web.action.AbstractWebAction
All Implemented Interfaces:
WebAction
Direct Known Subclasses:
AbstractWebMultiAction, FileDispatcherWebAction, FlexWebAction, JsonWebAction, LogViewWebAction, ResourceWebAction, ServiceWebAction, WebMapperAction, XFrameWebAction, XPlatformWebAction

public abstract class AbstractWebAction
extends Object
implements WebAction

WebAction을 구현시 필요한 WebActionForward 설정 및 조회 기능을 제공하는 클래스이다. WebAction은 다음과 같이 구현한다.

  1. 액션 클래스를 구현한다. 이때 AbstractWebAction을 extends 해야한다.
  2. 서비스 구성파일 작성한다. 서비스의 "interface"는 "kr.co.hit.live.web.action.WebAction"으로 설정하고, "forward"와 필요시 "prefix", "suffix" property를 설정하도록 한다.
작성 예)

 public class TestWebActionImpl extends AbstractWebAction {

        private static final Logger logger = LoggerFactory.getLogger(TestWebActionImpl);

        public WebActionForward execute(HttpServletRequest request,
                        HttpServletResponse response) throws Exception {
                logger.error("This is TestWebAction...");
                return createForward("default").addModel("code","execute");
        }
 }

     <service name="test.do"
             interface="kr.co.hit.live.web.action.WebAction"
             class="${package}.TestWebActionImpl"
             interceptor="system.proxy"
             singleton="true">
         <property name="forward" value="default:=/ganhogibonweb/jsp/test.jsp"/>
         <property name="prefix" value="/webapps/tmp"/>
     </service>
 

Since:
4.0
Author:
김형도

Field Summary
protected  WebApplicationContext context
          본 WebAction이 수행되는 WebActionContext 객체를 담아 놓는다.
protected static org.slf4j.Logger logger
           
 
Constructor Summary
AbstractWebAction()
           
 
Method Summary
 WebActionForward createForward(String name)
          주어진 이름에 해당되는 WebActionForward를 객체를 생성한다.
abstract  WebActionForward execute(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
          WebActionDispatcher 서블릿이 호출하는 메소드이다.
 javax.servlet.ServletContext getServletContext()
           
 WebApplicationContext getWebApplicationContext()
           
 void setForward(String forwardString)
          WebActionForward를 추가한다.
 void setPrefix(String prefix)
          WebActionForward를 생성할 때 사용할 prefix 문자열을 지정한다.
 void setSuffix(String suffix)
          WebActionForward를 생성할 때 사용할 suffix 문자열을 지정한다.
 void setWebApplicationContext(WebApplicationContext ctx)
          WebAction 객체가 실행되는 WebActionDispatcher의 WebApplicationtContext 값을 전달한다.
 void showConfiguration(javax.servlet.http.HttpServletResponse response)
          WebAction의 설정값을 출력하는 메소드이다.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static org.slf4j.Logger logger

context

protected WebApplicationContext context
본 WebAction이 수행되는 WebActionContext 객체를 담아 놓는다.

Constructor Detail

AbstractWebAction

public AbstractWebAction()
Method Detail

execute

public abstract WebActionForward execute(javax.servlet.http.HttpServletRequest request,
                                         javax.servlet.http.HttpServletResponse response)
                                  throws Exception
Description copied from interface: WebAction
WebActionDispatcher 서블릿이 호출하는 메소드이다. 이 인터페이스를 구현하는 클래스는 이 메소드에서 업무처리를 수행하고 forward할 View의 URL을 WebActionForward로 리턴한다. null을 리턴할 경우에는 forward하지 않는다.

Specified by:
execute in interface WebAction
Returns:
Throws:
Exception

setWebApplicationContext

public void setWebApplicationContext(WebApplicationContext ctx)
Description copied from interface: WebAction
WebAction 객체가 실행되는 WebActionDispatcher의 WebApplicationtContext 값을 전달한다. WebActionDispatcher에서 사용하는 ServiceContainer의 WebActionPostProcessor를 통하여 처음 WebAction 객체가 생성될 때 호출된다.

Specified by:
setWebApplicationContext in interface WebAction

getWebApplicationContext

public WebApplicationContext getWebApplicationContext()

getServletContext

public javax.servlet.ServletContext getServletContext()

showConfiguration

public void showConfiguration(javax.servlet.http.HttpServletResponse response)
                       throws IOException
Description copied from interface: WebAction
WebAction의 설정값을 출력하는 메소드이다.

Specified by:
showConfiguration in interface WebAction
Throws:
IOException

setForward

public void setForward(String forwardString)
WebActionForward를 추가한다.

Parameters:
forwardString - foward를 정의하는 문자열이다. 문자열 형식은 다음과 같아야 한다. forward명:=[forward:|redirect:]URL경로

setPrefix

public void setPrefix(String prefix)
WebActionForward를 생성할 때 사용할 prefix 문자열을 지정한다.

Parameters:
prefix -

setSuffix

public void setSuffix(String suffix)
WebActionForward를 생성할 때 사용할 suffix 문자열을 지정한다.

Parameters:
suffix -

createForward

public WebActionForward createForward(String name)
주어진 이름에 해당되는 WebActionForward를 객체를 생성한다. 해당되는 이름을 찾지 못한 경우에는 이름의 앞뒤에 각각 prefix와 suffix 문자열을 붙여서 리턴한다. 주어진 이름이 null이거나 비어 있는 문자열인 경우에는 null을 반환한다.

Parameters:
name -
Returns:


Copyright © 2014. All Rights Reserved.