[weld-dev] Invalid url Patterns for class org.jboss.weld.tests.scope.RemoteClient

Pete Muir pmuir at redhat.com
Tue Oct 5 02:58:04 EDT 2010


On 5 Oct 2010, at 07:15, Dan Allen wrote:

> On Tue, Oct 5, 2010 at 1:11 AM, Sreekanth <sreekanth.manga at gmail.com> wrote:
> 
> 
> On Sun, Oct 3, 2010 at 1:40 AM, Dan Allen <dan.j.allen at gmail.com> wrote:
> On Fri, Oct 1, 2010 at 9:44 AM, Pete Muir <pmuir at redhat.com> wrote:
> 
> On 1 Oct 2010, at 10:48, Sreekanth wrote:
> 
> > Hi,
> >
> > I am running the core tests from the workspace against glassfish.I have these question related to 2 tests.
> >
> > In the test, org.jboss.weld.tests.scope.RemoteScopeTest, there is a servlet by name RemoteClient using the annotation "@WebServlet("*")".
> 
> Not sure, but it's always worked with Tomcat/JBossWeb. I guess Grizzly doesn't support this?
> 
> >
> >
> > In the test resource.EMFFactoryTest, there are 3 servlets  EMFConsumerTest1, EMFConsumerTest2, EMFConsumerTest3 which uses the annotation  @WebServlet("emfconsumer") with out a leading "/" .
> >
> > Are these 2 test cases valid with respect to servlet specification?I guess these need to be rectified.Please comment.
> 
> As above?
> 
> According to 12.2 of the Servlet 3.0 specification (not likely to have changed since prior versions)
> 
> In the Web application deployment descriptor, the following syntax is used to define
> mappings:
> 	• A string beginning with a ‘/’ character and ending with a ‘/*’ suffix is used for path mapping.
> 	• A string beginning with a ‘*.’ prefix is used as an extension mapping.
> 	• The empty string ("") is a special URL pattern that exactly maps to the application's context root, i.e., requests of the form http://host:port/<context-root>/. In this case the path info is ’/’ and the servlet path and context path is empty string (““).
> 	• A string containing only the ’/’ character indicates the "default" servlet of that application. In this case the servlet path is the request URI minus the context path and the path info is null.
> 	• All other strings are used for exact matches only.
> So a * path and a path without a slash are likely only JBoss AS friendly.
>  
> Doesn't this break portability of apps? 

App servers are free to go beyond the spec if they choose, the spec only defines the minimum required behavior.


More information about the weld-dev mailing list