src/main/java/js/servlet/RequestPreprocessor.java
@Override
	public void init(FilterConfig config) throws UnavailableException {
		log.trace("init(FilterConfig)");

		// is safe to store container reference on filter instance since container has application life span
		container = (ContainerSPI) config.getServletContext().getAttribute(TinyContainer.ATTR_INSTANCE);
		if (container == null) {
			log.fatal("Tiny container instance not properly created, probably misconfigured. Request preprocessor permanently unvailable.");
			throw new UnavailableException("Tiny container instance not properly created, probably misconfigured.");
		}

		String localeParameter = config.getInitParameter(PARAM_LOCALE);
		if (localeParameter != null) {
			locales = Strings.split(localeParameter, ',');
			for (String locale : locales) {
				log.debug("Register locale |%s| for request pre-processing.", locale);
			}
		}

		String securityDomainParameter = config.getInitParameter(PARAM_SECURITY_DOMAIN);
		if (securityDomainParameter != null) {
			securityDomains = Strings.split(securityDomainParameter, ',');
			for (String securityDomain : securityDomains) {
				log.debug("Register security domain |%s| for request pre-processing.", securityDomain);
			}
		}
	}
@Override
	public void init(FilterConfig config) throws UnavailableException {
		log.trace("init(FilterConfig)");

		// is safe to store container reference on filter instance since container has application life span
		container = (ContainerSPI) config.getServletContext().getAttribute(TinyContainer.ATTR_INSTANCE);
		if (container == null) {
			log.fatal("Tiny container instance not properly created, probably misconfigured. Request preprocessor permanently unvailable.");
			throw new UnavailableException("Tiny container instance not properly created, probably misconfigured.");
		}

		String localeParameter = config.getInitParameter(PARAM_LOCALE);
		if (localeParameter != null) {
			locales = Strings.split(localeParameter, ',');
			for (String locale : locales) {
				log.debug("Register locale |%s| for request pre-processing.", locale);
			}
		}

		String securityDomainParameter = config.getInitParameter(PARAM_SECURITY_DOMAIN);
		if (securityDomainParameter != null) {
			securityDomains = Strings.split(securityDomainParameter, ',');
			for (String securityDomain : securityDomains) {
				log.debug("Register security domain |%s| for request pre-processing.", securityDomain);
			}
		}
	}
Load locale codes and security domains lists from filter parameters. Filter parameter is a list of command separated
items. If related filter parameter is not declared, field is initialized to empty list.
<p>
This filter loads tiny container reference from servlet context attribute {@link TinyContainer#ATTR_INSTANCE}. If there
is no servlet context attribute with the that name this initialization fails with filter permanently unavailable.

@param config filter configuration object.
@throws UnavailableException if tiny container is not properly initialized.