eclipse用struts2报错

zhaoxiaohao 2009-04-12 05:58:21
在网上看了一个struts2的分页代码,自己做了做怎么也不行。一直报错,错误如下;
org.apache.jasper.JasperException: File "/struts-tags" not found
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:51)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:116)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:160)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:431)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:494)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1444)
org.apache.jasper.compiler.Parser.parse(Parser.java:138)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:216)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:154)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:315)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:282)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:586)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

自己在网上查了查,说是找不到"/struts-tags",可是我的xml头是2.4的,按理说不需要指定,我改成2.3,自己加上
<taglib>
<taglib-uri>/struts-tags </taglib-uri>
<taglib-location>/WEB-INF/struts-tags.tld </taglib-location>
</taglib>
告诉我struts-tags.tld 中的<tlib-version>2.2.3</tlib-version>错误,我将其值改成2.3,该文件不报错误,但是做了以上操作还是显示如上的"/struts-tags" not found”一系列错误。我会将代码贴出来,希望大家帮帮我,我用的struts2是2.1.6
eclipse是3.4java EE的,tomcat是6.0,jdk是1.5,jre是1.6,数据库是mysql
...全文
283 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
ppoi0703 2012-07-20
  • 打赏
  • 举报
回复
放在tomcat webapp 中应该能够正常运行,是eclipse环境问题
donkee8 2009-04-24
  • 打赏
  • 举报
回复
不用改,就不会错
虽然myeclipse会报错,对运行没关系
zhaoxiaohao 2009-04-12
  • 打赏
  • 举报
回复
我只添加了
commons-lang-2.3.jar
commoms-logging-1.0.4.jar
freemarker-2.3.13.jar
mysql-connector-java-5.1.7-bin.jar
ognl-2.6.11.jar
struts2-core-2.1.6.jar
xwork-2.1.2.jar
yellow0323 2009-04-12
  • 打赏
  • 举报
回复
同意楼上
yangfeitarena 2009-04-12
  • 打赏
  • 举报
回复
可能是你工程里struts2的包没有添加完全,或者加的方法不对,你再检查一下。
upshine86 2009-04-12
  • 打赏
  • 举报
回复
强烈建议删除项目,重来一遍!我认为就好了!你的这个情况感觉和你本人没有什么关系!在来一次!
zhaoxiaohao 2009-04-12
  • 打赏
  • 举报
回复
谢谢大家了,如果哪位老大愿意帮我,这样直接看不只管的话,我可以把代码发给大家!
zhaoxiaohao 2009-04-12
  • 打赏
  • 举报
回复
showaction.java

package org.hnylj.web;
import java.util.List;

import org.hnylj.util.PageDAO;
import org.hnylj.util.Student;

import com.opensymphony.xwork2.ActionSupport;

public class ShowAcion {
private List<Student> students ;
private int pageNow = 1 ; //初始化为1,默认从第一页开始显示
private int pageSize = 5 ; //每页显示5条记录

private PageDAO pageDAO = new PageDAO () ;

public List<Student> getStudents() {
return students;
}

public void setStudents(List<Student> students) {
this.students = students;
}

public int getPageNow() {
return pageNow;
}

public void setPageNow(int pageNow) {
this.pageNow = pageNow;
}

public int getPageSize() {
return pageSize;
}

public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}

public String execute() throws Exception {
students = pageDAO.queryByPage(pageSize, pageNow) ;
return "SUCCESS" ;
}
}

index.jsp
<%@ page language="java" contentType="text/html"
pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Struts2实现分页显示</title>
</head>
<body>
<div align="center">
<s:a href="show.action">进入查看学员列表</s:a>
</div>
</body>
</html>


show.jsp
<%@ page language="java" contentType="text/html"
pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Struts2实现分页显示</title>
</head>
<body>
<div align="center">

