Class DefaultPromptConnectionCustomGUI<Model>
- Type Parameters:
Model- The type of the model for the prompt connection configuration.
- All Implemented Interfaces:
IPluginGenericCustomGUI<IPluginPromptConnectionBean>
IPluginGenericCustomGUI that uses the
XHTML and
main bean class of the prompt service handler; and allows
for additional unmanaged beans to be specified.-
Constructor Summary
ConstructorsConstructorDescriptionCreates a new default prompt connection custom GUI instance that uses the XHTML and main bean class of the given prompt service handler, and no additional unmanaged beans.DefaultPromptConnectionCustomGUI(IPromptServiceHandler<Model, ?> handler, Iterable<Class<? extends IPluginPromptConnectionBean>> unmanagedBeans) Creates a new default prompt connection custom GUI instance that uses the XHTML and main bean class of the given prompt service handler, and allows for additional unmanaged beans to be specified. -
Method Summary
Modifier and TypeMethodDescriptionIterable<Class<? extends IPluginPromptConnectionBean>> This must return a list of backing bean classes that control the user interface and are required by theXHTML Facelet view.This method must return the path to the XHTML page for the custom user interface.
-
Constructor Details
-
DefaultPromptConnectionCustomGUI
Creates a new default prompt connection custom GUI instance that uses the XHTML and main bean class of the given prompt service handler, and no additional unmanaged beans.- Parameters:
handler- The prompt service handler that provides the connection view.
-
DefaultPromptConnectionCustomGUI
public DefaultPromptConnectionCustomGUI(IPromptServiceHandler<Model, ?> handler, Iterable<Class<? extends IPluginPromptConnectionBean>> unmanagedBeans) Creates a new default prompt connection custom GUI instance that uses the XHTML and main bean class of the given prompt service handler, and allows for additional unmanaged beans to be specified.- Parameters:
handler- The prompt service handler that provides the connection view.unmanagedBeans- Additional unmanaged beans to include in the custom GUI, other than the main bean class.
-
-
Method Details
-
getUnmanagedBeans
Description copied from interface:IPluginGenericCustomGUIThis must return a list of backing bean classes that control the user interface and are required by theXHTML Facelet view. A new instance of the bean will be created automatically when the view is opened. Make sure each bean has got a no-argument constructor or instantiation will fail.Each bean should be annotated with
Named. If this annotation is not present or no name is specified, the name defaults to the simple name of the bean class, with the first character changed to lower case.Also, each bean needs to be annotated one of the following scopes:
@RequestScoped,@ViewScoped,@SessionScoped, or@ApplicationScoped. Note that it depends on the type of plugin which scopes are actually supported (most plugins expect@ViewScopedbeans). In case you do not specify a scope, an appropriate scope will be determined automatically.Please note that the beans are fundamentally unmanaged - functionality specific to managed CDI beans may not be supported, depending on the type of plugin. Certain features of CDI managed beans may be supported partially, depending on the type of plugin, but may work slightly differently. This includes, but is not limited to:
- The exact timing at which
PostConstructandPreDestroyare called may differ. - A field marked with
Injectmay not work with all values allowed by the CDI specification, and may not perform certain validation passes such as the check for circular dependencies. Also, no new bean instances will be created when those beans have not yet been created as part of the current page.
- Specified by:
getUnmanagedBeansin interfaceIPluginGenericCustomGUI<Model>- Returns:
- A list of unmanaged bean classes required by the Facelet page.
- The exact timing at which
-
getXhtmlView
Description copied from interface:IPluginGenericCustomGUIThis method must return the path to the XHTML page for the custom user interface. Usually the XHTML file is part of the classpath resources of the plugin. In this case, simply return a URL to resource (jar:file:/...) like so:@Override public URL getXhtmlView() { return getClass().getResource("/path/to/view.xhtml"); }- Specified by:
getXhtmlViewin interfaceIPluginGenericCustomGUI<Model>- Returns:
- Path to the Facelet view. Must not return
null. May returnnullto indicate that no custom view is available. Whether a custom view is required depends on the type of the plugin.
-