dev@javaserverfaces.java.net

RETROACTIVE REVIEW: more spec content

From: Ed Burns <Ed.Burns_at_Sun.COM>
Date: Wed, 30 Jan 2008 21:21:07 -0800

Correctly specify localized version resource loading.
   

SECTION: Modified Files
----------------------------
M jsf-api/src/overview.html

- Add a named anchor to point to the spec prose document.

M jsf-api/src/javax/faces/application/Resource.java

- add missing style annotations.

- Remove "may" statements at Doug Donahue's suggestion.

M jsf-api/src/javax/faces/application/ResourceHandler.java

- added LOCALE_PREFIX constant

- VERY IMPORTANT: for each createResource() variant, specify that
  a specific section in the spec prose document must be executed.

M jsf-api/src/javax/faces/context/ExternalContext.java
M jsf-api/src/javax/faces/context/FacesContext.java

- add missing style annotations

M jsf-ri/src/com/sun/faces/application/resource/ResourceManager.java

- Use the new LOCALE_PREFIX constant


SECTION: Diffs
----------------------------
Index: jsf-api/src/overview.html
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-api/src/overview.html,v
retrieving revision 1.4
diff -u -r1.4 overview.html
--- jsf-api/src/overview.html 29 Jan 2008 21:02:44 -0000 1.4
+++ jsf-api/src/overview.html 31 Jan 2008 05:14:48 -0000
@@ -77,7 +77,7 @@
 
 <tr>
 
-<td>The prose document</td>
+<td><a name="prose_document">The prose document</a></td>
 
 <td><a target="_" href="../JSF__at_build.number@.pdf">PDF</a></td>
 
