]
Norman Richards commented on JBSEAM-2775:
-----------------------------------------
I didn't like this idea when I first saw it, but the more I think about it the more I
think it's a good thing. Originally we thought (or at least I did) that we'd end
up with more package-level metadata.
The only thing I might suggest is to not use arbitrary URLs. That seems confusing. Maybe
a more general URI? java:com.foo.bar or even seam:com.foo.bar? At the very least,
I'd suggest not being so general with the URLs. We don't need to support any
legacy URLs, so why not be more strict with the form? It'll make things easier to
improve on later if we want to make changes to how this works.
package-info.java should be optional:"convention over
configuration"
--------------------------------------------------------------------
Key: JBSEAM-2775
URL:
http://jira.jboss.com/jira/browse/JBSEAM-2775
Project: JBoss Seam
Issue Type: Feature Request
Reporter: Eric Jung
Currently, package-info.java is required when referring to custom Seam components in
components.xml. However, to further align Seam with the "convention over
configuration" philosophy, this file can be optional by making some assumptions:
1. In the absence of package-info.java , the XML namespace in components.xml for custom
components has a well-defined mapping to a Java package
2. This mapping can be defined as:
a. The XML namespace must be parsable by java.net.URL, otherwise automatic mapping is
aborted
a. Protocol (scheme), the www/ subdomain, port, query parameters, anchors (references),
and userInfo are ignored, if present.
b. The top-level domain becomes the root Java package
c. Subdomains become Java packages under the root package, applied in right-to-left
order as specified in the URI.
d. The path, as returned by URL.getPath(), is mapped to further Java packages such that
each path element becomes another Java package appended in left-to-right order
Examples:
http://www.company.com/department/product ==> com.company.department.product
https://company.com/department/product ==> com.company.department.product
ftp://www.company.org/department/product ==> org.company.department.product
abc://company.org/department/product ==> org.company.department.product
company.net/foo/bar/baz ==> net.company.foo.bar.baz
JIRA isn't displaying my last example correctly. See
http://pastebin.mozilla.org/375878 for the last example.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: