Version 2

    @PathParam and PathSegments


    The specification has a very simple abstraction for examining a fragment of the URI path being invoked on


    public interface PathSegment {
         * Get the path segment.
         * <p>
         * @return the path segment
        String getPath();
         * Get a map of the matrix parameters associated with the path segment
         * @return the map of matrix parameters
        MultivaluedMap<String, String> getMatrixParameters();


    You can have Resteasy inject a PathSegment instead of a value with your @PathParam.


       public String getBook(@PathParm("id") PathSegment id) {...}


    This is very useful if you have a bunch of @PathParams that use matrix parameters.  The idea of matrix parameters is that they are an arbitrary set of name-value pairs embedded in a uri path segment.  The PathSegment object gives you access to theese parameters. See also MatrixParam.


    A matrix parameter example is:


    GET;name=EJB 3.0;author=Bill Burke


    The basic idea of matrix parameters is that it represents resources that are addressable by their attributes as well as their raw id.