Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> spring + velocity 
V
    Опции темы
polosatij
  Дата 2.12.2008, 02:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: 3
Всего: 8





ех.. никто не подкажет, какую-нибудь путёвую статью про spring + velocity.. желательно было бы просто кусок простого кода, что можно было бы скачать, посмотреть и самому разобраться, как оно связывается и как работает..
что-то никак не могу связать их  smile  smile 


--------------------
PM   Вверх
Asal
Дата 2.12.2008, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 288
Регистрация: 26.12.2006
Где: Минск

Репутация: 4
Всего: 7



RTFM  smile, там все написано + imagedb из примеров к Spring
А если пару кусков кода, то
xxx-servlet.xml
Код

  <bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
    <property name="resourceLoaderPath" value="/WEB-INF/pages/"/>
  </bean>

<bean id="velocityResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
    <property name="cache" value="true"/>
    <property name="prefix" value=""/>
    <property name="suffix" value=".vm"/>
  </bean>

Код

  @RequestMapping("/news/news.form")
  public ModelAndView newsForm(@RequestParam(value = "id", required = false) Integer id) {
    if (id != null) {
      HashMap<String, Object> map = new HashMap<String, Object>(1);
      try {
        ArticleEntity article = articleService.findById(id);
        map.put("article", article);
        return new ModelAndView("newsForm", map);
      } catch (NoEntityException e) {
        logger.debug(e);
      }
    }
    return new ModelAndView("newsForm");
  }

ну и собсна должен быть шаблон /WEB-INF/pages/newsForm.vm

Это сообщение отредактировал(а) Asal - 2.12.2008, 10:27


--------------------
PM MAIL ICQ   Вверх
polosatij
Дата 2.12.2008, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: 3
Всего: 8






Цитата(Asal @  2.12.2008,  10:25 Найти цитируемый пост)
RTFM  


угу.. только де его взять? я что-то вчера магических слов для гоогля не нашёл.. всё какие-то старые статьи..  smile 

а как web.xml должен выглядеть, не подскажешь?  smile 



--------------------
PM   Вверх
Asal
Дата 2.12.2008, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 288
Регистрация: 26.12.2006
Где: Минск

Репутация: 4
Всего: 7



Цитата(polosatij @  2.12.2008,  11:03 Найти цитируемый пост)
а как web.xml должен выглядеть, не подскажешь? 

да ничего особенного
Код

  <servlet>
    <servlet-name>xxx</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>xxx</servlet-name>
    <url-pattern>*.do</url-pattern>
    <url-pattern>*.form</url-pattern>
    <url-pattern>/index.html</url-pattern>
  </servlet-mapping>


Цитата(polosatij @  2.12.2008,  11:03 Найти цитируемый пост)
угу.. только де его взять? я что-то вчера магических слов для гоогля не нашёл.. всё какие-то старые статьи.. 

собсна вот, она же есть в дестрибутиве Sring


--------------------
PM MAIL ICQ   Вверх
polosatij
Дата 2.12.2008, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: 3
Всего: 8



Цитата(Asal @  2.12.2008,  11:08 Найти цитируемый пост)
собсна вот, она же есть в дестрибутиве Sring 


хм.. а где там velocity + spring нормально описано? я вчера обыскался..  smile 



--------------------
PM   Вверх
Asal
Дата 2.12.2008, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 288
Регистрация: 26.12.2006
Где: Минск

Репутация: 4
Всего: 7



Цитата(polosatij @  2.12.2008,  11:15 Найти цитируемый пост)
я вчера обыскался..

14.4. Velocity & FreeMarker


--------------------
PM MAIL ICQ   Вверх
polosatij
Дата 2.12.2008, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: 3
Всего: 8



еееееееееех..  smile что-то не складывается чего-то у меня..  smile 

итак.. web.xml

Код

