- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
所以我在 Gemini 运行时下使用 OSGi 中的 JSTL。当我尝试访问我的 servlet
的 url 时,出现以下异常:-
SEVERE: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: /WEB-INF/login.jsp (line: 3, column: 66) Unable to read TLD "META-INF/c.tld" from JAR file "file:/D:/OSGi%20Runtime/Gemini/gemini-web/dep/com.springsource.javax.servlet.jsp.jstl-1.2.0.v20110728.jar": org.apache.jasper.JasperException: Failed to load or instantiate TagLibraryValidator class: org.apache.taglibs.standard.tlv.JstlCoreTLV
但是,我已经检查过,我的运行时中已经拥有所有必需的包。我拥有的相关 bundle 是:-
71 ACTIVE javax.servlet_3.0.0.v201103241009
73 ACTIVE javax.el_2.2.0.v201105051105
74 ACTIVE javax.servlet.jsp_2.2.0.v201103241009
75 ACTIVE com.springsource.javax.servlet.jsp.jstl_1.2.0.v20110728
121 ACTIVE com.springsource.org.apache.taglibs.standard_1.1.2.v20110517
有更多的 bundle ,但那些是相关的。所以,我不明白哪里出了问题。
来自Spring Source Repository ,从我下载包的地方,很明显,org.apache.taglibs.standard bundle - Bundle 121,包含 JSTLCoreTLV 类
。所以,不确定这里发生了什么。
这是我正在使用的 JSP
header (以防万一,它是相关的):-
<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core" %>
我正在使用:-
Servlet 3.0
JSP 2.2
双子座运行时 2.1
JSTL 1.2.0
更新:-
下面描述的问题似乎已经解决,现在我没有收到如下所示的任何警告。那是因为,我有 taglibs.standard_1.1.2
- (Bundle 121),它与其他人不兼容。所以,我删除了它,警告消失了。
因此,从这里开始您可以忽略任何内容。但是,上面的问题仍然存在。我仍然收到 JasperException
。这可能会进一步提供帮助,因为由于@BalusC 提供的宝贵意见,问题域现在有所减少。
解决后的部分。所以,你可以忽略它:-
此外,我不确定我拥有的 OSGi JSTL 包版本 - Bundle 75
是否与其他包 - javax.el
兼容, taglibs
、servlets
等,或不。因为我使用的是 JSTL 1.2.1
,但我无法获得 JSTL 1.2.1
的包。我得到的是我使用的包 (JSTL 1.2.0
)。为什么这会困扰我是因为当我启动我的应用程序时会出现这些类型的消息:-
Jan 22, 2013 7:14:05 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/core is already defined
Jan 22, 2013 7:14:05 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/core is already defined
Jan 22, 2013 7:14:05 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt_rt is already defined
Jan 22, 2013 7:14:05 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt is already defined
Jan 22, 2013 7:14:05 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/fmt is already defined
Jan 22, 2013 7:14:05 PM org.apache.catalina.startup.TaglibUriRule body
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/functions is already defined
如您所见,上面显示了两个不同的 URL:-
http://java.sun.com/jSTL/core
http://java.sun.com/jsp/jSTL/core
现在,AFAIK 这两个 URL 不属于相同的 JSTL
版本。那么,这会引发一些问题吗?他们来的原因是什么?我刚刚使用了一个 JSTL bundle
。
最佳答案
com.springsource.javax.servlet.jsp.jstl_1.2.0.v20110728
com.springsource.org.apache.taglibs.standard_1.1.2.v20110517
您正在将 JSTL 1.2.0 API+impl 与 JSTL 1.1.2 impl 混合。
这两个 impls 相互冲突,这解释了你所看到的所有问题。
摆脱 1.1.2 实现。
关于java - 无法加载或实例化 TagLibraryValidator 类 : org. apache.taglibs.standard.tlv.JSTLCoreTLV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14459873/
什么是 TLV? 在代码中放置钩子(Hook)(函数)而不是 if/else? 如果我有一段代码在不同的平台上运行,在代码的不同位置,我可以放置 TLV 函数 Hook 来识别我在哪个平台上并相应地做
我在他们所指的文档中找到了 简单的 TLV 和 BER-TLV .我查看了大多数 EMV 和 GP 文档,但他们没有提到不同之处。 谁能帮我理解两者的区别? 最佳答案 ISO/IEC 7816-4 中
我有一个为 iPhone (Objective-C) 编写的移动应用程序,允许用户使用特定格式导入数据。我用 Java 为 Android 编写了相同的应用程序,并且用户开始要求导入的能力。数据的格式
我的 SMS 服务提供商要求我在通过 SMPP 连接到他时设置以下 TLV 参数: 价格点 (0x1400) 产品 (0x1401) 合作伙伴角色 ID (0x1402) 如何在 Kannel 中进行
我正在开发用于读取 EMV 卡的智能卡读卡器。我正在处理一张万事达卡,我试图读取特定记录。结果显示读数很好,但是当我解析结果时,它们似乎不遵循 TLV 标准,其中结果采用 Tag/Template-L
我正在开发支持 EMV 卡的 POS 应用程序。我能够从 TLV 中的 Verifone MX 读卡器读取卡数据,但在将 TLV 数据解码为可读数据时遇到问题。 我能够将数据拆分为 TLV 标签及其值
好的 - 我有这个十六进制数据和标签列表: 原始数据可能是这样的: 5F201A54444320424C41434B20554E4C494D49544544205649534120204F07A000
我的方法 parseTLV() 有时无法正确地解析为构造值(子 TLV)。我使用过滤器 ((tag & 0x20)!= 0) 来检测构造的值,但有时它无法按预期工作。 例如 70178C159F020
我正在处理 Mastercard Paypass 交易,我发送了一个 READ RECORD 命令并得到了结果: 70 81 AB 57 11 54 13 33 00 89 60 10 83 D2 5
是否可以使用 boost 序列化带有 TLV 编码的字符串?或者我应该先编码,然后使用 boost 序列化二进制数据?如果是那么如何编码为TLV? 最佳答案 Boost 的二进制序列化存档已经使用了类
我正在寻找一种使用 Java 翻译 EMV 响应的方法,就像使用此在线选项一样: http://www.emvlab.org/tlvutils/ 你把像这样的 EMV 响应放在哪里: 6f3a8407
我正在使用 OnlineCity SMPP 客户端库发送 SMS。它工作正常。但是根据TRAI的新指南,我们需要在发送短信时添加以下新的TLV参数 group = smpp-tlv name = En
我正在使用 jpos 库构建一个简单的电子购买金融消息,我正在使用通用打包器来打包我的消息字段,问题出现在字段 48(TLV 字段)处。 这里是字段 48 的打包参数。
我需要将一个 C 结构转换为 TLV 格式并将其发送。有人可以帮我吗?我的结构是一个真正的嵌套结构,有很多指向不同结构的间接(指针)和很多 void *。所以,我被困住了,需要帮助。 struct a
我想读取 Java 卡上的 TLV 编码证书(NXP JCOP J3D081、JCOP 版本 2.4.2、Java 卡版本 3.0.1 Classic)。 cap 文件已成功创建,但当我尝试将其安装到
要构建嵌套 TLV 元素(例如 6F1A840E315041592E5359532E4444463031A5088801025F2D02656E),我使用以下数据结构: typedef struct
我正在尝试使用 C 来编码/解码 tlv 消息数据。实际上我是 TLV 格式的新手。我刚刚从谷歌找到了一些代码,但我不明白它们。 unsigned char *tlv_buffer = NULL; i
我想解析 TLV 字符串并在给出标签值时获取值。 示例: 000201021642333310011114235204546757034445802IN5910My Company6005Vegas6
例如我有这样的R-APDU uchar rApdu[] = {0x6F, 0x35 ,0x84 ,0x08 ,0x45 ,0x4F ,0x50 , 0x43 ,0x43 ,0x41 ,0x52
我是 Java 的新手,所以我想使用标准解决方案来完成标准任务。标签和值的长度未知。 最佳答案 您可以使用这个 BER-TLV 解析器:source code on git。 示例: 如何解析 byt
我是一名优秀的程序员,十分优秀!