- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
向addUser Controller 提交表单时发生异常
SEVERE: Servlet.service() for servlet dispatcherServlet threw exception org.springframework.validation.BindException: org.springframework.validation.BeanPropertyBindingResult: 1 errors Field error in object 'userBean' on field 'email': rejected value [hello]; codes [Email.userBean.email,Email.email,Email.java.lang.String,Email]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [userBean.email,email]; arguments []; default message [email]]; default message [Not a vaild Email Address] at org.springframework.web.method.annotation.ModelAttributeMethodProcessor.resolveArgument(ModelAttributeMethodProcessor.java:111) at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:75) at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:156) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:117) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:96) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:617) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:578) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:744)
获取表单的 Controller
@RequestMapping(method = RequestMethod.GET, value = "register")
public String addUser(Model model) {
if (!model.containsAttribute("wrongLink")) {
System.out.println("not wrong Link");
model.addAttribute(new UserBean());
} else {
System.out.println("wrong Link");
}
return "user/register";
}
Controller 发布表单
@RequestMapping(method = RequestMethod.POST, value = "register")
public String addUser(@Valid UserBean userBean, Model model,
RedirectAttributes redirectAttrs, BindingResult bindingResult) {
System.out.println("in addUser form");
if (bindingResult.hasErrors()) {
System.out.println("ERROR in user Form");
return "user/edit";
}
return "redirect:/users/" + user.getDisplayName();
}
UserBean 类
import org.hibernate.validator.constraints.Email;
public class UserBean {
private Integer id;
@Email(message = "Not a vaild Email Address")
private String email;
//getter and setter
}
表格
<div id="container">
<sf:form method="POST" modelAttribute="userBean">
<div class="form">
<sf:input path="email" type="text" id="email"
placeholder="email address" />
<sf:errors path="email" cssClass="error" />
<input class="send submit" type="submit" name="submit_first"
id="submit_first" value="" />
</div>
</sf:form>
</div>
Spring .xml
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"
xmlns:tx="http://www.springframework.org/schema/tx">
<context:component-scan base-package="com.example" />
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="${smtp.host}" />
<property name="port" value="${smtp.port}" />
<property name="username" value="${smtp.username}" />
<property name="password" value="${smtp.password}" />
<property name="javaMailProperties">
<props>
<!-- Use SMTP transport protocol -->
<prop key="mail.transport.protocol">smtp</prop>
<!-- Use SMTP-AUTH to authenticate to SMTP server -->
<prop key="mail.smtp.auth">true</prop>
<!-- Use TLS to encrypt communication with SMTP server -->
<prop key="mail.smtp.starttls.enable">true</prop>
<prop key="mail.debug">true</prop>
</props>
</property>
</bean>
<bean id="alertMailMessage" class="org.springframework.mail.SimpleMailMessage">
<property name="from" value="${alertMailMessage.from}" />
<property name="to" value="${alertMailMessage.to}" />
<property name="subject" value="${alertMailMessage.subject}" />
</bean>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- one of the properties available; the maximum file size in bytes -->
<property name="maxUploadSize" value="1000000" />
</bean>
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/pages/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
<mvc:resources mapping="/**" location="/resources/" />
<mvc:annotation-driven />
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>/WEB-INF/properties/database.properties</value>
<value>/WEB-INF/properties/smtp.properties</value>
</list>
</property>
</bean>
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.user}" />
<property name="password" value="${jdbc.password}" />
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="packagesToScan" value="com.example.model" />
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${hibernate.dialect}</prop>
<prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
<prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>
</props>
</property>
</bean>
<tx:annotation-driven transaction-manager="transactionManager" />
<bean id="transactionManager"
class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
为什么在输入无效电子邮件时会出现此异常,而不是必须执行验证。
最佳答案
在 Controller 的 addUser
方法中,您的 BindingResult
需要紧跟在 bean 之后:
public String addUser(@Valid UserBean userBean, BindingResult bindingResult,
Model model, RedirectAttributes redirectAttrs) {
...
}
关于java - Spring 验证异常 : BindException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29075047/
我已经在 JBoss Fuse 服务器中部署了一些 jar,它在端口 9001 和 9002 上公开了两个 rest 端点。现在我对源代码进行了一些更改,并想部署一个新的 jar。因为我正在进行热
我希望我的客户端应用程序能够连接到服务器应用程序。 问题是我的客户端不知道服务器 IP(在 LAN 中)。 所以我尝试使用java对象MulticastSocket。幸运的是,Oracle 有一个页面
我有 3 个服务器,我在这些服务器中运行以下代码。然而其中之一给出了错误: Exception in thread "main" java.net.BindException: Address alr
通过 java 发出出站请求时(使用 apache.commons.httpclient ),我得到 Permission denied 。以下是 jboss 日志中的根本原因: Caused by:
我正在尝试启动我的 elasticsearch 节点,但出现以下错误 Exception in thread "main" BindTransportException[Failed to bind
我的 serverThreadProc() 方法有问题。每当我运行它时,它都会抛出一个 BindException。认为 try block 的前两行可能存在问题。不知道我做错了什么。 private
当获得BindException时,有没有办法知道使用哪个端口?似乎表明有一个端口已被使用,但不知道是哪个端口。这对于加快调试速度很有用。 最佳答案 当您的程序尝试绑定(bind)到已在使用的端口时,
当我在输入字段中输入诸如“adsf”之类的字母时,spring 尝试将其绑定(bind)到“Code”对象的价格( double )属性,这会导致绑定(bind)异常。如果我想将该字段保留为 doub
我需要一些帮助,我想我遇到了一个简单的网络相关问题。通过了解没有被 .close() 处理的内容,它也将帮助我更好地理解所有这些是如何工作的。我敢肯定这很简单,但对我来说这一切都是全新的。这是客户端程
我理解为什么会发生绑定(bind)错误,但我已按照我能找到的任何解决方案进行操作,但无法使其正常工作。 堆栈跟踪 java.net.BindException: Address already in
向addUser Controller 提交表单时发生异常 SEVERE: Servlet.service() for servlet dispatcherServlet threw exceptio
我正在使用DIY catridge将uaa(https://github.com/cloudfoundry/uaa)部署到Openshift。在执行gradlew run时,出现以下错误: remot
我有一个带有发布请求的 Controller 。我正在尝试使用简单的 NotNull 注释来验证 POJO。我正在使用 ControllerAdvice 来处理异常。 @PostMapping("/s
我有一个带有发布请求的 Controller 。我正在尝试使用简单的 NotNull 注释来验证 POJO。我正在使用 ControllerAdvice 来处理异常。 @PostMapping("/s
我是套接字编程的新手,只是尝试编写一个小程序来了解套接字的工作原理。有一个客户端和一个服务器,我只是尝试从服务器加载一些字符串并显示。但是每次我创建一个服务器套接字时,即使我手动清理了finally
尝试在 openfire 中定义数据库设置时,出现以下错误(正如我在 error.log 文件中看到的那样) 2013.08.14 11:00:23 org.jivesoftware.openfire
我在运行 gwt 应用程序时遇到以下错误。 java.net.BindException: Address already in use: bind at sun.nio.ch.Net.bind(Na
我的网络有问题... protected Void doInBackground(Void... arg0) { int nreq = 1; Syste
我一直遇到这个错误:“新 ServerSocket 上的异常:java.net.BindException:无法分配请求的地址:JVM_Bind”。我尝试使用 netstat 来确保端口(1500)上
我在使用 Android 时看到了几个关于 SocketException 的问题,但没有一个问题涉及我在 list 中指定的 INTERNET 权限下得到的 BindException。 这是我的
我是一名优秀的程序员,十分优秀!