2016-12-20 10 views
1

Я использую Netbeans и GlassFish сервер 4.1.1в библиотеки тегов JSP не работает

<%@ taglib uri="index.html" prefix="mytag" %> 
<html> 
<body> 

<mytag:currentDate/> 

</body> 
</html> 

И я получил ошибку , как это ..

org.xml.sax.SAXParseException; lineNumber: 12; columnNumber: 7; Тип элемента «meta» должен быть завершен соответствующим концевым тегом «». на com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException (ErrorHandlerWrapper.java:203) на com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError (ErrorHandlerWrapper.java:177) на com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError (XMLErrorReporter.java:400) на com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError (XMLErrorReporter.java:327) на com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError (XMLScanner.java:1438) на com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement (XMLDocumentFragmentScannerImpl.java:1750) на com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl $ FragmentContentDriver.next (XMLDocumentFragmentScannerImpl.java:2970) на com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next (XMLDocumentScannerImpl.java: 606) на com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next (XMLNSDocumentScannerImpl.java:118) на com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument (XMLDocumentFragmentScannerImpl.java:510) на com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse (XML11Configuration.java:848) на com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse (XML11Configuration.java:777) на com.sun.org.apache.xerces.internal.parsers.XMLParser.parse (XMLParser.java:141) на com.sun.org.apache.xerces.internal.parsers.DOMParser.parse (DOMParser.java:243) на com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse (DocumentBuilderImpl.java:339) на org.apache.jasper.xmlparser.ParserUtils.parseXMLDocument (ParserUtils.java:298) на org.apache.jasper.xmlparser.ParserUtils.parseXMLDocument (ParserUtils.java:351) на org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD (TagLibraryInfoImpl.java:340) в org.apache.jasper.compiler.TagLibraryInfoImpl. (TagLibraryInfoImpl.java:254) в org.apache.jasper.compiler.Parser.parseTaglibDirective (Parser.java:502) на org.apache.jasper.compiler.Parser.parseDirective (Parser.java:582) на org.apache.jasper.compiler.Parser.parseElements (Parser.java:1657) на org.apache.jasper.compiler.Parser.parse (Parser.java:185) на org.apache.jasper.compiler.ParserController.doParse (ParserController.java:244) на org.apache.jasper.compiler.ParserController.parse (ParserController.java:145) в org.apache. jasper.compiler.Compiler.generateJava (Compiler.java:212) на org.apache.jasper.compiler.Compiler.compile (компилятор.java:451) на org.apache.jasper.JspC.processFile (JspC.java:1171) на org.apache.jasper.JspC.execute (JspC.java:1338) на org.netbeans.modules.web.project.ant.JspC.main (JspC.java:101) на org.netbeans.modules.web.project .ant.JspCSingle.main (JspCSingle.java:119) org.apache.jasper.JasperException: файл: C: /Users/Queue/OneDrive/JspExE/build/web/WEB-INF/tlb.jsp (1,44) PWC6178: ошибка синтаксического анализа XML в файле /WEB-INF/index.html: (строка 12, col 7) org.apache.jasper.JasperException: C:/Users/Queue/OneDrive/JspExE/build/web/WEB -INF/tlb.jsp (1,44) org.apache.jasper.JasperException: файл: C: /Users/Queue/OneDrive/JspExE/build/web/WEB-INF/tlb.jsp (1,44) PWC6178: XML разбора ошибки на файл C: \ Users \ Queue \ OneDrive \ JspExE \ nbproject \ встроенный impl.xml: 936: Java возвращается: 1 BUILD FAILED (общее время: 1 секунда)

ответ

0

файл index.html является HTML-файл , Вы не можете использовать HTML вместо TLD в атрибуте URI директивы taglib.

От java tutorial:

Ури атрибут относится к URI, который однозначно идентифицирует библиотеку дескриптора тегов (TLD), документ, который описывает библиотеку тегов (см Tag Library дескрипторы).

Имена файлов дескриптора библиотеки тегов должны иметь расширение .tld. TLD файлы хранятся в каталоге WEB-INF файла WAR или в каталоге или подкаталоге META-INF библиотеки тегов , упакованных в JAR. Вы можете ссылаться на TLD прямо или косвенно.

Следующая taglib директива напрямую ссылается на имя TLD файла:

<%@ taglib prefix="tlt" uri="/WEB-INF/iterator.tld"%> 

Эта taglib директива использует короткое логическое имя косвенно ссылки ДВУ:

<%@ taglib prefix="tlt" uri="/tlt"%> 

Вложенные внутри jsp-config элемента a taglib элемент, который предоставляет информацию о библиотеке тегов, используемую страницами приложения. Внутри элемента taglib находятся элемент taglib-uri и элемент taglib-location. Элемент taglib-uri идентифицирует логическое имя библиотеки тегов . Элемент taglib-location дает абсолютное местоположение или абсолютный URI библиотеки тегов.

Абсолютных URIs для библиотеки JSTL является следующим:

Core: http://java.sun.com/jsp/jstl/core 

XML: http://java.sun.com/jsp/jstl/xml 

Internationalization: http://java.sun.com/jsp/jstl/fmt 

SQL: http://java.sun.com/jsp/jstl/sql 

Functions: http://java.sun.com/jsp/jstl/functions 

При ссылке на библиотеку тегов с абсолютной URI, который точно совпадает с URI объявлен в taglib элементе TLD (см Tag Библиотечные дескрипторы), вам не нужно добавлять элемент taglib в web.xml; контейнер JSP автоматически находит TLD внутри реализации библиотеки JSTL . Включая реализацию библиотеки тегов

В дополнение к объявлению библиотеки тегов вы также должны сделать реализацию библиотеки доступной для веб-приложения. Есть несколько способов сделать это. Реализации библиотек тегов могут быть включены в WAR в распакованном формате: файлы тегов упаковываются в каталог /WEB-INF/tag/, а классы обработчиков тегов упаковываются в каталог /WEB-INF/classes/ WAR. Библиотеки тегов, которые уже упакованы в файл JAR, включены в каталог /WEB-INF/lib/ воинской части . Наконец, сервер приложений может загружать библиотеку тегов во все веб-приложения, запущенные на сервере. Например, на сервере приложений TLD и библиотеки JSTL распространяются в архиве appserv-jstl.jar в as-install/lib/. Эта библиотека автоматически загружается в путь к классам всех веб-приложений , работающих на сервере приложений, поэтому вам не нужно добавлять их в свое веб-приложение.

+0

Спасибо ..... это работа –

 Смежные вопросы

  • Нет связанных вопросов^_^