Spec-Zone .ru
спецификации, руководства, описания, API


javax.faces.application
Класс ResourceHandler

java.lang.Object
  расширенный javax.faces.application.ResourceHandler
Прямые Известные Подклассы:
ResourceHandlerWrapper

public abstract class ResourceHandler
расширяет java.lang. Объект

ResourceHandler является API времени выполнения который UIComponent и Renderer экземпляры могут сослаться Resource экземпляры. Реализация этого class должна быть ориентирована на многопотоковое исполнение.

Упаковка Ресурсов

Кодирование Ресурсов

Декодирование Ресурсов

С тех пор:
2.0

Полевая Сводка
static java.lang.String LOCALE_PREFIX
          

Имя ключа в пределах приложения передает пакет, названный возвратом из Application#getMessageBundle чье значение является префиксом локали, используемым, чтобы найти, что упакованный ресурс возвращается из createResource(java.lang.String) (или одна из его разновидностей).

static java.lang.String RESOURCE_EXCLUDES_DEFAULT_VALUE
          

Значение по умолчанию для RESOURCE_EXCLUDES_PARAM_NAME init param.

static java.lang.String RESOURCE_EXCLUDES_PARAM_NAME
          

ServletContext параметр init, с которым консультируются handleResourceRequest(javax.faces.context.FacesContext) сказать, какие виды ресурсов никогда не должны подаваться в ответ на запрос ресурса.

static java.lang.String RESOURCE_IDENTIFIER
          

Resource#getRequestPath возвращает значение этой константы как префикс URI.

 
Сводка конструктора
ResourceHandler()
           
 
Сводка метода
abstract  Resource createResource(java.lang.String resourceName)
          

Создайте экземпляр Resource учитывая параметр resourceName.

abstract  Resource createResource(java.lang.String resourceName, java.lang.String libraryName)
          

Создайте экземпляр Resource с resourceName, данным значением параметра resourceName это - элемент библиотеки, названной параметром libraryName.

abstract  Resource createResource(java.lang.String resourceName, java.lang.String libraryName, java.lang.String contentType)
          

Создайте экземпляр Resource с resourceName, данным значением параметра resourceName это - элемент библиотеки, названной параметром libraryName это утверждает, что дало тип контента параметром content-type.

abstract  java.lang.String getRendererTypeForResourceName(java.lang.String resourceName)
          

Возвратитесь renderer-type для a Renderer это способно к рендерингу этого ресурса.

abstract  void handleResourceRequest(FacesContext context)
          

Этот метод определяет контракт для того, чтобы удовлетворить запросы ресурса.

abstract  boolean isResourceRequest(FacesContext context)
          

Возвратиться true если текущий запрос является запросом ресурса.

abstract  boolean libraryExists(java.lang.String libraryName)
          

Возвратиться true если библиотеку ресурса называет параметр libraryName может быть найден.

 
Методы, наследованные от class java.lang. Объект
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Полевая Деталь

RESOURCE_IDENTIFIER

public static final java.lang.String RESOURCE_IDENTIFIER

Resource#getRequestPath возвращает значение этой константы как префикс URI. handleResourceRequest(javax.faces.context.FacesContext) ищет значение этой константы в пределах URI запроса, чтобы определить, является ли запрос запросом ресурса или запросом представления.

См. Также:
Постоянные Значения полей

LOCALE_PREFIX

public static final java.lang.String LOCALE_PREFIX

Имя ключа в пределах приложения передает пакет, названный возвратом из Application#getMessageBundle чье значение является префиксом локали, используемым, чтобы найти, что упакованный ресурс возвращается из createResource(java.lang.String) (или одна из его разновидностей).

См. Также:
Постоянные Значения полей

RESOURCE_EXCLUDES_PARAM_NAME

public static final java.lang.String RESOURCE_EXCLUDES_PARAM_NAME

