开发者社区> 问答> 正文

dubbo部署到tomcat启动后显示管理界面后点击任何按钮都报错,为什么?

screenshot
jdk是1.8 改了一些dubbo后台的依赖引入:
1、webx的依赖改为3.1.6版;

    <dependency>
        <groupId>com.alibaba.citrus</groupId>
        <artifactId>citrus-webx-all</artifactId>
        <version>3.1.6</version>
    </dependency>

2、添加velocity的依赖,我用了1.7;

    <dependency>
        <groupId>org.apache.velocity</groupId>
        <artifactId>velocity</artifactId>
        <version>1.7</version>
    </dependency>

3、对依赖项dubbo添加exclusion,避免引入旧spring

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>dubbo</artifactId>
        <version>${project.parent.version}</version>
        <exclusions>
            <exclusion>
                <groupId>org.springframework</groupId>
                <artifactId>spring</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

4、webx已有spring 3以上的依赖,因此注释掉dubbo-admin里面的spring依赖

    <!--<dependency>-->
        <!--<groupId>org.springframework</groupId>-->
        <!--<artifactId>spring</artifactId>-->
    <!--</dependency>-->

启动到dubbo后台首页正常,点击任何按钮就报错了
确认没有引进spring 3以下版本,没有citrus-webx-all冲突包,citrus-webx-all的jar包有在lib目录下
请大神帮忙解决下

展开
收起
落地花开啦 2016-06-03 17:55:51 4035 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    看了下Servlet3Util源码

    package com.alibaba.citrus.util.internal;  import static com.alibaba.citrus.util.Assert.*; import static com.alibaba.citrus.util.CollectionUtil.*;  import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.EventListener; import java.util.List; import javax.servlet.ServletOutputStream; import javax.servlet.WriteListener; import javax.servlet.http.HttpServletRequest;  import net.sf.cglib.reflect.FastClass; import net.sf.cglib.reflect.FastMethod;  

    /** * Servlet 3.0 Support - 即使在非servlet 3.0的环境中,也不会出错。 * 此类会引用如下几个Servlet 3.0的接口。在Servlet 2.5的环境中,接口由citrus-common-servlet项目提供。 * <ul> * <li><code>WriteListener</code></li> * </ul> * * @author Michael Zhou */ public class Servlet3Util {

    注释说明需要使用servlet3.0的版本,所以换了tomcat8,启动后正常

    servlet2.5版本是没有WriteListener类的

    2019-07-17 19:26:58
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Dubbo开源现状与2.7规划 立即下载
Dubbo分布式服务治理实战 立即下载
《Dubbo 3.0 前瞻》 立即下载