Getting Started
How to create a page
First of all, create a page in XHTML file format, a file with a .xhtml extension and declared the necessary Namespaces.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:pt="http://xmlns.jcp.org/jsf/passthrough"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:fn="http://java.sun.com/jsp/jstl/functions"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:crm="http://java.sun.com/jsf/composite/crm">
</html>
Define the template of the page in a ui:composition tag.
<ui:composition template=""></ui:composition>
By default a template provides the base interface layout of the page (header, footer, topbar, main menu, content) as well as the following tags:
- "managedBean" parameter - contains the name of the managed bean that will be used from template
<ui:param name="managedBean" value=""></ui:param>
- "back-button" placeholder - defines the back button of the page that will be inserted in the left side of the topbar before the title
<ui:define name="back-button"></ui:define>
<ui:define name="title"></ui:define>
<ui:define name="viewname"></ui:define>
<ui:define name="actions"></ui:define>
<ui:define name="content"></ui:define>
Namespaces
The following namespaces should be defined in html root element of a page.
Templates
The available templates are:
- summary_template.xhtml - it is used for a summary page
- data_entry_template.xhtml - it is used for a data entry page
Managed Bean
A typical JavaServer Faces application includes one or more managed beans, each of which can be associated with the components used in a particular page.
A managed bean for summary pages must extend SummaryView class and for data entry pages must extend DataEntryView class.
@ManagedBean(name = "summaryManagedBeanView", eager = true)
@ViewScoped
public class SummaryManagedBeanView extends SummaryView {
}
@ManagedBean(name = "dataEntryManagedBeanView", eager = true)
@ViewScoped
public class DataEntryManagedBeanView extends DataEntryView{
}
Class SummaryView
SummaryView class implements commonly used functions for summary pages.
Class DataEntryView
DataEntryView class implements commonly used functions for data entry pages.
The below list shows functions that can be used from data entry pages:
public void addCustomFields()
This method add custom fields on the page
public List<SelectItem> getDefinedLanguageOptions()
This method loads the language options.
public String getEditorSuggestions(String entityID,String entityTags)
public String getEditorSuggestions(String entityID,String entityTags)
public List<SelectItem> getOptionsFromString(String options)
public List<SelectItem> getOptionsFromString(String options)
public List<SelectItem> getOptionsFromString(String options)
public Boolean isGooglePlacesAutocompleteEnable()
public Boolean isInternationalAddressFormatEnabled()
public Boolean isModuleRestricted(String moduleid)
public List<CRMDO> searchCountry(String searchValue)
public void setGoogleAddress(CRMDOContactInfoAddress contactInfoAddress)
public CRMDO setMandatoryField(CRMDO dto, String xPath, String value)
public void setTranslations()
public void setTranslations(CRMDO dto)
Commonly used functions
The below list shows functions that can be used both from summary and data entry pages:
public void createArchivedFile(String id)
public Boolean exists(ArrayList<CRMDO> dtoList, CRMDO dto)
This method indicates if the specified data object exists in the specified list.
public ArrayList<CRMDO> filterDeleted(ArrayList<CRMDO> records)
public Set filterDeletedSet(Set records)
public void findNode(TreeNode node,CRMDO crmdo)
public String formatAmount(CRMDOCurrency currency, BigDecimal amount)
public String formatAmount(CRMDOCurrency currency, BigDecimal amount, Boolean showCurrency, Integer scale)
public Object formatDate(Object date)
public Object formatDateTime(Object date)
public Object formatDateTime(Object date, String format)
public String formatSearchFilter(String searchFilter)
public TreeNode generateTree(ArrayList<CRMDO> categories)
public TreeNode generateTree(ArrayList<CRMDO> categories)
public List<Object> getActiveInactiveOptions()
This method loads the active/inactive options.
public String getAllowedFileTypes()
public List<SelectItem> getApplicationServerScopeOptions()
This method loads the allowed application server scope options.
public List<SelectItem> getApplicationServersOptions()
This method loads the application server options
public List<SelectItem> getBillingTermSchemeCodeOptions()
This method loads the billing term scheme code options.
public List<SelectItem> getBillingTermSchemeCodeOptions(BillType billType)
public ArrayList<CRMDO> getBillingTermSchemeOptions()
This method loads the billing term scheme code options.
public List<SelectItem> getCountryOptions()
This method loads the country options
public List<SelectItem> getCurrencyOptions()
This method loads the currency options
public Date getCurrentDate()
This method returns the current date without milliseconds;
public String getCurrentYear()
This method returns the current year.
public String getDateFormat()
public String getDateTimeFormat()
public String getDayOfWeekLabel(Integer dayOfWeek)
public List<SelectItem> getDaysOfMonthOptions()
public String getDecimalSeperatorSymbol()
public String getDefaultHomePageName(String defaultHomePageId)
public List<SelectItem> getHomePageOptions()
This method loads the home page options.
public List<SelectItem> getHourOptions()
This method loads the hour options.
public List<SelectItem> getJobTypeOptions()
This method loads the job type options
public List<SelectItem> getLanguageOptions()
This method loads the language options.
public String getMaxFileSize()
public String getMenuoption(List<Menuoption> menuoptions, String menuoptionid)
public List<SelectItem> getMinuteOptions()
This method loads the minute options.
public List<SelectItem> getMinuteOptions(Integer number)
This method loads the minute options.
public String getMonthLabel(Integer month)
public List<SelectItem> getMonthNumberOptions()
public List<SelectItem> getMonthOptions()
public List<SelectItem> getNormalBillingTermSchemeCodeOptions()
This method loads the normal billing term scheme code options.
public String getNumberOfDecimalDigits()
public String getPath(CRMSession ejbSession)
public String getPaymentGatewayCardBrandIcon(String brand)
public String getPeriodOrdinalIndicator(String period)
public ArrayList<SelectItem> getProductCriterionTypeOptions()
This method returns the product criterion type options.
public List<SelectItem> getRecurrenceScopeOptions()
public ArrayList<CRMDO> getSubscriptionTypeOptions()
This method loads the subscription type options
public String getThousandSeperatorSymbol()
public String getTimeLabel(Integer hour, Integer minutes)
public String getTimeLabel(Integer hour, Integer minutes, Integer seconds)
public String getTimestamp()
public List<SelectItem> getTimezoneOptions()
This method loads the available timezone options.
public String getTranslation(String label)
public List<SelectItem> getUnitOfTimeOptions()
public String getValueTranslation(String value)
public List<SelectItem> getWeekdayOptions()
public List<SelectItem> getYearOptions()
public List<Object> getYesNoOptions()
This method loads the yes/no options.
public List<SelectItem> loadMonthNumberOptions()
This method loads the month (number) options.
public List<SelectItem> loadPrintoutExportTypeOptions()
This method list of printout export type options.
public ArrayList<SelectItem> loadYearOptions()
This method loads the year options.
public void navigateToHomePage()
public List<CRMDOCommunity> searchCommunities(String searchValue)
public List<CRMDO> searchGroups(String searchValue)
public List<CRMDO> searchUnits(String searchValue)
public List<CRMDO> searchUsers(String query)
public String setContactOrderBy()
Template Pages