Provider org.apache.tomcat.websocket.WsContainerProvider not a subtype

本文解决了在Linux环境下使用Tomcat7时遇到的WebSocket问题。通过移除tomcat7-websocket.jar并添加依赖javax.websocket-api及tyrus-standalone-client,成功解决了java.util.ServiceConfigurationError错误。

今天在启动tomcat 遇到这个问题

java.util.ServiceConfigurationError: javax.websocket.ContainerProvider: Provider org.apache.tomcat.websocket.WsContainerProvider not a subtype

在网上查了一下 原来是tomcat 7运行在 linux上 Websocket jar不与标准的Tomcat安装打包在一起
(请参阅https://bugs.launchpad.net/ubuntu/+source/tomcat7/+bug/1326687

解决办法
1. 换成tomcat8 (本人未试过,网友试过说行的通)
2. 把tomcat/lib 下的tomcat7-websocket.jar 移走

mv /lib/tomcat7-websocket.jar /usr   #把lib下的这个jar包移到/usr目录下,(其实随便哪个目录,移走就行)

然后在该项目的pom.xml中添加

        <dependency>
            <groupId>javax.websocket</groupId>
            <artifactId>javax.websocket-api</artifactId>
            <version>RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.tyrus.bundles</groupId>
            <artifactId>tyrus-standalone-client</artifactId>
            <version>1.13.1</version>
        </dependency>

导入Tyrus独立客户端
问题解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值