Tag: spring mvc

Spring Mvc java.io.FileNotFoundException – ApplicationContext.xml

applicationContext.xml在WEB-INF文件夹中,为什么我收到此错误: org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [applicationContext.xml]; nested exception is java.io.FileNotFoundException: class path resource [applicationContext.xml] cannot be opened because it does not exist 在web.xml org.springframework.web.context.ContextLoaderListener log4jConfigLocation /WEB-INF/classes/log4j.properties org.springframework.web.util.Log4jConfigListener org.springframework.web.context.ContextLoaderListener crimetrack org.springframework.web.servlet.DispatcherServlet 1 crimetrack *.htm index.jsp /spring /WEB-INF/tld/spring-form.tld

在Spring中validation数字

我对如何进行申请有一个基本的疑问。 我有一个表单,我需要validation所有输入是数字。 我在确定与表单相关的bean的属性类型时遇到问题。 我不知道是将它们设置为String还是加倍,原因如下: 如果我将它们设置为double:如果我在输入中输入一些不是数字的东西,当spring将输入填充到bean中时,我在JSP中得到一个Exception,它无法将其转换为double。 如果我将它们设置为String:我有一个很好的validation,虽然我必须稍后将它们更改为double。 但我的问题是这个bean存储在一个带有hibernate的数据库中,注释@column会将它存储为文本,我想将它存储为双倍。 是否有可能将列类型更改为双延迟类型? 在这种情况下,有没有人可以告诉我如何在此之前? 谢谢。

Org.hibernate.HibernateException:没有活动事务,createQuery无效

在这个问题之后 ,我试图将Hibernate 4.3.8.Final添加到Spring 4.1.5.RELEASE; 但是 – 代码抛出一个exception,因为跟随并且有时抛出 – 它无法找到hibernate的实体类(com.myproject.model.MyTable),尽管该类存在且位于com.myproject.model包中。 堆栈跟踪 org.hibernate.HibernateException: createQuery is not valid without active transaction at org.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:352) at com.sun.proxy.$Proxy40.createQuery(Unknown Source) at com.myproject.repository.TestRepImpl.get(TestRepImpl.java:21) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:136) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207) at com.sun.proxy.$Proxy33.get(Unknown Source) at com.myproject.service.TestServiceImpl.get(TestServiceImpl.java:17) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at […]

Spring安全删除用户 – 会话仍处于活动状态

我有一个简单的Spring安全应用程序和用户管理。 管理员应该能够在数据库上创建/更新/删除用户(通过hibernate)。 如果用户已更新,我正在重新加载当前登录的用户的身份validation。这是通过以下代码完成的(根据此示例): SecurityContextHolder.getContext().setAuthentication(updatedAuthentication); 我的问题是: 如果删除用户该怎么办? 如果我删除了一个用户,那么已经活动的会话仍处于活动状态 ,我不知道如何更新它们。 我仍然可以导航到我以前能够访问的每个页面。 有没有办法告诉spring会话应该重新validation还是类似的? 我错过了什么重要的事吗?

加载mvc-dispatcher-servlet.xml和applicationContext.xml?

我正在使用Spring 3 MVC。 我有mvc-dispatcher-servlet.xml和applicationContext.xml。 但是applicationContext.xml不加载只加载mvc-dispatcher-servlet.xml。 配置有问题吗? web.xml中 Archetype Created Web Application mvc-dispatcher org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:spring/mvc-dispatcher-servlet.xml 1 mvc-dispatcher *.do contextConfigLocation classpath:spring/extendedContext.xml org.springframework.web.context.ContextLoaderListener

Spring MVC多个servlet(Jersey,Dispatcher)问题