<table border="1">
<tr>
<th>学号</th>
<th>姓名</th>
<th>地址</th>
<th>电话</th>
</tr>
<s:iterator value="students">
<tr>
<td><s:property value="stu_id"/></td>
<td><s:property value="stuName"/></td>
<td><s:property value="address"/></td>
<td><s:property value="stuPhone"/></td>
</tr>
</s:iterator>
</table>

<s:url id="url_pre" value="show.action">
<s:param name="pageNow" value="pageNow-1"></s:param>
</s:url>

<s:url id="url_next" value="show.action">
<s:param name="pageNow" value="pageNow+1"></s:param>
</s:url>

<s:a href="%{url_pre}">上一页</s:a>

<s:iterator value="students" status="status">
<s:url id="url" value="show.action">
<s:param name="pageNow" value="pageNow"/>
</s:url>
</s:iterator>

<s:a href="%{url_next}">下一页</s:a>
</div>
</body>
</html>

error.jsp
<%@ page language="java" contentType="text/html"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>发生错误</title>
</head>
<body>
业务逻辑发生异常,请稍候再试。。。。。。
</body>
</html>

struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
<package name="struts2" namespace="/" extends="struts-default">
<action name="show" class="org.hnylj.web.ShowAction">
<result name="success">show.jsp</result>
<result name="error">error.jsp</result>
</action>
</package>
</struts>



linuxlsx 2009-04-12
  • 打赏
  • 举报
回复
看过了 但是没头绪
zhaoxiaohao 2009-04-12
  • 打赏
  • 举报
回复
student.java
package org.hnylj.util;

public class Student {
private int stu_id ;
private String stuName ;
private String address ;
private String stuPhone ;

public Student () {
}

public int getStu_id () {
return stu_id ;
}

public void setStu_id (int stu_id) {
this.stu_id = stu_id ;
}

public String getStuName () {
return stuName ;
}

public void setStuName (String stuName) {
this.stuName = stuName ;
}

public String getAddress () {
return address ;
}

public void setAddress (String address) {
this.address = address ;
}

public String getStuPhone () {
return stuPhone ;
}

public void setStuPhone (String stuPhone) {
this.stuPhone = stuPhone ;
}

}
zhaoxiaohao 2009-04-12
  • 打赏
  • 举报
回复
pagedao.java

package org.hnylj.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class PageDAO {
private Connection conn ;
private PreparedStatement pstmt ;
private ResultSet rs ;
private static final String DRIVER = "com.mysql.jdbc.Driver" ;
private static final String URL = "jdbc:mysql://localhost:3306/page" ;
private static final String USERNAME = "root" ;
private static final String PASSWORD = "12345678" ;

private Student student ;

//数据库连接
public synchronized Connection getConnection () {
try {
Class.forName (DRIVER) ;
conn = DriverManager.getConnection (URL,USERNAME,PASSWORD) ;
} catch (ClassNotFoundException e) {
e.printStackTrace () ;
return null ;
} catch (SQLException e) {
e.printStackTrace () ;
return null ;
}
return conn ;
}

//分页查询
public List<Student> queryByPage (int pageSize, int pageNow) {
List<Student> list = new ArrayList<Student> () ;
try {
if (this.getConnection()!=null && pageSize>0 && pageNow>0) {
pstmt = this.getConnection().prepareStatement(
"select * from student order by stu_id limit "+(pageNow*pageSize-pageSize)+","+pageSize
);
rs = pstmt.executeQuery () ;

while (rs.next()) {
student = new Student () ;
student.setStu_id (rs.getInt(1)) ;
student.setStuName (rs.getString(2)) ;
student.setAddress (rs.getString(3)) ;
student.setStuPhone (rs.getString(4)) ;
list.add (student) ;
}
}
} catch(SQLException e) {
e.printStackTrace() ;
}
return list ;
}
}
zhaoxiaohao 2009-04-12
  • 打赏
  • 举报
回复
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.3" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_3.xsd">
<display-name>
EdiSys</display-name>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<taglib>
<taglib-uri>/struts-tags </taglib-uri>
<taglib-location>/WEB-INF/struts-tags.tld </taglib-location>
</taglib>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