java - JBAS017354 : Could not find the port number listening for protocol javax. ws.rs.core.Application

标签 java web-services rest wildfly

我正在尝试在 Wildfly 服务器中部署 JAX-RS 注释的 war 。
下面是web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org /xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
    <servlet>
    <servlet-name>javax.ws.rs.core.Application</servlet-name>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>javax.ws.rs.core.Application</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>

我的服务类别:

@Path("/gms")
public class GmsService {

    @Path("/saveMS")
    @Consumes(MediaType.APPLICATION_JSON)
    public void saveMeasurements(MainBean mb){
        System.out.println(mb.getStationID());
        System.out.println(mb.getMeasurements().get(0));
    }
}

问题是由于以下错误而无法部署:
JBAS017354:找不到监听协议(protocol) javax.ws.rs.core.Application 的端口号

有什么想法吗?

最佳答案

我刚刚遇到了这个问题,这是我解决它的方法:

如果您查看此页面:http://fossies.org/linux/www/wildfly-8.0.0.Final-src.tar.gz/wildfly-8.0.0.Final-src/undertow/src/main/java/org/wildfly/extension/undertow/UndertowMessages.java

可以看到异常代码17354是“servletClassNotDefined”,所以只需要定义一个即可。

在 web.xml 中,按如下方式定义 servlet 类:

 <servlet>
    <servlet-name>javax.ws.rs.core.Application</servlet-name>
    <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>javax.ws.rs.core.Application</servlet-name>
    <url-pattern>/rest/*</url-pattern>
  </servlet-mapping>

它对我来说就像一种魅力。

希望对您有帮助!

瓦尔

关于java - JBAS017354 : Could not find the port number listening for protocol javax. ws.rs.core.Application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23759810/

相关文章:

java - 通过代码创建AEM包

java - 在 CircleCi 中从 Spring Boot 访问 PostgreSQL 9.6

java - ListView - getView 被调用太多次

php - 构建相当复杂的 PHP Web 服务的设计模式

ios - 在 Alamofire 中查询参数

javascript - 您如何保护浏览器使用的 RESTful API 免受 CSRF 攻击?

spring - 使用 Linkedin 的 Spring Social 将 LinkedIn JS API token 交换为 REST token

java - 获取方法输出参数参数

c# - WebService 和 Remoting 之间的区别

web-services - 如何将 URL 参数传递给 jersey web 服务,例如...?lib=T%E2che%20Yves