Как я могу использовать сервлет в моем приложении Grails? - PullRequest
5 голосов
/ 29 марта 2012

Мне нужно использовать некоторые разъемы, которые на самом деле являются сервлетами.Как я могу сделать это в Grails и как насчет web.xml?Как мне настроить URL сервлета?

На самом деле у меня здесь есть приложение Spring, и я пытаюсь преобразовать его в частичное приложение Grails.У меня есть сервлет-коннектор в приложении Spring, которое я хочу использовать здесь, но отображение необходимо для вызова сервлета в файле gsp.Как я могу это сделать?Мне нужно знать, где находится XML-файл в случае Grails.

Ответы [ 3 ]

8 голосов
/ 29 марта 2012

Чтобы получить файл web.xml, вы можете запустить:

grails install-templates

Затем файл можно найти в:

<yourapp>/src/templates/war/web.xml

Отредактируйте это как обычно, добавив секции <servlet> и <servlet-mapping>, затем введите свой код сервлета в:

<yourapp>src/java/your/package/structure/WhateverServlet.java

и тебе надо идти

3 голосов
/ 29 марта 2012

Если вы находитесь в Grails-плагине, то у вас есть определенное место в вашем *GrailsPlugin.groovy, где можно делать такие вещи.Например, посмотрите на автоматически сгенерированное замыкание:

def doWithWebDescriptor = { xml ->
   []
}

Здесь вы можете добавить свои собственные конфигурации сервлета:

    def servlets = xml.'servlet'
    servlets[servlets.size() - 1] + {
        servlet {
            'servlet-name'('yourName')
            'servlet-class'('yourpackage.YourClass')
        }
    }

    def mappings = xml.'servlet-mapping'
    mappings[mappings.size() - 1] + {
        'servlet-mapping' {
            'servlet-name'('yourName')
            'url-pattern'('/yourPattern/*')
        }
    }
0 голосов
/ 29 марта 2012

хорошие новости и плохие новости, и я сам задавал этот вопрос здесь раньше. В приложении Spring у вас может быть несколько уровней URI, таких как domain.com/abc/def/efg/abc vs grails, имеет много проблем со всем, кроме domain.com/controller/view. вот ссылка на мой оригинальный вопрос: Ошибка отображения URL Grails на GSP

Хорошей новостью является то, что вам не нужно иметь дело с отображением XML, Grails делает это, кажется, контроллерами и представлениями. Таким образом, вы почти ограничены domain.com/YouController/YourView/SomeParamteres ... но если это все, что вам нужно, все, что вам нужно сделать, это создать grails-app / Controller / SomethingController.groovy, и вы автоматически получите domain.com / Что-то

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...