精华内容
下载资源
问答
  • Servlet 注解 不生效

    千次阅读 2017-04-11 16:24:33
    @WebServlet注解是Web Servlet 3.0 的新功能 所以Web.xml version 3.0以下 的此功能是不生效的。 demo 如下即可正常工作: [code="java"] index.jsp [/code]...
    @WebServlet 此注解是Web Servlet 3.0 的新功能

    所以Web.xml version 3.0以下 的此功能是不生效的。
    demo 如下即可正常工作:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app
    version="3.1"
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">

    <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

    </web-app>

    展开全文
  • IDEA @WebServlet @WebListener @WebFilter 注解不生效 404 不能访问   @WebServlet("/LoginServlet") public class LoginServlet extends HttpServlet {  // codes .... } 之前在eclipse里可以...

    IDEA @WebServlet @WebListener @WebFilter 注解不生效 404 不能访问

     

    @WebServlet("/LoginServlet")
    public class LoginServlet extends HttpServlet {
        // codes ....
    }


    之前在eclipse里可以运行的项目,转到 idea 后,发现 WebServlet 注解 没有报红(可正常编译),但是不能访问
    http://localhost:8080/MyProject/LoginServlet
    返回404

    网上所有资料都是说要在项目的 Dependencies 把 tomcat 加入或 引入servlet.jar,其实这个操作只与编译有关,
    与不能访问 WebServlet 无关。

    因为 WebServlet 注解是 WEB Servlet 3.0 才支持的,打开 web.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
    <!-- codes -->
    </web-app>

    上面的 version="2.5" 怎么能支持 3.0 的协议呢?
    所以要改成3.0才行:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
             version="3.1">
    <!-- codes -->
    </web-app>

    至于在 eclipse 里能访问,而 IDEA 不能访问,说明 IDEA 对代码的控制更加严格

    展开全文
  • SpringBoot中@WebListener注解不生效

    千次阅读 2019-02-14 19:34:27
    原因:@WebListener注解的对象也需要装配。 处理方法: ...添加@ServletComponentScan注解后Servlet、Filter、Listener 可以直接通过 @WebServlet、@WebFilter、@WebListener 注解自动注册,无需其他代...

    原因:@WebListener注解的对象也需要装配。
    处理方法:

    方法1.为你的SpringBootApplication添加@ServletComponentScan注解,如图:

    添加@ServletComponentScan注解后Servlet、Filter、Listener 可以直接通过 @WebServlet、@WebFilter、@WebListener 注解自动注册,无需其他代码。

    方法2.在你的SpringBootApplication中添加如下方法为你的Listener(我的Listener叫SessionAttributeListener)装配

    @Bean
    public ServletListenerRegistrationBean servletListenerRegistrationBean(){
    	ServletListenerRegistrationBean servletListenerRegistrationBean = new ServletListenerRegistrationBean();
    	servletListenerRegistrationBean.setListener(new SessionAttributeListener());
    	return servletListenerRegistrationBean;
    }

     

    展开全文
  • @WebServlet(urlPatterns = "/hello2") public class Hello2Servlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, ...

    编写一个servlet类

    @WebServlet(urlPatterns = "/hello2")
    public class Hello2Servlet extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            PrintWriter writer = resp.getWriter();
            writer.println("hello2");
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            doGet(req, resp);
        }
    }
    

    但是在部署程序之后访问之,并没有任何效果,依然是404状态

    查看web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                          http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0"
             metadata-complete="true">
    </web-app>
    

    发现metadata-complete="true",将其修改为metadata-complete="false"
    metadata-complete="true"的时候不会开启扫描注解 所以才会产生错误,重新部署程序
    访问成功!

    展开全文
  • 从Servlet3.0开始支持使用注解进行配置:注解只是代替了一部分的web.xml的 配置,通常在针对单个Servlet的配置时(比如Servlet的资源名称)使用注解。web.xml:优势在于解决硬编码,...在Servlet类上贴@WebServlet...
  • Servlet3.0的注解无法生效解决方案

    千次阅读 2019-07-09 17:29:42
    这个问题是由于Servlet3.0之后的web.xml的文件头配置已经和之前的版本一样了,以下为Eclipse创建的Dynamic Web Project的web.xml文件,Servlet为2.5: <?xml version="1.0" encoding="UTF-8"?> <web-app ...
  • 1. 前言随着Spring的日渐臃肿,为了简化配置...平常我们用Spring Boot开发web应用。Spring mvc 默认使用tomcat servlet容器, 因为Spring mvc组件集成了spring-boot-starter-tomcat 。但是现在undertow servlet容器...
  • 405: get Method 不支持 webservlet不会配 @WebServlet注解使用不生效
  • Day33_servlet和jsp

    2020-01-16 11:42:25
    @WebServlet(“上下文路径”) 注意: 使用注解前,配置web.xml false表示启动注解 2.servlet-请求转发 地址栏没有变化【因为只发送了一次请求(多个Servlet用的是同一个请求对象)】 请求数据相同(同一个请求对象,...
  • 记一次spring切面不生效问题

    千次阅读 2020-02-13 13:48:11
    利用切面记录日志,需要拦截controller中的方法,但是切面一直不生效,之前一直把目光集中在是否表达式写错,或者少了配置。结果是父子容器问题。 上面是web.xml,servlet指向加载的xm就是加载再子容器中,这个子...
  • 在启动@webservlet注解的时候,需要配合web.xml配置文件属性才能生效,否则容易报如下访问错误: 需要将metadata-complete设置为false,或者设该属性。 metadata-complete属性讲解 S...
  • 2021-01-16

    2021-01-16 23:43:07
    idea 注解配置servlet映射不生效问题 servlet代码 @WebServlet(urlPatterns = "/hello") public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, ...
  • spring REST 能映射问题解决

    千次阅读 2016-08-11 17:44:15
    在J2EE项目中使用Spring 的REST注解,可以省去写...在一次应用中发现,有的Java项目中的REST注解不生效,不能自动映射,但有的Java项目中的REST注解能正常映射,后台打印出的提示消息如下: 17:41:24.347 [http-b
  • 项目原来可以启动部署,知道怎么突然启动报错,网上说是jdk版本一致,...在启动@webservlet注解的时候,需要配合web.xml配置文件属性才能生效,否则容易报如下访问错误: 需要将metadata-complete设置为false,...
  • 在一个SpringMVC的项目中,@Value注解在Controller层生效,但是在 Service层就无法注入成功。 问题分析: 1、首先看 web.xml 中Spring配置 <!-- springmvc配置开始 --> <servlet> <servlet-...
  • 2:通过@WebFilter注解生效 这里选择第一种,因为第二种能设置过滤器之间的优先级 为了演示优先级,这里创建2个测试过滤器类:Filter1、Filter2 通过实现javax.servlet.Filter接口,覆盖其doFilter(ServletRequest...
  • 1.1. 用了注解不生效 提示404 Not Found1 1.2. 路径不对了,开头多了个空格1 2. 500 Servlet Exception 没有生成servetl1 2.1. 其他 atitit.404错误的排查流程总结2 2.2. paip.http 404错误 的解决 错误原因 1....
  • 项目中的注解式事务配置不生效,在spring-mybatis文件中事务都已经配置好了但是就是不生效,最后发现是事务的加载顺序没有处理好,原因如下: 由于采用的是SpringMVC、 MyBatis,故统一采用了标注来声,明Service、...
  • <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <param-name>contextConfigLocation <param-value>classpath:spring/spring-*.xml <load-on-startup>1 ...
  • webservlet使用姿势 Servlet 212-web-listener 【web】listener知识点 Listener 219-web-asyn 【web】异步请求 AsyncContext方式 Callable WebAsyncTask DeferredResult 220-web-sse 【web】sse 服务器...
  • <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1 <param-name>contextConfigLocation <param-value>classpath:springServlet.xml </...
  • -- 使spring扫描包下的所有类,让标注spring注解的类生效 --> <mvc:annotation-driven></mvc:annotation-driven> <!-- 对转向页面的路径解析。prefix:前缀, suffix:后缀 --> ...
  • -- 加载controller的时候,加载service,因为此时事物并未生效,若此时加载了service,那么事物无法对service进行拦截 --> <context:component-scan base-package="org.jeecgframework.web.*,weixin.*"> ...
  • springboot参考指南

    2016-07-21 12:00:22
    设置生效的Spring profiles vi. 63.6. 根据环境改变配置 vii. 63.7. 发现外部属性的内置选项 iii. 64. 内嵌的servlet容器 i. 64.1. 为应用添加Servlet,Filter或ServletContextListener ii. 64.2. 改变HTTP端口 iii...
  • //设置页面缓存 session=request.getSession(); response.setHeader("Pragma", "No-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); // 在...

空空如也

空空如也

1 2
收藏数 31
精华内容 12
关键字:

webservlet注解不生效