#java #rest
#java #остальное
Вопрос:
curl -X ПОЛУЧАЕТ http://localhost:8080/julian/resources/MyRestService/convert/222
Сервер GlassFish с открытым исходным кодом версии 5.1.0 — отчет об ошибке
Статус HTTP 500 — внутренняя ошибка сервера
введите отчет об исключении
ошибка внутреннего сервера
описание Сервер столкнулся с внутренней ошибкой, которая не позволила ему выполнить этот запрос.
исключение
javax.servlet.Исключение ServletException: java.lang.StringIndexOutOfBoundsException: строковый индекс вне диапазона: 1
основная причина
java.lang.StringIndexOutOfBoundsException: строковый индекс вне диапазона: 1
обратите внимание, что полные трассировки стека исключения и его первопричины доступны в журналах GlassFish Server с открытым исходным кодом версии 5.1.0.
Сервер GlassFish с открытым исходным кодом версии 5.1.0
(база)
package book.jakarta.julian;
import javax.websocket.server.PathParam;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Application;
/**
*
* Rest Web Service
*
*/
@ApplicationPath("/resources")
@Path("MyRestService")
public class Julian extends Application {
// http://localhost:8080/julian/resources/MyRestService/convert/0123
@GET
@Produces("text/plain")
@Path("convert/{inNum : .*}")
public String add(
@PathParam("inNum") String inNum) {
// get first digit ignore rest
int intemp = Integer.parseInt(inNum.substring(0, 1));
return "" (intemp 3) ;
}
}
Комментарии:
1. верните число, чтобы сначала увидеть его значение, кажется, это пустая строка.
2. Вы правы с этим пересмотренным кодом, возвращаемое значение пустое, так почему же значения / 0123 не подобраны? // curl -X GET localhost:8080/julian/resources/MyRestService/convert/0123 @GET @Produce(«текст / обычный») @Path(«преобразовать /{inNum : .*}») общедоступная строка add( @PathParam(«inNum») Строка inNum) { return «» Бесчисленное количество; } }
3. Чего вы пытаетесь достичь, используя это регулярное выражение {inNum : .*}
4. Измените свое регулярное выражение на «convert/{inNum: . }»
5. Холодно, вы отвечаете на свой вопрос. Итак, чтобы помочь всем, у кого возникнут проблемы в будущем.