zoukankan      html  css  js  c++  java
  • struts2 改变portlet windowState

    import java.io.IOException;
    import java.util.Map;

    import javax.portlet.ActionRequest;
    import javax.portlet.ActionResponse;
    import javax.portlet.PortletException;
    import javax.portlet.PortletRequest;
    import javax.portlet.PortletResponse;
    import javax.portlet.RenderRequest;
    import javax.portlet.RenderResponse;
    import javax.portlet.WindowState;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    import org.apache.struts2.portlet.dispatcher.Jsr168Dispatcher;
    import org.apache.struts2.portlet.servlet.PortletServletRequest;
    import org.apache.struts2.portlet.servlet.PortletServletResponse;

    public class Jsr168ComsysDispatcher extends Jsr168Dispatcher {
        
    private WindowState windowState=null;
        
    public void processAction(ActionRequest request, ActionResponse response)
                
    throws PortletException, IOException {// 处理portlet 最大化
            super.processAction(request, response);
            
    if (windowState!=null){
                    response.setWindowState(windowState);
                    windowState
    =null;
                }
        }
        
    public void render(RenderRequest request, RenderResponse response)
        
    throws PortletException, IOException {
            
    super.render(request, response);
        }
        
        
    public void serviceAction(PortletRequest request, PortletResponse response, Map<String, Object> requestMap, Map<String, String[]> parameterMap,
                Map
    <String, Object> sessionMap, Map<String, Object> applicationMap, String portletNamespace,
                Integer phase) 
    throws PortletException {
            
    super.serviceAction(request, response, applicationMap, parameterMap, applicationMap, applicationMap, portletNamespace, phase);
             HttpServletRequest servletRequest 
    = new PortletServletRequest(request, getPortletContext());
             HttpServletResponse servletResponse 
    = new PortletServletResponse(response);
             
    if (servletRequest.getAttribute("WindowState.comsysStatus")!=null){
                 
    if ((WindowState.MAXIMIZED).equals(servletRequest.getAttribute("WindowState.comsysStatus"))){
                     windowState
    =WindowState.MAXIMIZED;
                 }
    else if ((WindowState.MINIMIZED).equals(servletRequest.getAttribute("WindowState.comsysStatus"))){
                     windowState
    =WindowState.MINIMIZED;
                 }
    else if ((WindowState.NORMAL).equals(servletRequest.getAttribute("WindowState.comsysStatus"))){
                     windowState
    =WindowState.NORMAL;
                 }
    else{
                     windowState
    =null;
                 }
             }
    else{
                 windowState
    =null;
             }
        }
    }
  • 相关阅读:
    linux c编程:Posix消息队列
    go语言之接口二
    linux c编程:FIFO
    python cookbook第三版学习笔记十九:未包装的函数添加参数
    linux c编程:popen
    linux c编程:管道
    Linux c编程:I/O多路复用之epoll
    Linux c编程:I/O多路复用之select
    inux c编程:记录锁
    python cookbook第三版学习笔记十八:可由用户修改的装饰器
  • 原文地址:https://www.cnblogs.com/jifeng/p/2115734.html
Copyright © 2011-2022 走看看