<?xml version="1.0" encoding="UTF-8"?>
<web-app 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_2_5.xsd"
    version="2.5">

    <servlet>
        <servlet-name>spring</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>spring</servlet-name>
        <url-pattern>*.vm</url-pattern>
    </servlet-mapping>

</web-app>


sprint-servlet.xml

Код

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

    <!--
        This bean sets up the Velocity environment for us based on a root path
        for templates. Optionally, a properties file can be specified for more
        control over the Velocity environment, but the defaults are pretty
        sane for file based template loading.
    -->
    <bean id="velocityConfig"
        class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
        <property name="resourceLoaderPath" value="/WEB-INF/velocity/" />
    </bean>

    <!--

        View resolvers can also be configured with ResourceBundles or XML
        files. If you need different view resolving based on Locale, you have
        to use the resource bundle resolver.
    -->
    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
        <property name="cache" value="true" />
        <property name="prefix" value="" />
        <property name="suffix" value=".vm" />
    </bean>

</beans>




структура:

WEB-INF/
              /lib/
                   /velocity-1.5.jar
                   /spring.jar
                   /spring-webmvc.jar
                   /servlet-api.jar
                   /commons-lang-2.4.jar
                   // и другие
             /velocity/
                          /welcome.vm   // просто тест внутри
             /spring-servlet.xml
             /web.xml

есть ещё SpringController.java

Код

package com.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.velocity.app.VelocityEngine;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;
import org.springframework.web.servlet.view.velocity.VelocityView;

public class SpringController extends AbstractController {
    VelocityEngine velocityEngine;

    protected ModelAndView handleRequestInternal(HttpServletRequest arg0,
            HttpServletResponse arg1) throws Exception {

        VelocityView view = new VelocityView();
        view.setVelocityEngine(velocityEngine);
        view.setEncoding("UTF-8");
        view.setUrl("welcome.vm");
        return new ModelAndView(view);
    }

    public VelocityEngine getVelocityEngine() {
        return velocityEngine;
    }

    public void setVelocityEngine(VelocityEngine velocityEngine) {
        this.velocityEngine = velocityEngine;
    }
    
}


т.к. со Spring-ом я не сильно знаком, думаю, что не хватает связки на этот контроллер.. чего-то мне не нравится в этой структуре.. не могу понять только что.. где-то чего-то точно не хватает..

открываю по адресу:

http://localhost:8888/ti-velocity/example.vm

получаю 404.. лог пуст.. где, чего не хватает?  smile

Добавлено через 2 минуты и 14 секунд
Цитата(Asal @  2.12.2008,  10:25 Найти цитируемый пост)
+ imagedb из примеров к Spring


млин.. ты знаешь.. как года три назад открыл книгу, стало не понятно.. вот до сих пор.. теперь опыта по больше, решил посмотреть Spring, книгу себе купил.. вроде всё понятно.. всё логично.. но, млин, постоянно грабли какие-то и не пойму где.. не могу найти я imagedb, де ты его выкопал, где линк на примеры?  smile  smile  smile 


--------------------
PM   Вверх
Asal
Дата 2.12.2008, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 288
Регистрация: 26.12.2006
Где: Минск

Репутация: 4
Всего: 7



Код

protected ModelAndView handleRequestInternal(HttpServletRequest arg0,
            HttpServletResponse arg1) throws Exception {

        return new ModelAndView("welcome");
    }


Цитата(polosatij @  2.12.2008,  16:36 Найти цитируемый пост)
де ты его выкопал, где линк на примеры?

качаешь Spring (я качал пакет "with dependence") там в папке samples примеры


--------------------
PM MAIL ICQ   Вверх
polosatij
Дата 2.12.2008, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: 3
Всего: 8





не хватало:

Код

    <bean id="exampleController" class="com.controller.SpringController" />

    <bean id="urlMapping"
        class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        <property name="mappings">
            <props>
                <prop key="/welcome.vm">exampleController</prop>
            </props>
        </property>
    </bean>


в spring-servlet.xml  smile 


--------------------
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0866 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.