thedeathorg.org/ <<<<<...

这个错误很莫名,请解惑,谢谢! - ITeye问答
============报错====================严重: Servlet.service() for servlet [jsp] in context with path [/doubleselect] threw exception [/doubleselect.jsp(79,52) Unterminated &s:doubleselect tag] with root causeorg.apache.jasper.JasperException: /doubleselect.jsp(79,52) Unterminated &s:doubleselect tag at org.piler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) at org.piler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) at org.piler.ErrorDispatcher.jspError(ErrorDispatcher.java:132) at org.piler.Parser.parseOptionalBody(Parser.java:994) at org.piler.Parser.parseCustomTag(Parser.java:1272) at org.piler.Parser.parseElements(Parser.java:1449) at org.piler.Parser.parseBody(Parser.java:1657) at org.piler.Parser.parseOptionalBody(Parser.java:1004) at org.piler.Parser.parseCustomTag(Parser.java:1272) at org.piler.Parser.parseElements(Parser.java:1449) at org.piler.Parser.parse(Parser.java:133) at org.piler.ParserController.doParse(ParserController.java:216) at org.piler.ParserController.parse(ParserController.java:103) at org.piler.generateJava(Compiler.java:167) at org.pile(Compiler.java:306) at org.pile(Compiler.java:286) at org.pile(Compiler.java:273) at org.apache.pile(JspCompilationContext.java:566) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:428) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:140) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662)
==============doubleselect.jsp====================&%@ page language="java" import="java.util.*" import="struts2.doubleselect.data.*" contentType="text/ charset=gb2312"
pageEncoding="gb2312"%&&!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""&&html&&head&&meta http-equiv="Content-Type" content="text/ charset=gb2312"&&title&Insert title here&/title&&/head&&body&&%
Map&SysDepartment, List&ErmEmployee&& map = new HashMap&SysDepartment, List&ErmEmployee&&();//map集合,key映射部门,value映射该部门下的员工
SysDepartment d1=new SysDepartment();
d1.setDptId(1);
d1.setDptName("销售一部");
SysDepartment d2=new SysDepartment();
d2.setDptId(2);
d2.setDptName("网络一部");
SysDepartment d3=new SysDepartment();
d3.setDptId(3);
d3.setDptName("IT中心");
List&ErmEmployee& elist1=new ArrayList&ErmEmployee&();//用list保存一个部门的所有员工
ErmEmployee e1=new ErmEmployee();
e1.setEplId(1);
e1.setUserName("张三");
ErmEmployee e2=new ErmEmployee();
e2.setEplId(2);
e2.setUserName("李四");
ErmEmployee e9=new ErmEmployee();
e9.setEplId(9);
e9.setUserName("巩利");
ErmEmployee e10=new ErmEmployee();
e10.setEplId(10);
e10.setUserName("赵薇");
ErmEmployee e11=new ErmEmployee();
e11.setEplId(11);
e11.setUserName("刘德华");
elist1.add(e1);
elist1.add(e2);
elist1.add(e9);
elist1.add(e10);
elist1.add(e11);
List&ErmEmployee& elist2=new ArrayList&ErmEmployee&();
ErmEmployee e3=new ErmEmployee();
e3.setEplId(3);
e3.setUserName("王五");
ErmEmployee e4=new ErmEmployee();
e4.setEplId(4);
e4.setUserName("刘六");
ErmEmployee e5=new ErmEmployee();
e5.setEplId(5);
e5.setUserName("吴邦国");
elist2.add(e3);
elist2.add(e4);
elist2.add(e5);
List&ErmEmployee& elist3=new ArrayList&ErmEmployee&();
ErmEmployee e6=new ErmEmployee();
e6.setEplId(6);
e6.setUserName("张学友");
ErmEmployee e7=new ErmEmployee();
e7.setEplId(7);
e7.setUserName("关芝琳");
ErmEmployee e8=new ErmEmployee();
e8.setEplId(8);
e8.setUserName("吴京");
elist3.add(e6);
elist3.add(e7);
elist3.add(e8);
//在map中保存部门和对应的员工
map.put(d1,elist1);
map.put(d2,elist2);
map.put(d3,elist3);
//将map放到request范围
request.setAttribute("map", map);
& prefix="s" uri="/struts-tags" %&&s:form action="doubleSelectPost" name="form1"&
&s:doubleselect formName="form1" label="业务员" list="#request.map.keySet()" name="dptId" id="comboId" listKey="dptId" listValue="dptName" doubleName="eplId" doubleId="comboDoubleId" doubleList="#request.map[top]" doubleListKey="eplId" doubleListValue="userName"&
&/s:doubleselect&&/s:form&
&/body&&/html&
=============web.xml===========&?xml version="1.0" encoding="UTF-8"?&&web-app xmlns:xsi="" xmlns="" xmlns:web="" xsi:schemaLocation=" " id="WebApp_ID" version="2.5"&
&filter-name&Struts2&/filter-name&
&filter-class&org.apache.struts2.dispatcher.FilterDispatcher&/filter-class&
&filter-mapping&
&filter-name&Struts2&/filter-name&
&url-pattern&/*&/url-pattern&
&/filter-mapping&
&welcome-file-list&
&welcome-file&/doubleselect.jsp&/welcome-file&
&/welcome-file-list&&/web-app&
======================struts.xml===================&?xml version="1.0" encoding="UTF-8" ?&&!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
""&&struts&
&constant name="struts.devMode" value="true" /&
&constant name="struts.locale" value="zh_CN"/&
&constant name="struts.i18n.encoding" value="gb2312"/&
&constant name="struts.custom.i18n.resources" value="message"/&
&include file="struts_resulttest.xml"/&
&include file="struts_ognl.xml"/&
&package name="hw"
extends="struts-default"&
&global-results&
&result &/doubleselect.jsp&/result&
&/global-results&
&/package&&/struts&
======================ErmEmployee.java===============package struts2.doubleselect.public class ErmEmployee{
private Integer eplId;//员工id
private String userN//员工名称
//getter,setter方法
/** * @return the eplId */public Integer getEplId() { return eplId;}/** * @param eplId the eplId to set */public void setEplId(Integer eplId) { this.eplId = eplId;}/** * @return the userName */public String getUserName() { return userN}/** * @param userName the userName to set */public void setUserName(String userName) { this.userName = userN}}
========================SysDepartment.java==============package struts2.doubleselect.public class SysDepartment{
private Integer dptId;//部门id
private String dptN//部门名称
//getter,setter方法
/** * @return the dptId */public Integer getDptId() { return dptId;}/** * @param dptId the dptId to set */public void setDptId(Integer dptId) { this.dptId = dptId;}/** * @return the dptName */public String getDptName() { return dptN}/** * @param dptName the dptName to set */public void setDptName(String dptName) { this.dptName = dptN}}
=======struts2的相关包全部放入/doubleselect/WebContent/WEB-INF/lib=======================asm-3.1.jarasm-commons-3.1.jarasm-tree-3.1.jarcommons-fileupload-1.2.2.jarcommons-io-2.0.1.jarcommons-lang-2.5.jarcommons-logging-1.1.1.jarfreemarker-2.3.16.jarjasper-6.0.14.jarjavassist-3.11.0.GA.jarjson-lib-2.1-jdk15.jarognl-3.0.1.jarstruts2-core-2.2.3.jarstruts2-jasperreports-plugin-2.2.3.jarxwork-core-2.2.3.jar
请能者答疑解惑,不胜感激!
#request.map.keySet()这样用{#request.map.keySet()}包起来!
好像不需要#request.
删掉试试。
或者把&s:doubleselect&&/s:doubleselect&这种写法改成
&s:doubleselect /&试试
我建议不要贴那么多代码而且还没有描述,把自己代码思路解释下,特别是关键地方,标上注释!
已解决问题
未解决问题博古通今英文书店The
Death of Right and Wrong & 死亡的对与错&
开&&&&&&本:其它页&&&&&&数:341页字&&&&&&数:I&&S&&B&&N:售&&&&&&价:50.00元 品&&&&&&相:运&&&&&&费:北京朝阳
至挂号印刷品:5.00元上书时间:购买数量:(库存1件)
微信购买商品分类:关 键 字:详细描述:原版书,精装
35.00元10.00元12.00元15.00元45.00元10.00元20.00元25.00元20.00元15.00元
Copyright(C)
孔夫子旧书网
京ICP证041501号
海淀分局备案编号
成功加入购物车来自:恐龙书社您可以2013年10月 总版技术专家分月排行榜第三
2014年3月 Java大版内专家分月排行榜第一2014年1月 Java大版内专家分月排行榜第一2013年12月 Java大版内专家分月排行榜第一2013年11月 Java大版内专家分月排行榜第一2013年10月 Java大版内专家分月排行榜第一
2013年10月 总版技术专家分月排行榜第三
2014年3月 Java大版内专家分月排行榜第一2014年1月 Java大版内专家分月排行榜第一2013年12月 Java大版内专家分月排行榜第一2013年11月 Java大版内专家分月排行榜第一2013年10月 Java大版内专家分月排行榜第一
2013年10月 总版技术专家分月排行榜第三
2014年3月 Java大版内专家分月排行榜第一2014年1月 Java大版内专家分月排行榜第一2013年12月 Java大版内专家分月排行榜第一2013年11月 Java大版内专家分月排行榜第一2013年10月 Java大版内专家分月排行榜第一
2013年10月 总版技术专家分月排行榜第三
2014年3月 Java大版内专家分月排行榜第一2014年1月 Java大版内专家分月排行榜第一2013年12月 Java大版内专家分月排行榜第一2013年11月 Java大版内专家分月排行榜第一2013年10月 Java大版内专家分月排行榜第一
2013年10月 总版技术专家分月排行榜第三
2014年3月 Java大版内专家分月排行榜第一2014年1月 Java大版内专家分月排行榜第一2013年12月 Java大版内专家分月排行榜第一2013年11月 Java大版内专家分月排行榜第一2013年10月 Java大版内专家分月排行榜第一
2013年10月 总版技术专家分月排行榜第三
2014年3月 Java大版内专家分月排行榜第一2014年1月 Java大版内专家分月排行榜第一2013年12月 Java大版内专家分月排行榜第一2013年11月 Java大版内专家分月排行榜第一2013年10月 Java大版内专家分月排行榜第一
本帖子已过去太久远了,不再提供回复功能。

参考资料

 

随机推荐