我的页面有一个DispatcherServlet,我的Jersey webservice有一个ServletContainer。 就像现在一样,没有页面正在渲染(404),但服务工作正常。 我怎么能一起运行它们? 我看到了这个线程如何在一个Spring应用程序中注册web.xml中的多个servlet似乎处理类似的问题,虽然那是关于CXF所以我不确定它是多么相关。 我还尝试了一个单独的Jersey-servlet.xml文件,但这使得页面和服务都停止工作。 从这一点开始不知道该去哪里,任何帮助都非常感激。 web.xml中: HSRMVC index.jsp HSR org.springframework.web.servlet.DispatcherServlet HSR *.html Jersey REST Service com.sun.jersey.spi.container.servlet.ServletContainer se.hsr.services HSRMVC Jersey REST Service /* HSR-sevlet.xml: 更新的web.xml HSRMVC index.jsp HSR org.springframework.web.servlet.DispatcherServlet 1 HSR *.html contextConfigLocation /resources/applicationContext.xml /WEB-INF/service-beans.xml service-beans com.sun.jersey.spi.container.servlet.ServletContainer se.hsr.services HSRMVC 2 service-beans /*

java.lang.IncompatibleClassChangeError:class org.springframework.core.type.classreading.ClassMetadataReadingVisitor

我正在通过链接中的相同示例开发Spring MVC JQGrid示例: https : //github.com/nurkiewicz/books 。 当我部署此代码时,我发现以下错误即将发生。 参考错误: java.lang.IncompatibleClassChangeError: class org.springframework.core.type.classreading.ClassMetadataReadingVisitor has interface org.springframework.asm.ClassVisitor as super class at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_45] at java.lang.ClassLoader.defineClass(ClassLoader.java:760) ~[na:1.8.0_45] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.8.0_45] at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2957) ~[catalina.jar:7.0.59] at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210) ~[catalina.jar:7.0.59] at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1690) ~[catalina.jar:7.0.59] at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571) ~[catalina.jar:7.0.59] at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_45] at java.lang.ClassLoader.defineClass(ClassLoader.java:760) ~[na:1.8.0_45] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.8.0_45] at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2957) ~[catalina.jar:7.0.59] at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210) […]

在我的服务层中传递http servlet响应是不好的做法?

在我的authenticationService的登录方法中,我需要创建一个cookie并在cookie中设置会话ID。 将请求对象传递给控制器​​操作中的服务层是不好的做法吗? public void login(String email, String password) { User user = someService.validate(email, password); if(user != null) { // create session // set cookie ???? } } 我的控制器操作将调用上面的登录方法,混淆我应该创建的位置并为我的cookie设置会话ID。 在服务层中使用它是有道理的,但是然后我的登录方法紧紧绑定到Web应用程序。 我这样做了吗?

Spring MVC错误:此请求标识的资源只能生成响应

当我在浏览器中调用此URL时: http://localhost:8080/app/foo.json Spring在此错误消息中响应406状态代码: 此请求标识的资源只能根据请求“accept”headers()生成具有不可接受特征的响应。 但是我已经定义了我的内容协商视图解析器,如下所示: 而我的控制器定义如下: @Controller @RequestMapping(value = “/foo”) public class ToowootController { @RequestMapping(method = GET) @ResponseBody public FooDTO index() { // return fooDTO } } 任何想法我做错了什么?

仅当没有Exception的映射时,才会调用@ExceptionHandler for Error

使用spring-web-4.2.6,我有以下Controller和ExceptionHandler: @ControllerAdvice public class ExceptionsHandler { @ExceptionHandler(Exception.class) public ResponseEntity HandleDefaultException(Exception ex) { … } @ExceptionHandler(InternalError.class) public ResponseEntity HandleInternalError(InternalError ex) { … } } @RestController @RequestMapping(“/myController”) public class MyController { @RequestMapping(value = “/myAction”, method = RequestMethod.POST) public boolean myAction() { throw new InternalError(“”); } } 出于某种原因,调用ExceptionsHandler的HandleDefaultException(对于Exception.class)方法,但类型为NestedServletException,而不是HandleInternalError调用。 删除默认调用时,将使用正确的InternalErrorexception调用IntenalError调用。 我不想删除默认调用,因为对我来说,拥有一个默认处理程序以便为我的用户提供更好的体验非常重要。 我在这里想念的是什么? 编辑: 显然我正在使用spring-web-4.3.3,而不是要求它。 我不明白为什么,这是我的Gradle依赖树: http : //pastebin.com/h6KXSyp2