Spring и JSP

топ 100 блогов ru_java18.03.2010 Здравстуйте,

пишу своё первое более-менее серьёзное приложение на spring+spring security+jsp. До этого писал на php.

возникло два вопроса - как из jsp custom тега обратиться к элементу, переданному в модели. Второй - как обратиться на странице к методу объекта, переданного в модели.



пусть для примера у нас есть класс пользователя User


---

package ru.myapp.domain.User;

class User {
  protected String name;
  protected int id;
  protected String lastName;

  public String getName() {
    return name;
  }

  public void setName(String n) {
    name = n;
  }

  public int getId() {
    return id;
  }

  public void setId(int i) {
    id = i;
  }

  public String getLastName() {
    return lastName;
  }

  public void setLastName(String ln) {
    lastName = ln;
  }
}

---


а так же есть тег вроде

---

package students.web.tag;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.tagext.TagSupport;
public final class HelloTag extends TagSupport
{
   private User user = null;
   public int doStartTag() throws JspException
   {
      try {
         if(user == null) {
            pageContext.getOut().write("No user setted up!");
         }
         else {
            pageContext.getOut().write("User: name " + user.getName() + " , and other params");
         }
      }
      catch(IOException ioe) {
         throw new JspTagException(ioe.getMessage());
      }
      return SKIP_BODY;
   }
   public String getUser()
   {
      return user;
   }
   public void setUser(User user)
   {
      this.user = user;
   }
   public void release()
   {
      super.release();
      user = null;
   }
} 

---


Контроллер

---

@Controller
class UserController extends BaseController {
  @RequestMapping("/user/area.html")
  public void area(ModelMap model) {
    model.put("user", getCurrentUser());
  }
}

---


Чего хотелось бы (jsp):

---

1)

<%

out.write(user.getName());

%>

2)

<mytags:hello user="${user}" />

---




Вопрос как сделать пункты 1 и пункт 2? Вернее сказать, как для пункта 1 указать что user уже положен в модель (или как его взять из аттрибутов страницы)? Ну и как для п2 верно указать нужный параметр?

Оставить комментарий

Предыдущие записи блогера :
Архив записей в блогах:
Знают ли желающие подружиться потенциальные жж-френды, что есть здесь такие люди, как я, которые, получив уведомление о прифренде, если не первым, то вторым делом заглядывают в профиль блогера и смотрят сколько у того друзей. Если я вижу цифру 1000, 2500 и дальше, я не отвечу взаимностью. ...
Здрасте, товарищи! Всем шашлыка на даче! Один мой знакомый ™ давеча вкусно поужинал в кабаке, запивая антрекот пивасиком (1 л.), а примерно через 3.5 часа после этого поехал домой. Тут, как водится, господин полицейский (далее ГП), элегантный взмах ...
Сейчас я Вам похвастаюсь, потянуло меня чёт на лытбыр... Вот, напекла вчера вечером для себя любимой.)) И вот фиг бы сама тесто вчера начала ставить, да и специально бы в магазин за ним не пошла, а тут в нашем кафе его стали делать. Как тут можно отказаться, если тебе его привезут ...
Туника 1. В Древнем Риме: длинная одежда, носимая под тогой. 2. Лёгкое женское платье прямого покроя, плотно облегающее фигуру. Кисейная, муслиновая, батистовая т. Отони по гречески тонкое полотно,женское платье из него. От русского Тонкий . Официально русскому языку отказывают в праве ...
В Карелии участники автопробега, посвященного 70-летию Победы, застряли в грязи... Маршрут автопробега, состоявшегося 2 мая, проходил через город Лахденпохья, поселки Ихала, Куркиёки, Куликово, Хийтола и Элисенваара. Весь пусть преодолеть удалось не всем. "К Элисенваара подошли с больши ...