Rest 404参数值中带小数点的Java EE Web服务GET请求出错

Rest 404参数值中带小数点的Java EE Web服务GET请求出错,rest,jakarta-ee,web-services,http-status-code-404,Rest,Jakarta Ee,Web Services,Http Status Code 404,我创建了一个Java无状态会话bean来向客户机提供RESTful服务,当我传入一个带有小数点的参数(特别是经度,例如150.318232)时,我会得到一个404NotFound erorr。如果传入的值是整数,则服务工作正常 下面是相关方法的代码片段——它最初是使用Netbeans向导生成的 @GET @Produces({"application/json"}) //, "application/xml" public MessagesConverter get(@Quer

我创建了一个Java无状态会话bean来向客户机提供RESTful服务,当我传入一个带有小数点的参数(特别是经度,例如150.318232)时,我会得到一个404NotFound erorr。如果传入的值是整数,则服务工作正常

下面是相关方法的代码片段——它最初是使用Netbeans向导生成的

@GET
    @Produces({"application/json"}) //, "application/xml"

    public MessagesConverter get(@QueryParam("start")
                                 @DefaultValue("0")
                                int start,
                                 ......

                                @QueryParam("longitude")
                                 @DefaultValue("-123456789")
                                long searchPointLongitude,
      ......
我尝试过对URL进行编码,以使句点/点以十六进制代码的形式提交,但这似乎仍然无法纠正问题

任何帮助都将不胜感激

干杯


Jin

不太可能,但请确保您的小数未使用端点不喜欢的区域设置呈现为字符串。我已经在本地语言环境中编写了使用句点(.)表示小数的代码,但后来在使用逗号(,)表示小数的语言环境中执行了该代码,这确实打乱了端点服务,即使是正确的URL编码。

在您的示例中,您的参数是一个长参数,我假设您正试图使用它来处理该查询参数。但是您传入的参数是double或float,而不是long。

您能显示请求URI吗?也许是那个。最后一个点是否没有跟随/并被解释为后缀分隔符?Hi Gandalf,我对参数使用了错误的数据类型-将其更改为双精度,效果良好。谢谢