2016-05-05 6 views
0

Ich habe einen Jersey-REST-Service, und ich benutze @NotNull, um auf @pathparam zu überprüfen, aber es scheint nicht funktioniert.Ich habe Jersey-Bean-Validierung in pom.xml enthaltenTrikot @NotNull prüft nicht auf Eingabe

mein Code ist hier:

@Path("/resource") 
public class MyResource extends AbstractResource { 
    @POST 
    @Path("/report") 
    @Produces(MediaType.APPLICATION_JSON) 
    @Consumes(MediaType.APPLICATION_JSON) 
    @ResponseClass(ReportAcknowledgement.class) 
    public Response getGrowthResults(MyRequest request, 
            @Context HttpHeaders headers) throws Exception { 

     String organizationId = request.getOrganization(); <-- null here 
     .. 
     validateOrganization(organizationId); 


public abstract class AbstractResource { 
    .. 
    protected void validateOrganization(@NotNull(message = "{org.string.null}") @Valid String organizationId) throws Exception { 
     ... 
    } 
+0

ich die Validierung Anmerkung vorstellen müssen sich auf die konkrete Klasse gehen. –

Antwort

0

Stellen Sie sicher, Sie verwenden die jersey-bean-validation Abhängigkeit:

<dependency> 
    <groupId>org.glassfish.jersey.ext</groupId> 
    <artifactId>jersey-bean-validation</artifactId> 
    <version>2.22.2</version> 
</dependency> 

nach dem documentation, auf dem classpath wil die oben genannten Abhängigkeit l Aktivieren Sie die Bean Validation-Funktion auf Jersey.

+0

ja, ich habe es in meine pom.xml aufgenommen – user468587

0

Die Frage ist super-alt, so haben Sie wahrscheinlich gefunden bereits eine Antwort ...

Aber Sie sind auf dem Parameter, um die @Valid Anmerkung fehlt.

Versuchen Sie, diese

@POST 
@Path("/report") 
@Produces(MediaType.APPLICATION_JSON) 
@Consumes(MediaType.APPLICATION_JSON) 
@ResponseClass(ReportAcknowledgement.class) 
public Response getGrowthResults(@javax.validation.Valid MyRequest request, 
            @Context HttpHeaders headers) throws Exception { 
     String organizationId = request.getOrganization(); <-- null here 
     .. 
     validateOrganization(organizationId); 
}