![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Dreamtraveler |
|
|||
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 23.11.2009 Репутация: нет Всего: нет |
Здравствуйте.
Дело было так: Исползовал спринг версии 2.5 и его класс SimplFormController. Теперь вышла версия 3.0 и в ней этот класс стал depricated. Хотелось бы узнать какой класс вместо него использовать теперь, от кого наследоваться лучше? Чтоб примерно таже функциональность была. ) |
|||
|
||||
garbuz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 677 Регистрация: 22.1.2008 Репутация: 8 Всего: 11 |
Сам с третьим спрингом еще не работал, но подозреваю что теперь там не надо наследоваться и имплементиться. Всем рулят аннотации.
|
|||
|
||||
Dreamtraveler |
|
|||
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 23.11.2009 Репутация: нет Всего: нет |
Неужели все так круто изменилось?
придеться документацию читать... Блин только что нибуть изучишь, бум все устарело ))). |
|||
|
||||
Dreamtraveler |
|
|||
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 23.11.2009 Репутация: нет Всего: нет |
А подскажите, еще такое. Как объявить два резольвера. Так чтобы они обрабатывали разные запросы. Например один обрабатывает xhtml а аторой jsp.
я делал так: <bean id="viewResolverOne" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass"> <value>org.springframework.web.servlet.view.JstlView</value> </property> <property name="order" value="1"/> <property name="prefix"> <value>/</value> </property> <property name="suffix"> <!--<value>.jsp</value>--> <value>.xhtml</value> </property> </bean> <bean id="viewResolverTwo" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass"> <value>org.springframework.web.servlet.view.JstlView</value> </property> <property name="order" value="2"/> <property name="prefix"> <value>/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean> не получается. |
|||
|
||||
garbuz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 677 Регистрация: 22.1.2008 Репутация: 8 Всего: 11 |
Насколько я помню, InternalResourceViewResolver выполняется последним и должен быть последним, первый всегда срабатывает, до второго даже не доходит. |
|||
|
||||
magicfly |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 21.2.2007 Репутация: 1 Всего: 1 |
Насколько я понимаю вопрос был в другом. Резолвер не занимается обработкой запроса. Он лишь составляет ответ на запрос. Кто чем будет выполнятся зависит от меппинга. Кстати проперти order определяет в какой последовательности будут вызываться резолверы. И лишь если в одном не нашел то будет вызывается другой.
Вроде так, поправьте насчет резолверов если я не прав |
|||
|
||||
garbuz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 677 Регистрация: 22.1.2008 Репутация: 8 Всего: 11 |
Грубо говоря резолвер нужен для того, чтобы контроллер смог передать модель данных той или иной вью, за поиск которой и отвечает резолвер. Проперти order действительно определяет порядок, однако в случает с InternalResourceViewResolver это не работает.
|
|||
|
||||
Dreamtraveler |
|
|||
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 23.11.2009 Репутация: нет Всего: нет |
Ага с резольверами разобрался.
Читаю документацию на Spring 3.0. Раньше я от SimpleFormController расширялся и все вызывалось "само", и валидация и initBinder. А вот теперь что получается мне при помощи аннотаций самому все вызывать? Я имею ввиду, что в SimpleFormController все по определенному сценарию вызывалось GET, POST и т.д. А теперь разработчики Spring все это в мои руки отдалию Странно... Может кто-нибудь мне это разъяснит. А то я на данном этапе не понимаю пока такого... ) |
|||
|
||||
garbuz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 677 Регистрация: 22.1.2008 Репутация: 8 Всего: 11 |
||||
|
||||
Dreamtraveler |
|
|||
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 23.11.2009 Репутация: нет Всего: нет |
А вот скажите, garbuz, помойму вы создавали когда-то посто вот с такой примерно проблеммой:
ERROR http-8084-2 ContextLoader:initWebApplicationContext:208 - Context initialization failed org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://java.sun.com/xml/ns/javaee] Offending resource: ServletContext resource [/WEB-INF/faces-config.xml] at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68) at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85) at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:80) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.error(BeanDefinitionParserDelegate.java:284) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1332) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1325) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:142) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:93) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:493) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149) at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:124) at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:93) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:458) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:388) at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:261) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:192) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3934) Вам удалось её решить? А то я не могу пока понять что за ошибка такая. Spring не хочет ужится с faces-config.xml файлом. Мне нужно определить такую конструкцию: <application> <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver> </application> Может её еще где можно определить? Или в аннотациях как-то. Я использую JSF 2.0 + Spring. Хочю чтоб JSF был как view а все остальное Spring. |
|||
|
||||
garbuz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 677 Регистрация: 22.1.2008 Репутация: 8 Всего: 11 |
Дайте ссылку на пост. С jsf точно не я создавал, я с jsf не работал.
|
|||
|
||||
MisterCleric |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 33 Всего: 38 |
Привет. всем.
Насчет ошибки даж не знаю что сказать? Я использую такую связку и проблем нету. Опишу что имею: 1. В либах имею такое jsf-api.jar jsf-impl.jar jstl.jar richfaces-api.jar richfaces-impl.jar richfaces-ui.jar spring-web.jar spring-webmvc.jar spring.jar standard.jar 2. faces-config.xml именно такой как описан. 3. В web.xml такое:
может быть быть проблема в том, что данный namespace действительно не принадлежит jsf 2.0? У него другой вид конфига должен быть? или SpringBeanFacesELResolver не подходит для jsf 2.0 ? -------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
|||
|
||||
Dreamtraveler |
|
|||
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 23.11.2009 Репутация: нет Всего: нет |
Ссылку дать немогу сечас, garbuz. Но там обсуждался Spring Securety. Не JSF. Просто ошибка похожая.
MisterCleric, я только начал знакомиться с JSF и поэтому возникают такие веселые проблеммы. Что касается того, что SpringBeanFacesELResolver не подходит для jsf 2.0, то я коментировал этистроки и оставлял только такое: <?xml version='1.0' encoding='UTF-8'?> <!-- =========== FULL CONFIGURATION FILE ================================== --> <faces-config version="2.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-face...p;quot;> <!--<application> <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver> </application>--> </faces-config> Ошибка не уходит. А вы какой JSF используете 1.2 или 2.0? У меня включены все библиотеки кроме: richfaces-api.jar richfaces-impl.jar richfaces-ui.jar Для чего они? Конфиги такие: web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_...p;quot;> <!-- <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_...;gt;--> <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/faces-config.xml, /WEB-INF/applicationContext.xml, /WEB-INF/classes/PlatsDatabase2.xml, /WEB-INF/classes/PlatsController1.xml, /WEB-INF/classes/PlatsForser2.xml </param-value> </context-param> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>WEB-INF/log4j.properties</param-value> </context-param> <!--<context-param> <param-name>log4jExposeWebAppRoot</param-name> <param-value>false</param-value> </context-param>--> <context-param> <param-name>webAppRootKey</param-name> <param-value>uniqueAppRootNamee</param-value> </context-param> <listener> <description>log4j - listener.</description> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener> <context-param> <param-name>javax.faces.PROJECT_STAGE</param-name> <param-value>Development</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <!--<init-param> <param-name>contextConfigLocation</param-name> <param-value/> </init-param>--> <load-on-startup>1</load-on-startup> </servlet> <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value/> </init-param> <load-on-startup>2</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>/faces/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <!--<url-pattern>*.htm</url-pattern>--> <url-pattern>*.usr</url-pattern> </servlet-mapping> <session-config> <session-timeout> 30 </session-timeout> </session-config> <welcome-file-list> <!--<welcome-file>welcomeGWT.html</welcome-file>--> <welcome-file>redirect.jsp</welcome-file> </welcome-file-list> <resource-ref> <description>Jnidi by me.</description> <res-ref-name>jdbc/TestDB</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> <res-sharing-scope>Shareable</res-sharing-scope> </resource-ref> </web-app> И еще такой вопрос в JSF 1.2 использовались JSP, в 2.0 уже facelets .xhtml. Так JSP признаны устаревшими форматом для JSF? Тогда как мне определить такую конструкцию: <link rel="STYLESHEET" href="<spring:theme code="styleSheet"/>" type="text/css"/> и подключить библиотеку : <%@taglib uri="http://www.springframework.org/tags" prefix="spring" %> для этого? |
|||
|
||||
garbuz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 677 Регистрация: 22.1.2008 Репутация: 8 Всего: 11 |
Dreamtraveler, я нашел тот пост, там дело в либах было, пост про секьюрити. Проверь еще раз свои либы, посмотри деплоятся ли они на сервер или нет.
|
|||
|
||||
MisterCleric |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 33 Всего: 38 |
Dreamtraveler, твоя ошибка вот здесь
это конфиг jsf, а не spring. его кушает javax.faces.webapp.FacesServlet А дальше они сами разруливают работу. Естественно, что для nameSpace="http://java.sun.com/xml/ns/javaee" у Spring нет хендлера Добавлено через 34 секунды да, richfaces - это конкретная реализация jsf -------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |