מדריך JSP – פקודות, חלק ב'
<jsp:include> הוספת קובץ דינמי:
הוספה דינמית בהרצה של דף כולל אפשריות הגדרת משתנים
לדוגמא:
<jsp:include page="scripts/login.jsp"> <jsp:param name="username" value="jsmith" /> </jsp:include>
כאן זה מבצע: scripts/login.jsp?username=jsmith
הוספת הגדרות מספריות שרות:
<%page import> – ספריית JAVA
ל-SNIPLETS JAVA – IMPORT
<%@ page import="package.class | package.*}, ...%>
למשל:
<%@ page import="java.util.Date"%>
<%@ taglib> – הרחבות ל HTML
ל-HTML – TAGLIB
הוספת הרחבות ל HTML ע"י USERS TAGS
<%@ taglib uri="URIForLibrary" prefix="tagPrefix" %>
דוגמא לשימוש:
<%@ taglib uri="Web-Info/tags " prefix="mine" %> <mine:helloworld name="adi"/>
הערה: הURI יכול להיות כתובת מלאה או יחסית או שם לוגי שממופה לקובץ TLD בעזרת קובץ web.xml המתואר בהמשך.
הגדרת ה-TAGS המופיע מתבצע בקובץ מסוג tld נראה כך:
<?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"> <taglib> <tlibversion>1.0</tlibversion> <jspversion>1.1</jspversion> <shortname>Samples</shortname> <info>Sample Tag library</info> <!-A Simple tag --> <tag> <name>helloworld</name> <tagclass>adi.examples.Hello </tagclass> <bodycontent>empty</bodycontent> ללא אלמנט טקסט <info> הסבר על תפקידו </info> <!-- פרמטרים אפשריים --> <attribute> <name>name</name> שם <required>false</required> האם חובה <rtexpvalue>false</rtexpvalue> </attribute> </tag> </taglib>
קוד התוכנית המטפלת בTAG:
package adi.examples; import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; public class Hello extends TagSupport { private String name=null; public void setName(String value){ name = value;} //טיפול בפרמטר public String getName(){return name;} public int doStartTag() { try { JspWriter out = pageContext.getOut(); out.println("<br> Hello " + name); } catch (Exception ex) { throw new Error("All is not well in the world."); } // ללא טיפול בגוף return SKIP_BODY; } public int doEndTag(){ // בסיום try { JspWriter out = pageContext.getOut(); out.println("<br>"); } catch (Exception ex){ throw new Error("All is not well in the world."); } } }
בדרך כלל אורזים את כל התוכניות של הTAGS לJAR שגם הוא ZIP (JAVA ARCHIVE) שממוקם מתחת לתת תיקיה:
Web-info/lib (ראה מבנה הקבצים בהמשך)
תגובות בפייסבוק