⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 configurationcactustest.java

📁 一个使用struts+hibernate+spring开发的完的网站源代码。
💻 JAVA
字号:
/* * Copyright 2002,2004 The Apache Software Foundation. *  * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *  *      http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.myfaces.config;import java.util.ArrayList;import java.util.List;import javax.faces.FactoryFinder;import javax.faces.application.ApplicationFactory;import javax.faces.application.NavigationHandler;import javax.faces.application.StateManager;import javax.faces.application.ViewHandler;import javax.faces.context.ExternalContext;import javax.faces.el.PropertyResolver;import javax.faces.el.VariableResolver;import javax.faces.event.PhaseListener;import javax.faces.lifecycle.Lifecycle;import javax.faces.lifecycle.LifecycleFactory;import javax.faces.render.RenderKit;import javax.faces.render.RenderKitFactory;import javax.faces.render.Renderer;import javax.faces.webapp.FacesServlet;import javax.servlet.ServletContext;import org.apache.myfaces.application.NavigationHandlerImpl;import org.apache.myfaces.application.jsp.JspStateManagerImpl;import org.apache.myfaces.application.jsp.JspViewHandlerImpl;import org.apache.myfaces.cactus.MyFacesServletTestCase;import org.apache.myfaces.config.element.ManagedBean;import org.apache.myfaces.config.element.NavigationCase;import org.apache.myfaces.config.element.NavigationRule;import org.apache.myfaces.el.PropertyResolverImpl;import org.apache.myfaces.el.VariableResolverImpl;import org.apache.myfaces.lifecycle.LifecycleFactoryImpl;import org.apache.myfaces.renderkit.html.util.AutoScrollPhaseListener;import org.apache.myfaces.component.html.ext.HtmlDataTablePhaseListener;public class ConfigurationCactusTest extends MyFacesServletTestCase{    protected void setUp() throws Exception    {        super.setUp();    }    protected void tearDown() throws Exception    {        super.tearDown();    }    public ConfigurationCactusTest(String name)    {        super(name);    }    public void testConfiguration() throws Exception    {        ExternalContext externalContext = getContext().getExternalContext();        // test decorator pattern support        // application factory        ApplicationFactory applicationFactory = (ApplicationFactory) FactoryFinder.getFactory(FactoryFinder.APPLICATION_FACTORY);        assertEquals(TestApplicationFactory.class, applicationFactory.getClass());        javax.faces.application.Application application = applicationFactory.getApplication();        assertEquals("messageBundleA", application.getMessageBundle());        LifecycleFactory lifecycleFactory = (LifecycleFactory) FactoryFinder.getFactory(FactoryFinder.LIFECYCLE_FACTORY);        assertEquals(TestLifecycleFactory.class, lifecycleFactory.getClass());        LifecycleFactory lifecycleFactoryDelegate = ((TestLifecycleFactory) lifecycleFactory).getDelegate();        assertNotNull(lifecycleFactoryDelegate);        assertEquals(LifecycleFactoryImpl.class, lifecycleFactoryDelegate.getClass());        // view handler        ViewHandler viewHandler = application.getViewHandler();        assertEquals(TestViewHandlerA.class, viewHandler.getClass());        assertEquals(TestViewHandlerB.class, ((TestViewHandlerA) viewHandler).getDelegate().getClass());        assertEquals(JspViewHandlerImpl.class, ((TestViewHandlerB) ((TestViewHandlerA) viewHandler).getDelegate()).getDelegate().getClass());        // navigation handler        NavigationHandler navigationHandler = application.getNavigationHandler();        assertEquals(TestNavigationHandler.class, navigationHandler.getClass());        assertEquals(NavigationHandlerImpl.class, ((TestNavigationHandler) navigationHandler).getDelegate().getClass());        // state manager        StateManager stateManager = application.getStateManager();        assertEquals(TestStateManager.class, stateManager.getClass());        assertEquals(JspStateManagerImpl.class, ((TestStateManager) stateManager).getDelegate().getClass());        // PropvertyResolver        PropertyResolver propertyResolver = application.getPropertyResolver();        assertEquals(TestPropertyResolver.class, propertyResolver.getClass());        assertEquals(PropertyResolverImpl.class, ((TestPropertyResolver) propertyResolver).getDelegate().getClass());        // VariableResolver        VariableResolver variableResolver = application.getVariableResolver();        assertEquals(TestVariableResolver.class, variableResolver.getClass());        assertEquals(VariableResolverImpl.class, ((TestVariableResolver) variableResolver).getDelegate().getClass());        // RuntimeConfig        RuntimeConfig runtimeConfig = RuntimeConfig.getCurrentInstance(externalContext);        ManagedBean bean = runtimeConfig.getManagedBean("testMap");        assertNotNull(bean);        assertNull(runtimeConfig.getManagedBean("doesNotExist"));        // Navigation rules        List navigationRules = new ArrayList(runtimeConfig.getNavigationRules());        assertEquals(1, navigationRules.size());        NavigationRule navRule = (NavigationRule) navigationRules.get(0);        NavigationCase navCase = (NavigationCase) navRule.getNavigationCases().iterator().next();        assertTrue(navCase.isRedirect());        assertEquals("Foo", navCase.getFromOutcome());        assertEquals("/Foo.jsp", navCase.getToViewId());        // Lifecycle config        ServletContext context = (ServletContext) externalContext.getContext();        String lifecycleId = context.getInitParameter(FacesServlet.LIFECYCLE_ID_ATTR);        if (lifecycleId == null)        {            lifecycleId = LifecycleFactory.DEFAULT_LIFECYCLE;        }        Lifecycle lifecycle = (Lifecycle) lifecycleFactory.getLifecycle(lifecycleId);        javax.faces.event.PhaseListener[] phaseListeners = lifecycle.getPhaseListeners();        assertEquals(4, phaseListeners.length);        for (int i = 0; i < phaseListeners.length; i++)        {            PhaseListener listener = phaseListeners[i];            assertTrue(listener instanceof TestPhaseListenerA || listener instanceof TestPhaseListenerB || listener instanceof AutoScrollPhaseListener || listener instanceof HtmlDataTablePhaseListener);        }    }    public void testRenderKit()    {        RenderKitFactory renderKitFactory = (RenderKitFactory) FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY);        RenderKit basicHtml = renderKitFactory.getRenderKit(getContext(), RenderKitFactory.HTML_BASIC_RENDER_KIT);        Renderer renderer = basicHtml.getRenderer("javax.faces.Command", "javax.faces.Button");        assertEquals(org.apache.myfaces.renderkit.html.HtmlButtonRenderer.class, renderer.getClass());        RenderKit testRenderKit = renderKitFactory.getRenderKit(getContext(), "TEST_RENDER_KIT");        assertNull(basicHtml.getRenderer("test.Command", "test.Button"));        renderer = testRenderKit.getRenderer("test.Command", "test.Button");        assertEquals(org.apache.myfaces.renderkit.html.HtmlButtonRenderer.class, renderer.getClass());    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -