在使用struts时出现问题: The absolute uri: http://jakarta.apache.org/struts/tags-bean cannot be resol

本文解决了在使用MyEclipse时遇到的Struts库加载失败的问题。原因是struts库未被正确添加到项目的WEB-INF/lib目录中。通过手动将struts的jar包复制到该目录并重新配置,可以有效解决该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

The absolute uri: http://jakarta.apache.org/struts/tags-bean cannot be resol问题解决:

这个是找不到的原因,库找不到当然无法解析

使用工具(如:MyEclipse来添加struts)加载struts库时,没有将相应的struts复制到你的WEB-INF的lib目录下,找的struts相应的库复制到lib中在添加到库中。

我使用MyEclipse,struts的在MyEclipse的安装目录的(安装位置)/MyEclipse 10\configuration\org.eclipse.osgi\bundles\16\1\.cp\data\1.2\lib

把这个目录下的所有jar包复制到WEB-INF/lib下就可以解决问题

### 解决 Shiro Taglib URI 无法解析的问题 当遇到 `org.apache.jasper.JasperException` 错误提示,表示绝对 URI 如 `http://shiro.apache.org/tags` 无法在 `web.xml` 或者应用所依赖的 JAR 文件中被解析,通常是因为缺少必要的 TLD (Tag Library Descriptor) 文件或配置不正确。 #### 配置 Web 应用程序以支持 Shiro 标签库 为了使应用程序能够识别并正常使用 Shiro 提供的标签库,需确保以下几点: - **确认 Maven/Gradle 中已加入 Shiro 的依赖项** 对于基于 Apache Maven 构建的应用项目,在项目的 POM 文件里应包含如下依赖声明[^3]: ```xml <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>${shiro.version}</version> </dependency> <!-- 如果还需要Web模块 --> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-web</artifactId> <version>${shiro.version}</version> </dependency> ``` - **验证 WEB-INF/lib 下存在 shiro*.jar** 确保打包后的 WAR 文件中的 `/WEB-INF/lib` 路径下确实包含了 Shiro 相关的 JAR 包。这些包内含 `.tld` 描述符文件,用于定义自定义标签的行为和属性。 - **更新 web.xml 添加 JSP Configurations** 按照标准做法,在 `web.xml` 中注册特定于 JSTL 和其他第三方标签库的信息。虽然这不是严格意义上的必需操作,但对于某些较旧版本容器来说可能是有益的。可以参照下面的例子来设置 `<jsp-config>` 条目[^4]: ```xml <jsp-config> <!-- 对于Shiro标签库 --> <taglib> <taglib-uri>http://shiro.apache.org/tags</taglib-uri> <taglib-location>/META-INF/shiro.tld</taglib-location> </taglib> <!-- 可选:如果你也在使用JSTL核心标签库 --> <taglib> <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri> <taglib-location>/WEB-INF/c.tld</taglib-location> </taglib> </jsp-config> ``` - **检查页面顶部是否正确定义了 taglib 指令** 最后但同样重要的是,要保证每个试图利用 Shiro 自定义标签的 JSP 页面都含有恰当的指令语句。例如: ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java"%> <%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags"%> <html> ... <body> ... <shiro:user> Welcome back, <shiro:principal property="name"/>. </shiro:user> ... </body> </html> ``` 通过上述措施,应该能有效解决因找不到指定 URI 导致的编译期错误,并允许开发者充分利用 Shiro 所提供的强大安全特性集。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值