Я использую плагин Grails xfire, и я создал мобильный сервис, содержащий следующий код: services / MobileService.groovy
package survey
class MobileService {
static expose=['xfire'];
static transactional = true;
Choice getChoices(String questionTitle_){
return Questions.findByQuestionTitle(questionTitle_);
}
}
UrlMappings.groovy
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?"{
constraints {
controller(matches:/.*[^(services)].*/)
}
}
"/"(view:"/index")
"500"(view:'/error')
}
}
Я могу увидеть XML-содержимое файла WSDL здесь: http://127.0.0.1:8080/survey/services/mobile?wsdl Но я не могу прочитать его, используя мой клиент, и у меня возникает следующая ошибка :
Ошибка 2012-01-25 22: 42: 12,826 ["http-bio-8080" -exec-2] ОШИБКА [/survey].[XFireServlet] - Servlet.service () длясервлет [XFireServlet] в контексте с путем [/ survey] вызвал исключение. Сообщение: Нет значения для ключа [org.hibernate.impl.SessionFactoryImpl@4af6178d], привязанного к нити ["http-bio-8080" -exec-2] Line |Метод - >> 886 |RunTask в java.util.concurrent.ThreadPoolExecutor $ Worker - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |908 |запустить в '' ^ 680 |запустить .,в java.lang.Thread
После смены клиента выяснилось, что сервер и клиент SOAP теперь работают нормально.Эта ошибка не влияла на сервер.