users@javaserverfaces-spec-public.java.net

[jsr344-experts mirror] [jsr344-experts] Re: [719-ViewIdToResourcePath] Suggestion: Use ResourceHandler

From: Edward Burns <edward.burns_at_oracle.com>
Date: Wed, 7 Mar 2012 12:38:12 -0800

>>>>> On Thu, 1 Mar 2012 11:40:04 -0800, Edward Burns <edward.burns_at_oracle.com> said:

>>>>> On Thu, 1 Mar 2012 13:21:11 -0500, Neil Griffin <neil.griffin_at_portletfaces.org> said:
NG> However this would have small impact to the Portlet Bridge spec. It
NG> has a feature where the developer can pass a path-mapped view path
NG> with a request parameter, and the bridge is supposed to check all
NG> the servlet mappings and then verify the existence of the resource
NG> by calling ExternalContext.getResource(String). I suppose it could
NG> call the ResourceHandler instead.

EB> In fact, one of the reasons 719 and 809 was filed was that
EB> ExternalContext.getResource() was overloaded. So it's appropriate that
EB> the new way be consulted.

I have implemented in Mojarra the transition to use ResourceHandler to
load Facelets instead of ResourceResolver. But I came across an
automated test that had "/" in the resourceName. I thought we had
forbidden that character from being used in resourceName, but spec
2.6.1.3 says:

* There must be a '/' between adjacent segments in a
  <resourceIdentifier>.

Practically speaking this is a prohibition on using '/' in a
resourceName. The first bullet in 2.6.1.3 also mentions excluding the
path separator character. I want to be explicit about it.

Is it ok to explicitly state that '/' is not valid in a localePrefix,
libraryName, libraryVersion, resourceName, or resourceVersion?

If so, I'll have to fix this broken test.

Ed

-- 
| edward.burns_at_oracle.com | office: +1 407 458 0017
| homepage:               | http://ridingthecrest.com/