Tag: validation

基于注释的Spring beanvalidation

我正在研究一种基于注释的方法来使用spring模块validationSpring bean。 在本教程中 ,以下bean(省略了getters和setter)用作示例: public final class User { @NotBlank @Length(max = 80) private String name; @NotBlank @Email @Length(max = 80) private String email; @NotBlank @Length(max = 4000) private String text; } 如果违反特定validation规则,则使用的错误消息应遵循以下格式: bean-class.bean-propery[validation-rule]=Validation Error message 上面显示的类的示例包括: User.email[not.blank]=Please enter your e-mail address. User.email[email]=Please enter a valid e-mail address. User.email[length]=Please enter no more than {2} characters. […]

Spring MVC + Hibernate:数据validation策略

我们都知道,Spring MVC通常与Hibernate Validator和JSR-303很好地集成。 但正如有人所说,Hibernate Validator只适用于Bean Validation,这意味着应该将更复杂的validation推送到数据层。 此类validation的示例:业务密钥唯一性,内部记录依赖性(通常指向数据库设计问题,但我们都生活在一个不完美的世界)。 即使像字符串字段长度这样的简单validation也可能由某个DB值驱动,这使得Hibernate Validator无法使用。 所以我的问题是,Spring或Hibernate或JSR是否提供了执行此类复杂validation的function? 是否有一些已建立的模式或技术部分可以在基于Spring和Hibernate的标准Controller-Service-Repository设置中执行此类validation? 更新:让我更具体一点。 例如,有一个表单可以向控制器的save方法发送AJAX保存请求。 如果发生一些validation错误 – 简单或“复杂” – 我们应该回到浏览器,其中一些json指示有问题的字段和相关错误。 对于简单错误,我可以从BindingResult提取字段(如果有)和错误消息。 您会针对“复杂”错误提出什么样的基础设施(可能是特定的,而不是临时的例外?)? 使用exception处理程序对我来说似乎不是一个好主意,因为在save方法和@ExceptionHandler之间分离单个validation过程会使事情变得复杂。 目前我使用一些临时exception(如ValidationException ): public @ResponseBody Result save(@Valid Entity entity, BindingResult errors) { Result r = new Result(); if (errors.hasErrors()) { r.setStatus(Result.VALIDATION_ERROR); // … } else { try { dao.save(entity); r.setStatus(Result.SUCCESS); } except (ValidationException e) { […]

用户输入validation,强制执行仅包含字母的字符串

我试图在我的一个方法中建立一个用户输入validation系统…它工作正常到一个范围,但尽管代码,它仍然允许整数作为有效输入,我不希望它,我怎么能改变这段代码,只允许字母(字符串)作为有效输入。 我在这一点上感到困惑,我尝试使用这个系统整数,它完美无缺,但有字母,无济于事。 洞察? public class Player { private static String userName; private Scanner scan = new Scanner(System.in); private boolean validInput = false; public void createUser(){ do { System.out.println(“Please enter you name : “); if(scan.hasNextLine()){ userName = scan.nextLine(); validInput = true; } else { System.out.println(“You can only use letters!”); validInput = false; scan.next(); } } while […]

Struts 2validationxml中的特定操作

我想仅在动作类中validation特定方法。 行动方法是这样的。 public String add() throws Exception { // aflag = true; org.setAoName(aoName); orgBo.addOrg(org); orglist = orgBo.searchOrg(organisationSearch); setAoName(“”); setAflag(“viewaddorgs”); return “add”; } 问题是目前我在动作类中有很多动作方法。 当我调用这些方法时,它会validation此方法。 请帮我用xmlvalidation这个方法。 这是我的OraganisationAction-validation.xml : The name is required! The name is required! 这是我的jsp: struts xml : secondTemplate orgTemplate orgAddTemplate orgAddTemplate orgAddTemplate orgAddTemplate orgTemplate orgTemplate orgEditTemplate orgEditTemplate orgEditTemplate orgTemplate orgViewTemplate 它适用于注释,但xml尚未成功。

字符串索引超出范围:n

我每次执行它时都会遇到这个代码有点问题它给我一个错误字符串索引超出范围:’n’n – 是否。 在文本框中输入的与此代码相关的字符…(即文本框 – t2。)它停留在第一个文本框中,检查它不会转到下一个,如数组中所述。 Object c1[] = { t2.getText(), t3.getText(), t4.getText() }; String b; String f; int counter = 0; int d; for(int i =0;i<=2;i++) { b = c1[i].toString(); for(int j=0;j<=b.length();j++) { d = (int)b.charAt(j); if((d90)||(d122)) { counter++; } } } 它基本上是一个validation代码,我试图做没有例外和东西(仍在学习的过程:)) 非常感谢任何帮助。

JSF / Hibernate NotBlankvalidation

我有一个简单的JSF + RichFaces表单,有一些字段,显然是一个支持bean来存储它们。 在那个bean中,所有必需的属性都有validation注释(jsr303 / hibernate),但我似乎无法找到一个注释来检查属性(String)是否为空。 我知道spring模块中有@NotBlank注释,但JSF不支持springvalidation。 有没有简单的方法来检查它,还是我应该编写自己的注释? @Edit:我已经尝试过来自jsr303和hibernate的@NotNull和@NotEmpty,但是他们都失败了我仍然可以发送一个像“”这样的空白字符串。

根据Swagger定义validationREST消息

我在IBM Integration Bus中工作,我发现myslef需要validation我所接收的消息。 由于IIB在这方面不支持任何类型的validation,我想知道是否有任何外部库可以为我validation这些消息。 到目前为止,我发现了这个https://github.com/swagger-api/swagger-inflector/blob/master/README.md#payload-validation但是我想知道是否有更适合我需求的替代方案。 谢谢你的任何建议。

如何在Struts 2中正确validation字段

我想知道我在这里做错了什么: Required field (*) 8 8 ID must has 8 characters 因为,实际上我收到了这个错误: 错误com.opensymphony.xwork2.validator.AnnotationActionValidatorManager加载文件时捕获exception… / action / ServiceAction-findPets-validation.xml无效的validation类型:requiredString – field-validator 另外,我想知道如果进行ajax调用(并发送JSON数据)我可以validation这些数据的存在吗? 我的意思是通过.xmlvalidation器。 此外,如果我实现Validateable接口,每次请求到达此操作时,此方法将被触发? 有没有办法指定哪种动作方法呢?

证书签名validation失败

我的网站托管在亚马逊上。 它建立在java 1.4.2_13的微软版本上。 我注意到电子邮件没有出去。 我没有对代码进行任何更改。 我在亚马逊的网站上找到了这个文件,并按照他们的指示找出我们的java环境没有通过测试。 所以,我导入了新的ssl根证书。 我可以validation它是否在密钥库中,但是当我运行其shaTest并且仍然没有发送电子邮件时,我收到以下错误消息。 任何帮助表示赞赏。 谢谢! Exception in thread “main” javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: Certificate signature validation failed at com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl.a(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(Unknown Source) at com.sun.net.ssl.internal.ssl.SunJSSE_az.a(Unknown Source) at com.sun.net.ssl.internal.ssl.SunJSSE_az.a(Unknown Source) at com.sun.net.ssl.internal.ssl.SunJSSE_ax.a(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.j(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.b(Unknown Source) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source) at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect […]

如何将wsdl内部架构设置为Jaxb2Marshaller以validation我所做的每个post?

我正在使用SOAP Web服务,我必须在调用它之前validation每个xmlpost。 所以我正在使用: 用于生成POJO树结构的cxf-codegen-plugin 。 第三部分wsdl(xxxx-soap-service.wsdl) 一个实现WebServiceGatewaySupport spring接口的类来进行调用。 Jaxb2Marshaller spring marshaller / unmarshaller转换pojo < ··· xml 那么,我现在的代码片段是: applicationContext-xxxx-base.xml : XxxxMarshallerProperties ,用于配置marshaller / unmarshaller bean: // @Component公共类XxxxMarshallerProperties {@Autowired private ResourceLoader resourceLoader; public Resource getSchema() throws IOException, SAXException { WebServiceClient wscAnnotation = Service.class.getAnnotation(WebServiceClient.class); String wsdlLocationPath = wscAnnotation.wsdlLocation(); Resource wsdlResource = resourceLoader.getResource(wsdlLocationPath); final SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); URI […]