Подавление устаревших предупреждений в Xcode

В API-интерфейсе Servlet API не поддерживается шаблон подстановки шаблона URL * в середине отображения. Это разрешает только подстановочный символ * в конце отображения, например /prefix/* или в начале отображения, например *.suffix.

При стандартном разрешенном синтаксисе шаблона URL ваш лучший выбор для отображения его на /xyz/* и извлечения информации о пути с помощью HttpServletRequest#getPathInfo() .

Итак, с учетом /xyz/*, вот пример базового запуска, как извлечь информацию о пути, ошибки null и указатель массива из пределов проверки опущены:

String pathInfo = request.getPathInfo(); // /{value}/test
String[] pathParts = pathInfo.split("/");
String part1 = pathParts[1]; // {value}
String part2 = pathParts[2]; // test
// ...

Если вы хотите более тонкого контроля, как это возможно, с помощью Apache HTTPD mod_rewrite, тогда вы можете посмотреть на фильтр перезаписи URL-адреса Tuckey .

128
задан Ben Gottlieb 12 April 2010 в 12:33
поделиться

2 ответа

Попробуйте -Wno-deprecated-declrations или соответствующий ему параметр в Xcode, GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS (профессиональный совет: просто введите «устаревший» в настройках сборки, чтобы найти конкретный параметр за это предупреждение).

Текущие версии Xcode (например, Xcode 9.2):

enter image description here


Старые версии Xcode (например, Xcode 2.x, 3.x):

enter image description here

78
ответ дан 24 November 2019 в 00:34
поделиться

Вы также можете подавлять предупреждения для каждого файла, используя

#pragma GCC diagnostic ignored "-Wdeprecated-declarations"

что, в свою очередь, делает эту практику немного лучше, чем просто подавление всех предупреждений сразу и вместе... в конце концов, вы должны знать, для чего вы это делаете.

29
ответ дан 24 November 2019 в 00:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: