Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > проблемы с strurs


Автор: Fubu_By 27.9.2007, 04:55
пользуюсь для работы JBuilder9 там встроен strurs 1,0,2 всё работает, только не очень нравиться, подключил версию 1,2,4 перестал работать обработчик Action, запускаеться после ActionForms, но ничего не выполняет и в логи ничего не пишет. что может быть не так?

Автор: ekr 28.9.2007, 16:41
как метод Вашего action-a называется?
execute() или perform()?

Автор: Fubu_By 29.9.2007, 16:06
вот сам action, должен просто вывести 1111111, но ничего не выводит:

Код

package untitled1;

import org.apache.struts.action.*;
import javax.servlet.http.*;

public class Untitled1Action extends Action {
  public ActionForward perform(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
    /**@todo: complete the business logic here, this is just a skeleton.*/
    Untitled1ActionForm untitled1ActionForm = (Untitled1ActionForm) actionForm;
    System.out.print(1111111);
    throw new java.lang.UnsupportedOperationException("Method perform() not yet implemented.");
  }
}


вот ActionForm:
Код

package untitled1;

import org.apache.struts.action.*;
import javax.servlet.http.*;

public class Untitled1ActionForm extends ActionForm {
  private String name;
  private String url;
  public ActionErrors validate(ActionMapping actionMapping, HttpServletRequest httpServletRequest) {
    /**@todo: finish this method, this is just the skeleton.*/
    return null;
  }
  public void reset(ActionMapping actionMapping, HttpServletRequest httpServletRequest) {
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public String getUrl() {
    return url;
  }
  public void setUrl(String url) {
    this.url = url;
  }
}


Автор: ekr 29.9.2007, 16:12
Цитата(Fubu_By @  29.9.2007,  16:06 Найти цитируемый пост)
public ActionForward perform(

Переименуйте метод в execute(...)

Автор: Fubu_By 30.9.2007, 12:32
спасибо теперь всё работает.

а для чего нужно perform?

Автор: ekr 30.9.2007, 12:36
Цитата(Fubu_By @  30.9.2007,  12:32 Найти цитируемый пост)
а для чего нужно perform? 

До определенной версии Struts так назывался бизнес-метод action-a. Теперь он называется execute )))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)