All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sun.faces.spi.InjectionProvider Maven / Gradle / Ivy

Go to download

Jakarta Faces defines an MVC framework for building user interfaces for web applications, including UI components, state management, event handing, input validation, page navigation, and support for internationalization and accessibility.

There is a newer version: 4.1.2
Show newest version
/*
 * Copyright (c) 1997, 2020 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0, which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * This Source Code may also be made available under the following Secondary
 * Licenses when the conditions for such availability set forth in the
 * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
 * version 2 with the GNU Classpath Exception, which is available at
 * https://www.gnu.org/software/classpath/license.html.
 *
 * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
 */

package com.sun.faces.spi;

/**
 * 

* This interface defines an integration point for Jakarta EE vendors. Each vendor will need to provide an implementation * of this interface which will provide the Faces implementation the necessary hooks to perform resource injection. *

* *

* The implementation of this interface *must* be thread-safe and must provider either a no-arg constructor, or a * constructor accepting a ServletContext instance. *

*/ public interface InjectionProvider { /** *

* The implementation of this method must perform the following steps: *

    *
  • Inject the supported resources per the Servlet 2.5 specification into the provided object
  • *
* *

* This method must not invoke any methods annotated with @PostConstruct * * @param managedBean the target managed bean * @throws InjectionProviderException if an error occurs during resource injection */ void inject(Object managedBean) throws InjectionProviderException; /** *

* The implemenation of this method must invoke any method marked with the @PreDestroy annotation (per the * Common Annotations Specification). * * @param managedBean the target managed bean * @throws InjectionProviderException if an error occurs when invoking the method annotated by the * @PreDestroy annotation */ void invokePreDestroy(Object managedBean) throws InjectionProviderException; /** *

* The implemenation of this method must invoke any method marked with the @PostConstruct annotation (per * the Common Annotations Specification). * * @param managedBean the target managed bean * @throws InjectionProviderException if an error occurs when invoking the method annotated by the * @PostConstruct annotation */ void invokePostConstruct(Object managedBean) throws InjectionProviderException; }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy