2016-05-05 4 views
0

私はジャージーのRESTサービスを持っていますが、@ pathparamをチェックするのに@NotNullを使用しますが、動作していないようです.pom.xmlにjersey-bean-validationを含めますジャージ@NotNullは入力をチェックしません

私のコードはここにある:クラスパスウィル上で、上記の依存関係を持つ、documentationによる

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

@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

を試してみては具体的なクラスに行く必要があります。 –

答えて

0

あなたがjersey-bean-validation依存関係を使用していることを確認l JerseyのBean検証機能を有効にします。

+0

はい、私はそれをpom.xmlに含めました – user468587

0

質問は超古いですので、あなたはおそらくすでに答えを発見した...

しかし、あなたはパラメータに@Valid注釈が欠落しています。

私は検証アノテーションを想像して、この

@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); 
} 
関連する問題