}
private void addExcluded(List<SecurityConstraintMetaData> securityContraints)
{
// security-constraint/ display-name = excluded
SecurityConstraintMetaData sc1 = new SecurityConstraintMetaData();
sc1.setDisplayName("excluded");
// web-resource-collection/web-resource-name = No Access
WebResourceCollectionMetaData wrc1 = new WebResourceCollectionMetaData();
wrc1.setName("No Access");
sc1.getResourceCollections().add(wrc1);
wrc1.getUrlPatterns().add("/excluded/*");
wrc1.getUrlPatterns().add("/restricted/get-only/excluded/*");
wrc1.getUrlPatterns().add("/restricted/post-only/excluded/*");
wrc1.getUrlPatterns().add("/restricted/any/excluded/*");
wrc1.getUrlPatterns().add("/excluded/*");
// web-resource-collection/web-resource-name = No Access
WebResourceCollectionMetaData wrc2 = new WebResourceCollectionMetaData();
wrc2.setName("No Access");
sc1.getResourceCollections().add(wrc2);
wrc2.getUrlPatterns().add("/restricted/*");
wrc2.getUrlPatterns().add("DELETE");
wrc2.getUrlPatterns().add("PUT");
wrc2.getUrlPatterns().add("HEAD");
wrc2.getUrlPatterns().add("OPTIONS");
wrc2.getUrlPatterns().add("TRACE");
wrc2.getUrlPatterns().add("GET");
wrc2.getUrlPatterns().add("POST");
// <auth-constraint />
AuthConstraintMetaData excluded = new AuthConstraintMetaData();
sc1.setAuthConstraint(excluded);
// user-data-constraint/transport-guarantee
UserDataConstraintMetaData none = new UserDataConstraintMetaData();
none.setTransportGuarantee(TransportGuaranteeType.NONE);
sc1.setUserDataConstraint(none);
securityContraints.add(sc1);
}