2010-01-16 1 views
9

Сегодня этот человек сводит меня с ума. Начиная с обновления до Grails 1.2 и Weblogic 10.3, корневое сопоставление по умолчанию для «/» перестало работать. Вот что у меня есть ...По умолчанию Графическое отображение карт Grails не разрешилось должным образом

У меня есть этот URL отображения:

"/"(controller:"IGive", action:"index") 

У меня есть контроллер с именем IGiveController с закрытием индекса

def index = { 
    render "foo" 
} 

Когда я иду в приложении, запущенном в встроенный Tomcat и Jetty с http://localhost:8080/mycontext/ Я получаю свойство «foo». Но когда я строю войну и развернуть на WebLogic 10.3 я получаю 404.

Я понижен до Grails 1.1.2 и он все еще не работает на Weblogic 10.3, но ошибка была более описательный

Could not open ServletContext resource [/WEB-INF/grails-app/views/index.gsp] 

Поэтому кажется, что он полностью игнорирует мое сопоставление URL-адресов для «/», но другие сопоставления URL-адресов, которые работают глубже, работают. Любые подсказки ???

ответ

8

Я думаю, что это больше связано с Weblogic - я вижу то же самое на Weblogic 9.2 - но не на Tomcat или Jetty. Не ударил UrlMapping:

"/"(controller: 'home', action: 'index') 

Я думаю Weblogic это быть умным и преобразования/-> index.gsp, который затем возвращается обратно в 404.

Существует немного некрасиво обходной путь - просто добавить например:

"/index.gsp"(controller: 'home', action: 'index') 

и это похоже на трюк. У кого-нибудь есть лучший способ исправить это ???

+0

спасибо товарищу, ничего себе, ты только что сделал мой день! Я зарегистрировал ошибку в Jira позже сегодня – mbrevoort

+0

Это обходное решение также работало в развертывании wildfly8 .war, которое иначе отображало бы index.gsp при доступе к корню: '" /index.gsp"(view: "/ index") ' –

1

Возможно, это связано с ошибкой Grails 1.2. См. GRAILS-5609 и этот thread в форуме Grails. Это зафиксировано в 1.2.1. Кажется, что 1.2 ввел некоторые ошибки регрессии с UrlMappings ...

 Смежные вопросы

  • Нет связанных вопросов^_^