code: public static String getImageSource(FacesContext context, UIComponent component) {
  		Image image = (Image) component;
  		ResourceHandler handler = context.getApplication().getResourceHandler();
  		String resourceName = image.getName();
  		String value = image.getValue();
  		if (value != null && value.length() > 0) {
  			if (resourceName != null && image.getLibrary() != null) {
  				if (FacesContext.getCurrentInstance().isProjectStage(ProjectStage.Development)) {
  					LOGGER.warning(
  							"Please use either the 'value' attribute of b:image, or the 'name' and 'library' attribute pair. If all three attributes are provided, BootsFaces uses the 'value' attributes, ignoring both 'name' and 'library'.");
  				}
  			}
  			if (handler.isResourceURL(value)) {
  				return value;
  			} else {
  				value = context.getApplication().getViewHandler().getResourceURL(context, value);
  				return (context.getExternalContext().encodeResourceURL(value));
  			}
  		}
  
  		String library = image.getLibrary();
  		Resource res = handler.createResource(resourceName, library);
  		if (res == null) {
  			if (context.isProjectStage(ProjectStage.Development)) {
  				String msg = "Unable to find resource " + resourceName;
  				FacesMessages.error(component.getClientId(context), msg, msg);
  			}
  			return "RES_NOT_FOUND";
  		} else {
  			return (context.getExternalContext().encodeResourceURL(res.getRequestPath()));
  		}
  	}
docs: <p>
  Determine the path value of an image value.
  </p>
  
  @param context
  the {@link FacesContext} for the current request.
  @param component
  the component to obtain the image information from
  @return the encoded path to the image source