не работает action в struts
помогите найти ошибку
Add (файд ActionForm)
import org.apache.struts.action.*;
import javax.servlet.http.*;
public class Add extends ActionForm {
private String name;
private String url;
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;
}
public ActionErrors validate(ActionMapping actionMapping,
HttpServletRequest httpServletRequest) {
ActionErrors errors = new ActionErrors();
if ((name == null) || (name.length() < 1)){
errors.add("name", new ActionError("error.name.required"));
}
if ((url == null) || (url.length() < 1)){
errors.add("url", new ActionError("error.url.required"));
}
return errors;
}
public void reset(ActionMapping actionMapping, HttpServletRequest httpServletRequest) {
}
}
AddActoin (файл action)
import org.apache.struts.action.*;
import javax.servlet.http.*;
public class AddAction extends Action {
public ActionForward perform(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) {
/**@todo: complete the business logic here, this is just a skeleton.*/
Add add = (Add) actionForm;
System.out.print(add.getName());
throw new java.lang.UnsupportedOperationException("Method perform() not yet implemented.");
}
}
Add.jsp
<%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ page contentType="text/html; charset=windows-1251" %>
<html:html>
<head>
<title>
Add
</title>
</head>
<body>
<html:errors property="name"/>
<html:form action="/addAction.do" method="POST" focus="name">
<html:text property="name"/>
<br>
<html:errors property="url"/>
<html:text property="url"/>
<br>
<html:submit property="submit" value="Submit"/><br>
<html:reset value ="Reset"/>
</html:form>
</body>
</html:html>
config
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<form-beans>
<form-bean name="add" type="catalog.Add" />
</form-beans>
<action-mappings>
<action name="add" type="catalog.AddAction" input="/Add.jsp" path="/addAction" />
</action-mappings>
<message-resources parameter="resources.application"/>
</struts-config>
Все нормальное явские серверы приложений имеют отличные логи.
Насчет того, что параметры передаются нормально - это информация веб-отладчика?
П.С. Еще - у тебя экшн выполняет только одно действие? Просто обычно я не встречал такой реализации, чтобы целый класс экшена расходовался на 1 метод.
HttpConnector Opening server socket on all host IP addresses
Starting service Tomcat-Standalone
Apache Tomcat/4.0.6
WebappLoader[/struts]: Deploying class repositories to work directory E:\Documents and Settings\z\jbproject\Catalog\Tomcat\work\struts
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/ant-1.6.5.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\ant-1.6.5.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/ant-antlr-1.6.5.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\ant-antlr-1.6.5.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/ant-junit-1.6.5.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\ant-junit-1.6.5.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/ant-launcher-1.6.5.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\ant-launcher-1.6.5.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/ant-swing-1.6.5.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\ant-swing-1.6.5.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/antlr-2.7.6.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\antlr-2.7.6.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/antlr.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\antlr.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/asm-attrs.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\asm-attrs.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/asm.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\asm.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/c3p0-0.9.0.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\c3p0-0.9.0.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/cglib-2.1.3.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\cglib-2.1.3.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/checkstyle-all.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\checkstyle-all.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/cleanimports.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\cleanimports.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/commons-beanutils.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\commons-beanutils.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/commons-collections-2.1.1.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\commons-collections-2.1.1.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/commons-collections.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\commons-collections.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/commons-digester.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\commons-digester.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/commons-fileupload.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\commons-fileupload.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/commons-logging-1.0.4.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\commons-logging-1.0.4.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/commons-logging.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\commons-logging.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/commons-validator.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\commons-validator.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/concurrent-1.3.2.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\concurrent-1.3.2.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/connector.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\connector.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/dom4j-1.6.1.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\dom4j-1.6.1.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/ehcache-1.2.3.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\ehcache-1.2.3.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/hibernate3.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\hibernate3.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jaas.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jaas.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jacc-1_0-fr.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jacc-1_0-fr.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jakarta-oro.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jakarta-oro.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/javassist.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\javassist.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jaxen-1.1-beta-7.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jaxen-1.1-beta-7.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jboss-cache.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jboss-cache.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jboss-common.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jboss-common.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jboss-jmx.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jboss-jmx.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jboss-system.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jboss-system.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jdbc2_0-stdext.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jdbc2_0-stdext.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jgroups-2.2.8.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jgroups-2.2.8.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/jta.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\jta.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/junit-3.8.1.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\junit-3.8.1.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/log4j-1.2.11.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\log4j-1.2.11.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/mysqlconnectorjava5.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\mysqlconnectorjava5.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/oscache-2.1.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\oscache-2.1.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/proxool-0.8.3.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\proxool-0.8.3.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/struts.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\struts.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/swarmcache-1.0rc2.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\swarmcache-1.0rc2.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/syndiag2.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\syndiag2.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/versioncheck.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\versioncheck.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/xerces-2.6.2.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\xerces-2.6.2.jar
WebappLoader[/struts]: Deploy JAR /WEB-INF/lib/xml-apis.jar to E:\Documents and Settings\z\jbproject\Catalog\struts\WEB-INF\lib\xml-apis.jar
WebappLoader[/struts]: Reloading checks are enabled for this Context
StandardManager[/struts]: Seeding random number generator class java.security.SecureRandom
StandardManager[/struts]: Seeding of random number generator has been completed
ContextConfig[/struts]: Added certificates -> request attribute Valve
StandardWrapper[/struts:default]: Loading container servlet default
StandardWrapper[/struts:invoker]: Loading container servlet invoker
WebappLoader[]: Deploying class repositories to work directory E:\Documents and Settings\z\jbproject\Catalog\Tomcat\work
WebappLoader[]: Reloading checks are enabled for this Context
StandardManager[]: Seeding random number generator class java.security.SecureRandom
StandardManager[]: Seeding of random number generator has been completed
ContextConfig[]: Added certificates -> request attribute Valve
StandardWrapper[:default]: Loading container servlet default
StandardWrapper[:invoker]: Loading container servlet invoker
HttpConnector[8083] Starting background thread
Ты ж ошибку ловишь, так и ставь уровень логов - предупреждения и ошибки, или потом отдельно фильтруй вывод. Зачем тебе видеть информацию, что куча джарников была успешно задеплоена на сервак?
Вдобавок еще около каждого события не указано, какой оно имеет уровень корректности - непонятно как выбирать интересующие.
Если это основные логи томката, то имеет смысл задеплоить на сервак вроде SJSAS - там логи лучше, имхо :).
я мока не умею настраивать логи(((
да и дело в том эти логи выводяться до загрузки .jsp страници а когда данные передаются уже на action, то дальше никаких логов не выводиться...в этом вся и проблема, запускаеться пустая страница (с адресом action'а) без всяких ошибок(белый лист) и в консоль ничего не выводит, пробовал сделать чтобы при загрузки переходил на input, но никакого результата.
JBuilder9 - это среда разработки. А я говорю про сервер приложений (или, в данном случае верней, контейнер сервлетов) - это апач томкат, который встроен, по-моему, во все среды разработки, для проверки работы веб-приложений.
В верхней части лога же написано, что
Apache Tomcat/4.0.6
я мока не умею настраивать логи(((
По идее, их не надо настраивать вообще. Управление логами - это через консоль администрирования сервера приложений. На каком порту висит эта консоль у томката, поищи в интернете :) В нормальных логах должно быть то, что я перечислил, по дефолту, если в томкате такого нету - ставь нормальный сервер приложений, на который будешь деплоить свои приложения.
Для программирования логов используй классы java.util.logging.*. Если хочешь, пример кода логирования могу выложить.
да и дело в том эти логи выводяться до загрузки .jsp страници а когда данные передаются уже на action, то дальше никаких логов не выводиться...в этом вся и проблема, запускаеться пустая страница (с адресом action'а) без всяких ошибок(белый лист) и в консоль ничего не выводит, пробовал сделать чтобы при загрузки переходил на input, но никакого результата.
Ты в опере запускаешь? FireFox обычно пишет краткий стектрейс сервера, если программа падает. Попробуй еще поставить плагин FireBug, он обеспечивает интерактивную отладку для многих компонентов веб-приложений.
Результаты какие получил?