- - PR -
struts1.2)
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-04-19 13:56
お世話になります。
現在struts1.2、tomcat4.1.27で作成しています。 下記の<logic:iterateで括ったループの中に、<html:button 定義を作成しましたが うまくいかずに困っています。 ご教授の方、よろしくお願いします。 1.Result_01.jspについて 1_1.<logic:iterate定義の中に、<html:button定義を作成した。 1_2.<logic:iterate定義でのindexIdの値を、<bean:writeで表示したところ正常に表示した。 2.Result_02.jspについて 2_1.1_2で取得できたindexIdの値を、<html:button のonclickでパラメータとして 指定したところ、エラーになった。(エラーは下記記載) ※1_2で取得できた値なのでそのまま、使えそうな気がしましたがうまくいきませんでした。 ■Result_01.jsp ============================================================= <html:html> : <html:form method="post" action="/act"> <logic:iterate id="list" name="dynaForm" property="list" indexId="index" scope="session"> <table border="1"> <td><html:text name="list" property="name" indexed="true"/></td> <td><html:button value="更新" property="btnUpdate" indexed="true" onclick="btnUpdate('111')"/></td> <td><bean:write name="index"/></td> ←★このindexは0,1..と正しく表示されている </table> </logic:iterate> </html:form> : </html:html> ■Result_02.jsp ============================================================= <html:html> : <html:form method="post" action="/act"> <logic:iterate id="list" name="dynaForm" property="list" indexId="index" scope="session"> <table border="1"> <td><html:text name="list" property="name" indexed="true"/></td> ↓★indexの値をパラメータにした、onclick="btnUpdate(・・・にコードを書き換えるとjspを表示する際に、下記エラーになる <td><html:button value="更新" property="btnUpdate" indexed="true" onclick="btnUpdate('<bean:write name="index"/>')"/></td> <td><bean:write name="index"/></td> </table> </logic:iterate> </html:form> : </html:html> ■エラー ============================================================= HTTP Status 500 - -------------------------------------------------------------------------------- type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException: /jsp/ManagerTorok.jsp(61,119) 等号記号が必要です at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:94) at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:428) at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:126) at org.apache.jasper.compiler.Parser.parseAttribute(Parser.java:169) at org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:136) at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:718) at org.apache.jasper.compiler.Parser.parseElements(Parser.java:804) at org.apache.jasper.compiler.Parser.parseBody(Parser.java:833) at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:753) at org.apache.jasper.compiler.Parser.parseElements(Parser.java:804) at org.apache.jasper.compiler.Parser.parseBody(Parser.java:833) at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:753) at org.apache.jasper.compiler.Parser.parseElements(Parser.java:804) at org.apache.jasper.compiler.Parser.parseBody(Parser.java:833) at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:753) at org.apache.jasper.compiler.Parser.parseElements(Parser.java:804) at org.apache.jasper.compiler.Parser.parseBody(Parser.java:833) at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:753) at org.apache.jasper.compiler.Parser.parseElements(Parser.java:804) at org.apache.jasper.compiler.Parser.parse(Parser.java:122) at org.apache.jasper.compiler.ParserController.parse(ParserController.java:199) at org.apache.jasper.compiler.ParserController.parse(ParserController.java:153) at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:227) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:369) at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:432) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:356) at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1056) at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:388) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) at common.EncodingFilterCom.doFilter(EncodingFilterCom.java:27) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:601) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619) at java.lang.Thread.run(Unknown Source) -------------------------------------------------------------------------------- Apache Tomcat/4.1.27 | ||||
|
投稿日時: 2006-04-19 14:25
タグをネストできると考えるほうがおかしい
| ||||
|
投稿日時: 2006-04-19 15:13
ハツキタツミ様、早速の回答有難う御座います。
ご指摘の通り、タグをネストせず、 <html:button ・・・ onclick="btnUpdate('<%=index%>')"/> のように変更しました。 エラーは取れましたが、btnUpdateの実行先であるJavaScriptで function btnUpdate(index) { alert(index); } を実行させたところ、<%=index%>と表示されて値が取得できませんでした。 また、btnUpdate('<%=index%>') ⇒ btnUpdate(<%=index%>)に変更したところ jspの表示はされますが、alertが表示されなくなり buttonが機能しなくなりました。 原因の方がよく分かりません。 たびたび、すいませんがよろしくお願いします。 | ||||
|
投稿日時: 2006-04-20 02:02
まずは Struts の taglib を使わない、静的な html を書いてみましょう。
それから、今回の jsp より生成された html のソースを見てみましょう。 何がちがいますか? | ||||
|
投稿日時: 2006-04-20 12:56
インギさま、スレ有難う御座います。
色々試した見ましたが出来できず、 下記のコードで考えが止まってしまいました。 <html:button ・・・onclick="btnUpdate(\"+index+\")"/> これでは、的外れでしょうか? よろしくお願いします。 |
1