ServletContext параметр init, с которым консультируются handleResourceRequest(javax.faces.context.FacesContext) сказать, какие виды ресурсов никогда не должны подаваться в ответ на запрос ресурса. Значение этого параметра является одинарным интервалом разделенный список расширений файла, включая ведущий '.' символ (без кавычек). Если не определенный, значение по умолчанию, данное в значении RESOURCE_EXCLUDES_DEFAULT_VALUE постоянный используется. Если вручную определено, данное значение полностью переопределяет значение по умолчанию один и не добавляет его.

См. Также:
Постоянные Значения полей

RESOURCE_EXCLUDES_DEFAULT_VALUE

public static final java.lang.String RESOURCE_EXCLUDES_DEFAULT_VALUE

Значение по умолчанию для RESOURCE_EXCLUDES_PARAM_NAME init param.

См. Также:
Постоянные Значения полей
Деталь конструктора

ResourceHandler

public ResourceHandler()
Деталь метода

createResource

public abstract Resource createResource(java.lang.String resourceName)

Создайте экземпляр Resource учитывая параметр resourceName. Тип контента ресурса получается, передавая resourceName к ExternalContext.getMimeType(java.lang.String)

Алгоритм, определенный в разделе JSF.2.6.1.4 документа прозы спецификации, соединенного в сводке краткого обзора, должен быть выполнен, чтобы создать Resource

Параметры:
resourceName - имя ресурса.
Возвраты:
недавно создаваемый Resource экземпляр, подходящий для использования в кодировании или декодировании именованного ресурса.
Броски:
java.lang.NullPointerException - если resourceName null.

createResource

public abstract Resource createResource(java.lang.String resourceName,
                                        java.lang.String libraryName)

Создайте экземпляр Resource с resourceName, данным значением параметра resourceName это - элемент библиотеки, названной параметром libraryName. Тип контента ресурса получается, передавая resourceName к ExternalContext.getMimeType(java.lang.String).

Алгоритм, определенный в разделе JSF.2.6.1.4 документа прозы спецификации, соединенного в сводке краткого обзора, должен быть выполнен, чтобы создать Resource

Параметры:
resourceName - имя ресурса.
libraryName - имя библиотеки, в которой находится этот ресурс, может быть null., Возможно, не включает относительные пути, такой как ".. /".
Возвраты:
недавно создаваемый Resource экземпляр, подходящий для использования в кодировании или декодировании именованного ресурса.
Броски:
NullPointerException - если resourceName null

createResource

public abstract Resource createResource(java.lang.String resourceName,
                                        java.lang.String libraryName,
                                        java.lang.String contentType)

Создайте экземпляр Resource с resourceName, данным значением параметра resourceName это - элемент библиотеки, названной параметром libraryName это утверждает, что дало тип контента параметром content-type.

Алгоритм, определенный в разделе JSF.2.6.1.4 документа прозы спецификации, соединенного в сводке краткого обзора, должен быть выполнен, чтобы создать Resource

Параметры:
resourceName - имя ресурса.
libraryName - имя библиотеки, в которой находится этот ресурс, может быть null., Возможно, не включает относительные пути, такой как ".. /".
contentType - контент пантомимы, что это Resource экземпляр возвратится из Resource#getContentType. Если значение null, Тип контента ресурса получается, передавая resourceName к ExternalContext.getMimeType(java.lang.String)

Возвраты:
недавно создаваемый Resource экземпляр, подходящий для использования в кодировании или декодировании именованного ресурса.
Броски:
NullPointerException - если resourceName null.

libraryExists

public abstract boolean libraryExists(java.lang.String libraryName)

Возвратиться true если библиотеку ресурса называет параметр libraryName может быть найден.

С тех пор:
2.0

handleResourceRequest

public abstract void handleResourceRequest(FacesContext context)
                                    throws java.io.IOException

Этот метод определяет контракт для того, чтобы удовлетворить запросы ресурса. От этого метода вызывают FacesServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse) после того, как тот метод решает, что текущий запрос является запросом ресурса, вызывая isResourceRequest(javax.faces.context.FacesContext). Таким образом, handleResourceRequest может предположить, что текущий запрос является запросом ресурса.

Реализация по умолчанию должна реализовать алгоритм, семантически идентичный следующему алгоритму.

Для обсуждения, во всех случаях, когда код состояния должен быть установлен, эта спецификация переговоры только использование API Сервлета, но подразумевается, что в среде портлета соответствующий эквивалентный API должен использоваться.
  • Если resourceIdentifier заканчивается каким-либо из расширений, перечисленных в значении RESOURCE_EXCLUDES_PARAM_NAME параметр init, HttpServletRequest.SC_NOT_FOUND к нужно передать HttpServletResponse.setStatus(), тогда handleResourceRequest должен сразу возвратиться.

  • Извлеките resourceName из resourceIdentifier, беря подстроку resourceIdentifier, который запускается в RESOURCE_IDENTIFIER.length() + 1 и идет до конца resourceIdentifier. Если никакой resourceName не может быть извлечен, HttpServletRequest.SC_NOT_FOUND к нужно передать HttpServletResponse.setStatus(), тогда handleResourceRequest должен сразу возвратиться.

  • Извлеките libraryName из запроса, смотря в карте параметра запроса для записи под ключом "ln" без кавычек. Если найдено, используйте его значение в качестве libraryName.

  • Если resourceName и libraryName присутствуют, вызвать createResource(String, String) создать Resource. Если только resourceName присутствует, вызвать createResource(String) создать Resource. Если Resource не может быть успешно создан, HttpServletRequest.SC_NOT_FOUND к нужно передать HttpServletResponse.setStatus(), тогда handleResourceRequest должен сразу возвратиться.

  • Вызвать Resource#userAgentNeedsUpdate. Если этот метод возвращает false, HttpServletRequest.SC_NOT_MODIFIED к нужно передать HttpServletResponse.setStatus(), тогда handleResourceRequest должен сразу возвратиться.

  • Передайте результат Resource#getContentType к HttpServletResponse.setContentType.

  • Вызвать Resource#getResponseHeaders. Для каждой записи в этом Map, вызвать HttpServletResponse.setHeader(), передача ключа как первый параметр и значение как второй параметр.

  • Вызвать Resource#getInputStream и подайте байты ресурса к ответу.

  • Вызвать HttpServletResponse.setContentLength() передача количества байта ресурса.

  • Если IOException бросается во время любого из предыдущих шагов, зарегистрируйте дескриптивное, локализованное сообщение, включая resourceName и libraryName (если есть). Затем, HttpServletRequest.SC_NOT_FOUND к нужно передать HttpServletResponse.setStatus(), тогда handleResourceRequest должен сразу возвратиться.

  • Во всех случаях в этом методе любые потоки, каналы, сокеты, или любые другие ресурсы IO должны быть закрыты перед этим методом возвраты.

Параметры:
context - FacesContext для этого запроса
Броски:
java.io.IOException

isResourceRequest

public abstract boolean isResourceRequest(FacesContext context)

Возвратиться true если текущий запрос является запросом ресурса. Этим методом вызывают FacesServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse) определить, является ли этот запрос запросом представления или запросом ресурса.

Параметры:
context - FacesContext для этого запроса
Возвраты:
true если текущий запрос является запросом ресурса, false иначе.

getRendererTypeForResourceName

public abstract java.lang.String getRendererTypeForResourceName(java.lang.String resourceName)

Возвратитесь renderer-type для a Renderer это способно к рендерингу этого ресурса. Реализация по умолчанию должна возвращаемые значения согласно следующей таблице. Если нет renderer-type может быть определен, null должен быть возвращен.

имя ресурса в качестве примера тип средства рендеринга
mycomponent.js javax.faces.resource.Script
mystyle.css javax.faces.resource.Stylesheet



Представьте ошибку или функцию

Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается срокам действия лицензии.

Сгенерированный на 10-February-2011 12:41

free hit counter