error.marshalling.jaxb=Error marshalling JAXB object of type "{0}".
error.unmarshalling.jaxb=Error unmarshalling JAXB object of type "{0}".
unable.to.write.mimemultipart=Unable to write MimeMultipart content.
resource.method=Resource, {0}, with method, {1}
resource.not.acceptable={0}, is returning a MIME type, "{1}", that is not acceptable.
resource.mimetype.not.in.produceMime={0}, is returning a MIME type, "{1}", that is acceptable but not a member of @ProduceMime, {2}.
nested.error=NESTED ERROR: {0}.
failed.to.create.web.resource=Failed to create Web resource: {0}.
default.could.not.process.method=Default value, {0} could not be processed by method {1}.
default.could.not.process.constructor=Default value, {0} could not be processed by constructor {1}.
exception.invoking.resource.method=Exception invoking Web resource method.
illegal.initial.capacity=Illegal initial capacity: {0}.
illegal.load.factor=Illegal load factor: {0}.
error.processing.method=Error processing resource method, {0}, for ResourceMethodDispatchProvider, {1}.
generic.type.not.supported=Generic type, {0}, not support for parameter {1}.
not.valid.httpmethod=Method, {0}, annotated with {1} of resource, {2}, is not recognized as valid resource method.
not.valid.dynamicresolvingmethod=Method, {0}, annotated with URI template {1} of resource, {2}, is not recognized as valid Java method annotated with @Path.
quality.more.than.three=Quality value "{0}" has more than 3 digits after the decimal point.
quality.greater.than.one=Quality value "{0}" is greater than 1.
object.not.a.webResource=Object, "{0}": is not a Web resource since it is not annotated with @Path.
bad.uritemplate=Web resource, "{0}": URI template "{1}" of @Path could not be processed on Web resource.
bad.class.consumemime=Web resource, "{0}": MIME types "{1}" of @ConsumeMime could not be processed on Web resource.
bad.class.producemime=Web resource, "{0}": MIME types "{1}" of @ProcudeMime could not be processed on Web resource.
bad.method.httpmethod=Web resource, "{0}": HTTP method "{1}" of @HttpMethod could not be processed on method "{2}" of Web Resource.
bad.consumemime=Web resource, "{0}": HTTP method "{1}" of @HttpMethod could not be processed on method "{2}" of Web Resource.
bad.method.consumemime=Web resource, "{0}": MIME types "{1}" of @ConsumeMime could not be processed on method "{2} of Web Resource.
bad.method.producemime=Web resource, "{0}": MIME types "{1}" of @ProduceMime could not be processed on method "{2} of Web Resource.
illegal.config.syntax=Illegal configuration-file syntax.
illegal.provider.class.name=Illegal provider-class name: {0}.
provider.not.found=Provider {0} not found.
provider.could.not.be.created=Provider {0} could not be instantiated: {1}
no.webresourceclass.in.webxml=No "webresourceclass" specified in web.xml.
byte.array.cannot.be.null=data parameter, of type byte[], cannot be null.
bad.content.type=The HTTP header field "Content-Type" with value "{0}" could not be parsed.
bad.mime.type=The MIME type of the representation with value "{0}" could not be parsed.
bad.accept.field=The HTTP header field "Accept" with value "{0}" could not be parsed.
error.no.sub.res.method.locator.found=A resource class, {0}, does not have any resource method, sub-resource method, or sub-resource locator.
error.res.uri.path.required=A root resource class, {0}, MUST have a URI path.
error.res.uri.path.invalid=A root resource class, {0}, has an invalid URI path: {1}.
error.subres.loc.uri.path.invalid=A sub-resource locator, {0}, has an invalid URI path: {1}
error.subres.loc.has.entity.param=A sub-resource locator, {0}, can not have an entity parameter. Try to move the parameter to the corresponding resource method.
error.subres.method.uri.path.invalid=A sub-resource method, {0}, has an invalid URI path: {1}
error.get.returns.void=A HTTP GET method, {0}, MUST return a non-void type.
error.get.consumes.entity=A HTTP GET method, {0}, should not consume any entity.
error.subres.loc.returns.void=A sub-resource locator, {0}, MUST return a non-void type.
new.ar.created.by.introspection.modeler=A new abstract resource created by IntrospectionModeler: {0}
ambiguous.parameter=Parameter {1} of {0} MUST be only one of a path, query, matrix or header parameter. 
non.pub.res.method=A resource method, {0}, MUST be public scoped otherwise the method is ignored
non.pub.sub.res.method=A sub-resource method, {0}, MUST be public scoped otherwise the method is ignored
non.pub.sub.res.loc=A sub-resource locator, {0}, MUST be public scoped otherwise the method is ignored
fatal.issues.found.at.res.class=Fatal issues found at class {0}. See logs for more details.
web.app.already.initiated=Web application is already initiated.
no.root.res.in.res.cfg=The ResourceConfig instance does not contain any root resource classes.
root.res.no.public.ctor=A root resource, {0}, MUST have a public constructor
ambiguous.ctors=A root resource, {0}, has ambiguous constructors to use for initialization
ambiguous.srls=A resource, {0}, has ambiguous sub-resource locator for URI template {1}, which matches with template {2}
ambiguous.rms.in=A resource, {0}, has ambiguous resource method for HTTP method {1} and input mime-type: {2}. The problematic mime-type sets (as defined by @Consumes annotation at Java methods {3} and {4}) are {5} and {6}. This could cause an error for conflicting output types!
ambiguous.rms.out=A resource, {0}, has ambiguous resource method for HTTP method {1} and output mime-type: {2}. The problematic mime-type sets (as defined by @Produces annotation at Java methods {3} and {4}) are {5} and {6}
ambiguous.srms.in=A resource, {0}, has ambiguous sub-resource method for HTTP method {1}, URI path template {2}, and input mime-type: {3}. The problematic mime-type sets (as defined by @Consumes annotation at Java methods {4} and {5}) are {6} and {7}. This could cause an error for conflicting output types!
ambiguous.srms.out=A resource, {0}, has ambiguous sub-resource method for HTTP method {1}, URI path template {2}, and output mime-type: {3}. The problematic mime-type sets (as defined by @Produces annotation at Java methods {4} and {5}) are {6} and {7}
multiple.http.method.designators=A (sub-)resource method, {0}, should have only one HTTP method designator. It currently has the following designators defined: {1}
ambiguous.rr.path=A root resource, {0}, has a non-unique URI template {1}
sub.res.method.treated.as.res.method=A sub-resource method, {0}, with URI template, "{1}", is treated as a resource method