Переменная «приложение» в URL-шаблоне для сопоставления сервлета

StackOverflow https://stackoverflow.com/questions/2602264

Вопрос

Я изучаю весну MVC (и сервлеты в целом) и после примера Springsource MVC-AJAX, который использует аннотированные методы контроллера. Похоже, что есть только один URL-шаблон (в Web.xml) сопоставлен на сервлете в этом примере:

/приложение/*

Я развернул приложение в качестве файла войны, и фактический, уродливый URL, который я запрашиваю http://127.0.0.1:8080/org.springframework.samples.mvc.ajax-1.0.0-20100407.233245-1/account..

Итак, кажется, что «приложение» в «/ приложение / *» - это переменная, соответствующая «org.springframework.samples.mvc.cajax-1.0.0-20100407.233245-1 ', однако, это не универсально, потому что это не Используемый в моем собственном приложении, и это противоречит моему пониманию, что URL-шаблон содержит часть URL после Имя приложения. Итак, что такое «приложение»? Где он настроен?

Это было полезно?

Решение

Посмотреть на urlrewrite.xml. файл.

Это где определено, что все входящие URL (кроме тех, которые начинают с /styles/, /scripts/, /images/ ) будет переписан с /app/ с начала

<rule>
   <from>/**</from>
   <to>/app/$1</to>
</rule>

Поэтому, когда он достигает диспетчера сервлета, URL-адрес в форме /app/myOriginalPath.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top