Index: jsf-api/src/javax/faces/application/Resource.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-api/src/javax/faces/application/Resource.java,v
retrieving revision 1.9
diff -u -r1.9 Resource.java
--- jsf-api/src/javax/faces/application/Resource.java 29 Jan 2008 21:02:44 -0000 1.9
+++ jsf-api/src/javax/faces/application/Resource.java 31 Jan 2008 05:14:49 -0000
@@ -81,14 +81,15 @@
 
 
     /**
- * <p class="changed_added_2_0">Set the MIME content-type for this resource.
- * The default implementation performs no validation on the
- * argument.</p>
- * @param contentType the MIME content-type for this resource. May
- * be <code>null</code>. If the value is <code>null</code>, The
- * content-type of the resource is derived by passing the
- * <em>resourceName</em> to {_at_link
- * javax.faces.context.ExternalContext#getMimeType}.
+
+ * <p class="changed_added_2_0">Set the MIME content-type for this
+ * resource. The default implementation performs no validation on
+ * the argument.</p>
+ * @param contentType the MIME content-type for this resource. The
+ * default implementation must accept <code>null</code> as a
+ * parameter. If the value is <code>null</code>, The content-type
+ * of the resource is derived by passing the <em>resourceName</em>
+ * to {_at_link javax.faces.context.ExternalContext#getMimeType}.
      */
     public void setContentType(String contentType) {
 
@@ -107,7 +108,8 @@
      * resourceName. See {_at_link ResourceHandler} for more
      * information.</p>
      *
- * @return Return the libraryName for this resource. May be null.
+ * @return Return the libraryName for this resource. May be
+ * <code>null</code>.
      */
     public String getLibraryName() {
 
@@ -118,8 +120,9 @@
 
     /**
      * <p class="changed_added_2_0">Set the libraryName for this resource.</p>
- * @param libraryName the libraryName for this resource. May be
- * <code>null</code>.
+ * @param libraryName the libraryName for this resource. The
+ * default implementation must accept <code>null</code> for the
+ * <em>libraryName</em>.
      */
     public void setLibraryName(String libraryName) {
 
@@ -282,8 +285,7 @@
     /**
      * <p class="changed_added_2_0">Return <code>true</code> if the
      * user-agent requesting this resource needs an update. Returns
- * <code>false</code> otherwise. If <code>false</code>, the caller
- * should send a 304 not modified to the client.
+ * <code>false</code> otherwise.
      *
      * @return <code>true</code> or <code>false</code> depending on
      * whether or not the user-agent needs an update of this resource.
Index: jsf-api/src/javax/faces/application/ResourceHandler.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-api/src/javax/faces/application/ResourceHandler.java,v
retrieving revision 1.11
diff -u -r1.11 ResourceHandler.java
--- jsf-api/src/javax/faces/application/ResourceHandler.java 29 Jan 2008 21:02:44 -0000 1.11
+++ jsf-api/src/javax/faces/application/ResourceHandler.java 31 Jan 2008 05:14:49 -0000
@@ -101,6 +101,20 @@
      */
     public static final String RESOURCE_IDENTIFIER = "/javax.faces.resource";
 
+
+ /**
+ * <p class="changed_added_2_0">The name of a key within the
+ * application message bundle named by the return from {_at_link
+ * Application#getMessageBundle} whose value is the locale prefix
+ * used to find a packaged resource to return from {_at_link
+ * #createResource} (or one of its variants).
+ */
+
+ public static final String LOCALE_PREFIX =
+ "javax.faces.resource.localePrefix";
+
+
+
     /**
      * <p class="changed_added_2_0">The <code>ServletContext</code> init
      * parameter consulted by the {_at_link #handleResourceRequest} to tell
@@ -134,7 +148,17 @@
      * <code>resourceName</code>. The content-type of the resource is
      * derived by passing the <em>resourceName</em> to {_at_link
      * javax.faces.context.ExternalContext#getMimeType}</p>
- *
+
+ * <div class="changed_added_2_0">
+
+ * <p>The algorithm specified in section 2.6.1.4 of the spec prose
+ * document <a
+ * href="../../../overview-summary.html#prose_document">linked in
+ * the overview summary</a> must be executed to create the
+ * <code>Resource</code></p>
+
+ * </div>
+
      * @param resourceName the name of the resource.
      *
      * @throws NullPointerException if <code>resourceName</code> is
@@ -155,6 +179,16 @@
      * <em>resourceName</em> to
      * {_at_link javax.faces.context.ExternalContext#getMimeType}.</p>
      *
+ * <div class="changed_added_2_0">
+
+ * <p>The algorithm specified in section 2.6.1.4 of the spec prose
+ * document <a
+ * href="../../../overview-summary.html#prose_document">linked in
+ * the overview summary</a> must be executed to create the
+ * <code>Resource</code></p>
+
+ * </div>
+
      * @param resourceName the name of the resource.
      *
      * @param libraryName the name of the library in which this resource
@@ -178,6 +212,16 @@
      * that claims to have the content-type given by the argument
      * <code>content-type</code>.</p>
      *
+ * <div class="changed_added_2_0">
+
+ * <p>The algorithm specified in section 2.6.1.4 of the spec prose
+ * document <a
+ * href="../../../overview-summary.html#prose_document">linked in
+ * the overview summary</a> must be executed to create the
+ * <code>Resource</code></p>
+
+ * </div>
+
      * @param resourceName the name of the resource.
      *
      * @param libraryName the name of the library in which this resource
@@ -206,7 +250,7 @@
      * for satisfying resource requests. This method is called from
      * {_at_link javax.faces.webapp.FacesServlet#service} after that method
      * determines the current request is a resource request by calling
- * {_at_link #isResourceRequest}. Thus, <code>createResource</code>
+ * {_at_link #isResourceRequest}. Thus, <code>handleResourceRequest</code>
      * may assume that the current request is a resource request.</p>
      *
      * <div class="changed_added_2_0">
@@ -226,7 +270,7 @@
      * #RESOURCE_EXCLUDES_PARAM_NAME} init parameter,
      * <code>HttpServletRequest.SC_NOT_FOUND</code> must be passed to
      * <code>HttpServletResponse.setStatus()</code>, then
- * <code>createResource</code> must immediately return.</p></li>
+ * <code>handleResourceRequest</code> must immediately return.</p></li>
      *
      * <li><p>Extract the <em>resourceName</em> from the
      * <em>resourceIdentifier</em> by taking the substring of
@@ -235,7 +279,7 @@
      * <em>resourceIdentifier</em>. If no <em>resourceName</em> can be
      * extracted, <code>HttpServletRequest.SC_NOT_FOUND</code> must be
      * passed to <code>HttpServletResponse.setStatus()</code>, then
- * <code>createResource</code> must immediately return.</p></li>
+ * <code>handleResourceRequest</code> must immediately return.</p></li>
      *
      * <li><p>Extract the <em>libraryName</em> from the request by
      * looking in the request parameter map for an entry under the key
@@ -250,16 +294,16 @@
      * successfully created,
      * <code>HttpServletRequest.SC_NOT_FOUND</code> must be passed to
      * <code>HttpServletResponse.setStatus()</code>, then
- * <code>createResource</code> must immediately return.</p></li>
+ * <code>handleResourceRequest</code> must immediately return.</p></li>
      *
      * <li><p>Call {_at_link Resource#userAgentNeedsUpdate}. If this
      * method returns false,
      * <code>HttpServletRequest.SC_NOT_MODIFIED</code> must be passed to
      * <code>HttpServletResponse.setStatus()</code>, then
- * <code>createResource</code> must immediately return.</p></li>
+ * <code>handleResourceRequest</code> must immediately return.</p></li>
      *
      * <li><p>Pass the result of {_at_link Resource#getContentType} to
- * <code>HttpServletResponse.setContentType}.</code> </p></li>
+ * <code>HttpServletResponse.setContentType.</code> </p></li>
      *
      * <li><p>Call {_at_link Resource#getResponseHeaders}. For each entry
      * in this <code>Map</code>, call
@@ -277,7 +321,7 @@
      * the <em>resourceName</em> and <em>libraryName</em> (if present).
      * Then, <code>HttpServletRequest.SC_NOT_FOUND</code> must be passed
      * to <code>HttpServletResponse.setStatus()</code>, then
- * <code>createResource</code> must immediately return.</p></li>
+ * <code>handleResourceRequest</code> must immediately return.</p></li>
      *
      * <li><p>In all cases in this method, any streams, channels,
      * sockets, or any other IO resources must be closed before this
Index: jsf-api/src/javax/faces/context/ExternalContext.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-api/src/javax/faces/context/ExternalContext.java,v
retrieving revision 1.37
diff -u -r1.37 ExternalContext.java
--- jsf-api/src/javax/faces/context/ExternalContext.java 29 Jan 2008 21:02:45 -0000 1.37
+++ jsf-api/src/javax/faces/context/ExternalContext.java 31 Jan 2008 05:14:51 -0000
@@ -69,6 +69,15 @@
  * <p>In the method descriptions below, paragraphs starting with
  * <em>Servlet:</em> and <em>Portlet:</em> denote behavior that is
  * specific to that particular environment.</p>
+
+ * <p class="changed_added_2_0">If a reference to an
+ * <code>ExternalContext</code> is obtained during application startup
+ * time, any method documented as "valid to call this method during
+ * application startup" must be supported during application startup
+ * time. The result of calling a method during application startup time
+ * that does not have this designation is undefined.</p>
+
+
  */
 
 public abstract class ExternalContext {
@@ -204,13 +213,13 @@
     
 
     /**
- * <p>Return a mutable <code>Map</code> representing the application
- * scope attributes for the current application. The returned
- * <code>Map</code> must implement the entire contract for a
- * modifiable map as described in the JavaDocs for
- * <code>java.util.Map</code>. Modifications made in the
- * <code>Map</code> must cause the corresponding changes in the set
- * of application scope attributes. Particularly the
+ * <p><span class="changed_modified_2_0">Return</span> a mutable
+ * <code>Map</code> representing the application scope attributes
+ * for the current application. The returned <code>Map</code> must
+ * implement the entire contract for a modifiable map as described
+ * in the JavaDocs for <code>java.util.Map</code>. Modifications
+ * made in the <code>Map</code> must cause the corresponding changes
+ * in the set of application scope attributes. Particularly the
      * <code>clear()</code>, <code>remove()</code>, <code>put()</code>,
      * <code>putAll()</code>, and <code>get()</code> operations must
      * take the appropriate action on the underlying data structure.</p>
@@ -227,6 +236,15 @@
      * called on removal. Any exception thrown by the
      * <code>PreDestroy</code> annotated methods must by caught and not
      * rethrown. The exception may be logged.</p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called at startup time, this
+ * method returns a <code>Map</code> that is backed by the same
+ * container context instance (<code>ServletContext</code> or
+ * <code>PortletContext</code>) as the one returned by calling
+ * <code>getApplicationMap()</code> on the
+ * <code>ExternalContext</code> returned by the
+ * <code>FacesContext</code> during an actual request.</p>
      *
      * <p><em>Servlet:</em> This must be the set of attributes available via
      * the <code>javax.servlet.ServletContext</code> methods
@@ -265,6 +283,16 @@
      * specified file or <code>null</code> if the MIME type is not
      * known. The MIME type is determined by the container.</p>
 
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this method calls through to the
+ * <code>getMimeType()</code> method on the same container
+ * context instance (<code>ServletContext</code> or
+ * <code>PortletContext</code>) as the one used when calling
+ * <code>getMimeType()</code> on the
+ * <code>ExternalContext</code> returned by the
+ * <code>FacesContext</code> during an actual request.</p>
+
      * <div class="changed_added_2_0">
  
      * <p><em>Servlet:</em> This must be the value returned by the
@@ -293,8 +321,18 @@
 
 
     /**
- * <p>Return the application environment object instance for the current
+ * <p><span class="changed_modified_2_0">Return</span> the
+ * application environment object instance for the current
      * appication.</p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this returns the same container context instance
+ * (<code>ServletContext</code> or <code>PortletContext</code>) as
+ * the one returned when calling <code>getContext()</code> on the
+ * <code>ExternalContext</code> returned by the
+ * <code>FacesContext</code> during an actual request.</p>
+
      *
      * <p><em>Servlet:</em> This must be the current application's
      * <code>javax.servlet.ServletContext</code> instance.</p>
@@ -306,8 +344,8 @@
 
 
     /**
- * <p>Return the value of the specified application initialization
- * parameter (if any).</p>
+ * <p><span class="changed_modified_2_0">Return</span> the value of
+ * the specified application initialization parameter (if any).</p>
      *
      * <p><em>Servlet:</em> This must be the result of the
      * <code>javax.servlet.ServletContext</code> method
@@ -316,7 +354,12 @@
      * <p><em>Portlet:</em> This must be the result of the
      * <code>javax.portlet.PortletContext</code> method
      * <code>getInitParameter(name)</code>.</p>
- *
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this method calls through to the actual container
+ * context to return the init parameter value.</p>
+
      * @param name Name of the requested initialization parameter
      *
      * @throws NullPointerException if <code>name</code>
@@ -326,13 +369,23 @@
 
 
     /**
- * <p>Return an immutable <code>Map</code> whose keys are the set of
- * application initialization parameter names configured for this
- * application, and whose values are the corresponding parameter
- * values. The returned <code>Map</code> must implement the entire
- * contract for an unmodifiable map as described in the JavaDocs
- * for <code>java.util.Map</code>.</p>
- *
+ * <p><span class="changed_modified_2_0">Return</span></span> an
+ * immutable <code>Map</code> whose keys are the set of application
+ * initialization parameter names configured for this application,
+ * and whose values are the corresponding parameter values. The
+ * returned <code>Map</code> must implement the entire contract for
+ * an unmodifiable map as described in the JavaDocs for
+ * <code>java.util.Map</code>.</p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this method returns a <code>Map</code> that is backed by
+ * the same container context instance (<code>ServletContext</code>
+ * or <code>PortletContext</code>) as the one returned by calling
+ * <code>getInitParameterMap()</code> on the
+ * <code>ExternalContext</code> returned by the
+ * <code>FacesContext</code> during an actual request.</p>
+
      * <p><em>Servlet:</em> This result must be as if it were synthesized
      * by calling the <code>javax.servlet.ServletContext</code>
      * method <code>getInitParameterNames</code>, and putting
@@ -825,9 +878,21 @@
     
 
     /**
- * <p>Return a <code>URL</code> for the application resource mapped to the
- * specified path, if it exists; otherwise, return <code>null</code>.</p>
+ * <p><span class="changed_modified_2_0">Return</span> a
+ * <code>URL</code> for the application resource mapped to the
+ * specified path, if it exists; otherwise, return
+ * <code>null</code>.</p>
      *
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this method calls through to the
+ * <code>getResource()</code> method on the same container
+ * context instance (<code>ServletContext</code> or
+ * <code>PortletContext</code>) as the one used when calling
+ * <code>getResource()</code> on the
+ * <code>ExternalContext</code> returned by the
+ * <code>FacesContext</code> during an actual request.</p>
+
      * <p><em>Servlet:</em> This must be the value returned by the
      * <code>javax.servlet.ServletContext</code> method
      * <code>getResource(path)</code>.</p>
@@ -848,9 +913,20 @@
 
 
     /**
- * <p>Return an <code>InputStream</code> for an application resource
- * mapped to the specified path, if it exists; otherwise, return
+ * <p><span class="changed_modified_2_0">Return</span> an
+ * <code>InputStream</code> for an application resource mapped to
+ * the specified path, if it exists; otherwise, return
      * <code>null</code>.</p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this method calls through to the
+ * <code>getResourceAsStream()</code> method on the same container
+ * context instance (<code>ServletContext</code> or
+ * <code>PortletContext</code>) as the one used when calling
+ * <code>getResourceAsStream()</code> on the
+ * <code>ExternalContext</code> returned by the
+ * <code>FacesContext</code> during an actual request.</p>
      *
      * <p><em>Servlet:</em> This must be the value returned by the
      * <code>javax.servlet.ServletContext</code> method
@@ -870,9 +946,20 @@
 
 
     /**
- * <p>Return the <code>Set</code> of resource paths for all application
- * resources whose resource path starts with the specified argument.</p>
- *
+ * <p><span class="changed_modified_2_0">Return</span> the
+ * <code>Set</code> of resource paths for all application resources
+ * whose resource path starts with the specified argument.</p>
+ *
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this method calls through to the
+ * <code>getResourcePaths()</code> method on the same container
+ * context instance (<code>ServletContext</code> or
+ * <code>PortletContext</code>) as the one used when calling
+ * <code>getResourcePaths()</code> on the
+ * <code>ExternalContext</code> returned by the
+ * <code>FacesContext</code> during an actual request.</p>
+
      * <p><em>Servlet:</em> This must be the value returned by the
      * <code>javax.servlet.ServletContext</code> method
      * <code>getResourcePaths(path).</code></p>
@@ -1070,7 +1157,17 @@
 
 
     /**
- * <p>Log the specified message to the application object.</p>
+ * <p><span class="changed_modified_2_0">Log</span> the specified
+ * message to the application object.</p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this calls the <code>log()</code> method on the same
+ * container context instance (<code>ServletContext</code> or
+ * <code>PortletContext</code>) as the one used during a call to
+ * <code>log()</code> on the <code>ExternalContext</code> returned
+ * by the <code>FacesContext</code> during an actual request.</p>
+
      *
      * <p><em>Servlet:</em> This must be performed by calling the
      * <code>javax.servlet.ServletContext</code> method
@@ -1089,7 +1186,16 @@
 
 
     /**
- * <p>Log the specified message and exception to the application object.</p>
+ * <p><span class="changed_modified_2_0">Log</span> the specified
+ * message and exception to the application object.</p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this calls the <code>log()</code> method on the same
+ * container context instance (<code>ServletContext</code> or
+ * <code>PortletContext</code>) as the one used when calling
+ * <code>log()</code> on the <code>ExternalContext</code> returned
+ * by the <code>FacesContext</code> during an actual request.</p>
      *
      * <p><em>Servlet:</em> This must be performed by calling the
      * <code>javax.servlet.ServletContext</code> method
Index: jsf-api/src/javax/faces/context/FacesContext.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-api/src/javax/faces/context/FacesContext.java,v
retrieving revision 1.74
diff -u -r1.74 FacesContext.java
--- jsf-api/src/javax/faces/context/FacesContext.java 28 Jan 2008 20:55:35 -0000 1.74
+++ jsf-api/src/javax/faces/context/FacesContext.java 31 Jan 2008 05:14:51 -0000
@@ -55,10 +55,11 @@
 
 
 /**
- * <p><strong>FacesContext</strong> contains all of the per-request state
- * information related to the processing of a single JavaServer Faces request,
- * and the rendering of the corresponding response. It is passed to, and
- * potentially modified by, each phase of the request processing lifecycle.</p>
+ * <p><strong class="changed_modified_2_0">FacesContext</strong>
+ * contains all of the per-request state information related to the
+ * processing of a single JavaServer Faces request, and the rendering of
+ * the corresponding response. It is passed to, and potentially
+ * modified by, each phase of the request processing lifecycle.</p>
  *
  * <p>A {_at_link FacesContext} instance is associated with a particular
  * request at the beginning of request processing, by a call to the
@@ -79,9 +80,14 @@
 
 
     /**
- * <p>Return the {_at_link Application} instance associated with this
- * web application.</p>
- *
+ * <p><span class="changed_modified_2_0">Return</span> the {_at_link
+ * Application} instance associated with this web application.</p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, returns the correct current {_at_link
+ * javax.faces.application.Application} instance.</p>
+
      * @throws IllegalStateException if this method is called after
      * this instance has been released
      */
@@ -156,9 +162,17 @@
     }
     
     /**
- * <p>Return the {_at_link ExternalContext} instance for this
- * <code>FacesContext</code> instance.</p>
- *
+ * <p><span class="changed_modified_2_0">Return</span> the {_at_link
+ * ExternalContext} instance for this <code>FacesContext</code>
+ * instance.</p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this method returns an {_at_link ExternalContext} instance
+ * with the special behaviors indicated in the javadoc for that
+ * class. Methods document as being valid to call during
+ * application startup must be supported.</p>
+
      * @throws IllegalStateException if this method is called after
      * this instance has been released
      */
@@ -296,8 +310,14 @@
 
 
     /**
- * <p>Return the root component that is associated with the this request.
- * </p>
+ * <p><span class="changed_modified_2_0">Return</span> the root
+ * component that is associated with the this request. </p>
+
+ * <p class="changed_added_2_0">It is valid to call this method
+ * during application startup. If called during application
+ * startup, this method returns a new <code>UIViewRoot</code> with
+ * its locale set to <code>Locale.getDefault()</code>.</p>
+
      *
      * @throws IllegalStateException if this method is called after
      * this instance has been released
@@ -401,46 +421,18 @@
 
 
     /**
- * <p class="changed_modified_2_0">Return the {_at_link FacesContext} instance for the request that
- * is being processed by the current thread. If called during
- * application initialization, this method must return an instance
- * with the following behaviors.</p>
- * <div class="changed_modified_2_0">
- * <ol>
- *
- * <li><p><code>getApplication()</code> returns the correct current {_at_link
- * javax.faces.application.Application} instance.</p></li>
- *
- * <li><p><code>getViewRoot()</code> returns a new <code>UIViewRoot</code>
- * with its locale set to <code>Locale.getDefault()</code>
- *
- * <li><p><code>getExternalContext()</code> returns an
- * <code>ExternalContext</code> instance with the following
- * behaviors.</p></li>
- *
- * <ol type="a">
- *
- * <li><p><code>getApplicationMap()</code> returns a <code>Map</code> that
- * is backed by the same container context instance
- * (<code>ServletContext</code> or <code>PortletContext</code>) as the one
- * returned by calling <code>getApplicationMap()</code> on the
- * <code>ExternalContext</code> returned by the <code>FacesContext</code>
- * during an actual request.</p></li>
- *
- * <li><p><code>getInitParameter()</code> calls through to the actual
- * container context to return the init parameter value</p></li>
- *
- * <li><p><code>getInitParameterMap()</code> returns a <code>Map</code>
- * that is backed by the same container context instance
- * (<code>ServletContext</code> or <code>PortletContext</code>) as the one
- * returned by calling <code>getInitParameterMap()</code> on the
- * <code>ExternalContext</code> returned by the <code>FacesContext</code>
- * during an actual request.</p></li>
- *
- * </ol>
+ * <p class="changed_modified_2_0">Return the {_at_link FacesContext}
+ * instance for the request that is being processed by the current
+ * thread. If called during application initialization, any method
+ * documented as "valid to call this method during application
+ * startup" must be supported during application startup time. The
+ * result of calling a method during application startup time that
+ * does not have this designation is undefined.</p>
+
+ * <div class="changed_added_2_0"> <ol>
      *
      * <p>The behavior of calling any methods other than those specified
- * above, on a <code>FacesContext<code> instance obtained during
+ * above, on a <code>FacesContext</code> instance obtained during
      * startup time, is undefined.</p>
      * </div>
      */
Index: jsf-ri/src/com/sun/faces/application/resource/ResourceManager.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-ri/src/com/sun/faces/application/resource/ResourceManager.java,v
retrieving revision 1.5
diff -u -r1.5 ResourceManager.java
--- jsf-ri/src/com/sun/faces/application/resource/ResourceManager.java 25 Jan 2008 20:20:58 -0000 1.5
+++ jsf-ri/src/com/sun/faces/application/resource/ResourceManager.java 31 Jan 2008 05:14:53 -0000
@@ -261,7 +261,7 @@
                                                    Util.getCurrentLoader(ResourceManager.class));
                     localePrefix =
                           appBundle
- .getString("javax.faces.resource.localePrefix");
+ .getString(ResourceHandler.LOCALE_PREFIX);
                 } catch (MissingResourceException ignored) { }
         }
         return localePrefix;
-- 
| ed.burns_at_sun.com  | office: 408 884 9519 OR x31640
| homepage:         | http://purl.oclc.org/NET/edburns/
| aim: edburns0sunw | iim: ed.burns_at_sun.com