CINXE.COM
JavaServer Pages Standard Tag Library
<!DOCTYPE html> <html lang="en-US" class="no-js"><head> <title>JavaServer Pages Standard Tag Library</title> <meta name="Title" content="JavaServer Pages Standard Tag Library"> <meta name="Description" content="The JavaServer Pages Standard Tag Library (JSTL) encapsulates as simple tags the core functionality common to many Web applications."> <meta name="Keywords" content="JavaServer, Pages, content, generation, dynamic, JSP, reusable, components"> <!-- Container/Display Start --> <!-- _Raw-Text --> <!-- css / js files start --> <script> !function(){ var d=document.documentElement;d.className=d.className.replace(/no-js/,'js'); if(document.location.href.indexOf('betamode=') > -1) document.write('<script src="https://www.oracle.com/asset/web/js/ocom-betamode.js"><\/script>'); }(); </script> <link data-wscss href="https://www.oracle.com/asset/web/css/ocom-v1-base.css" rel="stylesheet"> <link data-wscss href="https://www.oracle.com/asset/web/css/ocom-v1-styles.css" rel="preload" as="style" onload="this.rel='stylesheet'" onerror="this.rel='stylesheet'"> <noscript> <link href="https://www.oracle.com/asset/web/css/ocom-v1-styles.css" rel="stylesheet"> </noscript> <link data-wsjs data-reqjq href="https://www.oracle.com/asset/web/js/ocom-v1-base.js" rel="preload" as="script"> <link data-wsjs data-reqjq href="https://www.oracle.com/asset/web/js/ocom-v1-lib.js" rel="preload" as="script"> <script data-wsjs src="https://www.oracle.com/asset/web/js/jquery-min.js" async onload="$('head link[data-reqjq][rel=preload]').each(function(){var a = document.createElement('script');a.async=false;a.src=$(this).attr('href');this.parentNode.insertBefore(a, this);});$(function(){$('script[data-reqjq][data-src]').each(function(){this.async=true;this.src=$(this).data('src');});});"></script> <!-- end css / js files start --> <!-- / _Raw-Text --> <!-- Container/Display end --> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="siteid" content="us"> <meta name="countryid" content="US"> <meta name="robots" content="index, follow"> <meta name="country" content="United States"> <meta name="Language" content="en"> <meta name="Updated Date" content="2019-03-04T20:06:36Z"> <script type="text/javascript"> var pageData = pageData || {}; //page info pageData.pageInfo = pageData.pageInfo || {}; pageData.pageInfo.language = "en"; pageData.pageInfo.country = "United States"; pageData.pageInfo.pageTitle = "JavaServer Pages Standard Tag Library"; pageData.pageInfo.description = "The JavaServer Pages Standard Tag Library (JSTL) encapsulates as simple tags the core functionality common to many Web applications."; pageData.pageInfo.keywords = "JavaServer, Pages, content, generation, dynamic, JSP, reusable, components"; pageData.pageInfo.siteId = "us"; pageData.pageInfo.countryId = "US"; pageData.pageInfo.updatedDate = "2019-03-04T20:06:36Z"; </script> <!-- start : ocom/common/global/components/seo-taxonomy-meta-data--> <script type="text/javascript"> var pageData = pageData || {}; //taxonmy pageData.taxonomy = pageData.taxonomy || {}; pageData.taxonomy.productServices = []; pageData.taxonomy.industry = []; pageData.taxonomy.region = []; pageData.taxonomy.contentType = []; pageData.taxonomy.buyersJourney = []; pageData.taxonomy.revenue = []; pageData.taxonomy.title = []; pageData.taxonomy.audience = []; pageData.taxonomy.persona = []; </script> <!-- end : ocom/common/global/components/seo-taxonomy-meta-data--> <!-- start : ocom/common/global/components/social-media-meta-tags --> <!-- end : ocom/common/global/components/social-media-meta-tags --> <!-- start : ocom/common/global/components/seo-hreflang-meta-tags --><link rel="canonical" href="https://www.oracle.com/java/technologies/java-server-tag-library.html" /> <link rel="alternate" hreflang="en-US" href="https://www.oracle.com/java/technologies/java-server-tag-library.html" /> <!-- end : ocom/common/global/components/seo-hreflang-meta-tags --> <!-- Container/Display Start --> <!-- _Raw-Text --> <!-- www-us HeadAdminContainer --> <link rel="icon" href="https://www.oracle.com/asset/web/favicons/favicon-32.png" sizes="32x32"> <link rel="icon" href="https://www.oracle.com/asset/web/favicons/favicon-128.png" sizes="128x128"> <link rel="icon" href="https://www.oracle.com/asset/web/favicons/favicon-192.png" sizes="192x192"> <link rel="apple-touch-icon" href="https://www.oracle.com/asset/web/favicons/favicon-120.png" sizes="120x120"> <link rel="apple-touch-icon" href="https://www.oracle.com/asset/web/favicons/favicon-152.png" sizes="152x152"> <link rel="apple-touch-icon" href="https://www.oracle.com/asset/web/favicons/favicon-180.png" sizes="180x180"> <meta name="msapplication-TileColor" content="#fcfbfa"/> <meta name="msapplication-square70x70logo" content="favicon-128.png"/> <meta name="msapplication-square150x150logo" content="favicon-270.png"/> <meta name="msapplication-TileImage" content="favicon-270.png"/> <meta name="msapplication-config" content="none"/> <meta name="referrer" content="no-referrer-when-downgrade"/> <script async="async" type="text/javascript" src='//consent.truste.com/notice?domain=oracle.com&c=teconsent&js=bb¬iceType=bb&text=true>m=1&cdn=1&pcookie' crossorigin></script> <style> #oReactiveChatContainer1 { display:none;} </style> <!-- Truste for RU --> <script type="text/javascript"> if (location.pathname.indexOf("/ru/") == 0){ document.write('\x3Cscript async="async" src=//consent.truste.com/notice?domain=oracleru.com&c=teconsent&js=bb¬iceType=bb&text=true>m=1&cdn=1&pcookie crossorigin="">\x3C/script>'); } </script> <!--Tealium embed code --> <script src="https://tms.oracle.com/main/prod/utag.sync.js"></script> <!-- Loading script asynchronously --> <script type="text/javascript"> (function(a,b,c,d){ if(location.href.indexOf("tealium=dev") == -1) { a='https://tms.oracle.com/main/prod/utag.js'; } else { a='https://tms.oracle.com/main/dev/utag.js'; } b=document;c='script';d=b.createElement(c);d.src=a;d.type='text/java'+c;d.async=true; a=b.getElementsByTagName(c)[0];a.parentNode.insertBefore(d,a); })(); </script> <!--End--> <!-- / _Raw-Text --> <!-- Container/Display end --> <script>(window.BOOMR_mq=window.BOOMR_mq||[]).push(["addVar",{"rua.upush":"false","rua.cpush":"false","rua.upre":"false","rua.cpre":"false","rua.uprl":"false","rua.cprl":"false","rua.cprf":"false","rua.trans":"","rua.cook":"false","rua.ims":"false","rua.ufprl":"false","rua.cfprl":"false","rua.isuxp":"false","rua.texp":"norulematch","rua.ceh":"false","rua.ueh":"false","rua.ieh.st":"0"}]);</script> <script>!function(e){var n="https://s.go-mpulse.net/boomerang/";if("False"=="True")e.BOOMR_config=e.BOOMR_config||{},e.BOOMR_config.PageParams=e.BOOMR_config.PageParams||{},e.BOOMR_config.PageParams.pci=!0,n="https://s2.go-mpulse.net/boomerang/";if(window.BOOMR_API_key="DXNLE-YBWWY-AR74T-WMD99-77VRA",function(){function e(){if(!o){var e=document.createElement("script");e.id="boomr-scr-as",e.src=window.BOOMR.url,e.async=!0,i.parentNode.appendChild(e),o=!0}}function t(e){o=!0;var n,t,a,r,d=document,O=window;if(window.BOOMR.snippetMethod=e?"if":"i",t=function(e,n){var t=d.createElement("script");t.id=n||"boomr-if-as",t.src=window.BOOMR.url,BOOMR_lstart=(new Date).getTime(),e=e||d.body,e.appendChild(t)},!window.addEventListener&&window.attachEvent&&navigator.userAgent.match(/MSIE [67]\./))return window.BOOMR.snippetMethod="s",void t(i.parentNode,"boomr-async");a=document.createElement("IFRAME"),a.src="about:blank",a.title="",a.role="presentation",a.loading="eager",r=(a.frameElement||a).style,r.width=0,r.height=0,r.border=0,r.display="none",i.parentNode.appendChild(a);try{O=a.contentWindow,d=O.document.open()}catch(_){n=document.domain,a.src="javascript:var d=document.open();d.domain='"+n+"';void(0);",O=a.contentWindow,d=O.document.open()}if(n)d._boomrl=function(){this.domain=n,t()},d.write("<bo"+"dy onload='document._boomrl();'>");else if(O._boomrl=function(){t()},O.addEventListener)O.addEventListener("load",O._boomrl,!1);else if(O.attachEvent)O.attachEvent("onload",O._boomrl);d.close()}function a(e){window.BOOMR_onload=e&&e.timeStamp||(new Date).getTime()}if(!window.BOOMR||!window.BOOMR.version&&!window.BOOMR.snippetExecuted){window.BOOMR=window.BOOMR||{},window.BOOMR.snippetStart=(new Date).getTime(),window.BOOMR.snippetExecuted=!0,window.BOOMR.snippetVersion=12,window.BOOMR.url=n+"DXNLE-YBWWY-AR74T-WMD99-77VRA";var i=document.currentScript||document.getElementsByTagName("script")[0],o=!1,r=document.createElement("link");if(r.relList&&"function"==typeof r.relList.supports&&r.relList.supports("preload")&&"as"in r)window.BOOMR.snippetMethod="p",r.href=window.BOOMR.url,r.rel="preload",r.as="script",r.addEventListener("load",e),r.addEventListener("error",function(){t(!0)}),setTimeout(function(){if(!o)t(!0)},3e3),BOOMR_lstart=(new Date).getTime(),i.parentNode.appendChild(r);else t(!1);if(window.addEventListener)window.addEventListener("load",a,!1);else if(window.attachEvent)window.attachEvent("onload",a)}}(),"".length>0)if(e&&"performance"in e&&e.performance&&"function"==typeof e.performance.setResourceTimingBufferSize)e.performance.setResourceTimingBufferSize();!function(){if(BOOMR=e.BOOMR||{},BOOMR.plugins=BOOMR.plugins||{},!BOOMR.plugins.AK){var n=""=="true"?1:0,t="",a="bdpnbetio5ucqz2dt4wq-f-8f23ab165-clientnsv4-s.akamaihd.net",i="false"=="true"?2:1,o={"ak.v":"39","ak.cp":"82485","ak.ai":parseInt("604074",10),"ak.ol":"0","ak.cr":3,"ak.ipv":4,"ak.proto":"http/1.1","ak.rid":"9e68101","ak.r":39403,"ak.a2":n,"ak.m":"dscx","ak.n":"essl","ak.bpcip":"8.222.208.0","ak.cport":38694,"ak.gh":"23.200.218.20","ak.quicv":"","ak.tlsv":"tls1.2","ak.0rtt":"","ak.0rtt.ed":"","ak.csrc":"-","ak.acc":"bbr","ak.t":"1732484909","ak.ak":"hOBiQwZUYzCg5VSAfCLimQ==fdzEmvLmSfbwqywrrAHW/M6vu0NH+30hytHj6TuW4HnYeO2Z0DxRs1YtxPQZTH3Uf9uu9AvwFwvRi2KrQgsSGfmnJCN1pj41Y3nNDy2Oogxnn2me97VeuF4se2PhNrc8h1BIC6zt28vdKfHpQz82tAMpGljgsMZB7cQNEzOWb2n+O+MXUqZyzcz2lRPOVOwQsywBsEwrGD9BQVTy8ygFnYyRLQrIkyjnFlgD6kMJalitUZP3FQ1Tgwc5xty+d5zBy9w/iURVp9l1rMvDcTh9iPZJDuaONJp/kii/b/YgZZtsyDJdP0b5txOVNllmXq9Fwu86LtrGvPUBOd9OISXCJYtJA+cClAlbOU5hzaN+/EBj76/4a7raF+uHwryNwQqYGe56NcC5mvukwM32KgxxUpbxcmJMH3LPejgKpRIHYYI=","ak.pv":"492","ak.dpoabenc":"","ak.tf":i};if(""!==t)o["ak.ruds"]=t;var r={i:!1,av:function(n){var t="http.initiator";if(n&&(!n[t]||"spa_hard"===n[t]))o["ak.feo"]=void 0!==e.aFeoApplied?1:0,BOOMR.addVar(o)},rv:function(){var e=["ak.bpcip","ak.cport","ak.cr","ak.csrc","ak.gh","ak.ipv","ak.m","ak.n","ak.ol","ak.proto","ak.quicv","ak.tlsv","ak.0rtt","ak.0rtt.ed","ak.r","ak.acc","ak.t","ak.tf"];BOOMR.removeVar(e)}};BOOMR.plugins.AK={akVars:o,akDNSPreFetchDomain:a,init:function(){if(!r.i){var e=BOOMR.subscribe;e("before_beacon",r.av,null,null),e("onbeacon",r.rv,null,null),r.i=!0}return this},is_complete:function(){return!0}}}}()}(window);</script></head> <body class="f11 f11v6"> <div class="f11w1"> <!-- start Common/Header --> <!-- Dispatcher:null --> <!-- BEGIN: oWidget_C/_Raw-Text/Display --> <!-- U30v3 --> <style> #u30{opacity:1 !important;filter:opacity(100%) !important;position:sticky;top:0} .u30v3{background:#3a3632;height:50px;overflow:hidden;border-top:5px solid #3a3632;border-bottom:5px solid #3a3632} #u30nav,#u30tools{visibility:hidden} .u30v3 #u30logo {width:121px;height: 44px;display: inline-flex;justify-content: flex-start;} #u30:not(.u30mobile) .u30-oicn-mobile,#u30.u30mobile .u30-oicn{display:none} #u30logo svg{height:auto;align-self:center} .u30brand{height:50px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:1344px;padding:0 48px;margin:0 auto} .u30brandw1{display:flex;flex-direction:row;color:#fff;text-decoration:none;align-items:center} @media (max-width:1024px){.u30brand{padding:0 24px}} #u30skip2,#u30skip2content{transform:translateY(-100%);position:fixed} .rtl #u30{direction:rtl} </style> <section id="u30" class="u30 u30v3 pause searchv2" data-trackas="header"> <div id="u30skip2"> <ul> <li><a id="u30skip2c" href="#maincontent">Skip to content</a></li> <li><a id="u30acc" href="https://www.oracle.com/corporate/accessibility/">Accessibility Policy</a></li> </ul> </div> <div class="u30w1 cwidth" id="u30w1"> <div id="u30brand" class="u30brand"> <div class="u30brandw1"> <a id="u30btitle" href="https://www.oracle.com/" data-lbl="logo" aria-label="Home"> <div id="u30logo"> <svg class="u30-oicn-mobile" xmlns="http://www.w3.org/2000/svg" width="32" height="21" viewBox="0 0 32 21"><path fill="#C74634" d="M9.9,20.1c-5.5,0-9.9-4.4-9.9-9.9c0-5.5,4.4-9.9,9.9-9.9h11.6c5.5,0,9.9,4.4,9.9,9.9c0,5.5-4.4,9.9-9.9,9.9H9.9 M21.2,16.6c3.6,0,6.4-2.9,6.4-6.4c0-3.6-2.9-6.4-6.4-6.4h-11c-3.6,0-6.4,2.9-6.4,6.4s2.9,6.4,6.4,6.4H21.2"/></svg> <svg class="u30-oicn" xmlns="http://www.w3.org/2000/svg" width="231" height="30" viewBox="0 0 231 30" preserveAspectRatio="xMinYMid"><path fill="#C74634" d="M99.61,19.52h15.24l-8.05-13L92,30H85.27l18-28.17a4.29,4.29,0,0,1,7-.05L128.32,30h-6.73l-3.17-5.25H103l-3.36-5.23m69.93,5.23V0.28h-5.72V27.16a2.76,2.76,0,0,0,.85,2,2.89,2.89,0,0,0,2.08.87h26l3.39-5.25H169.54M75,20.38A10,10,0,0,0,75,.28H50V30h5.71V5.54H74.65a4.81,4.81,0,0,1,0,9.62H58.54L75.6,30h8.29L72.43,20.38H75M14.88,30H32.15a14.86,14.86,0,0,0,0-29.71H14.88a14.86,14.86,0,1,0,0,29.71m16.88-5.23H15.26a9.62,9.62,0,0,1,0-19.23h16.5a9.62,9.62,0,1,1,0,19.23M140.25,30h17.63l3.34-5.23H140.64a9.62,9.62,0,1,1,0-19.23h16.75l3.38-5.25H140.25a14.86,14.86,0,1,0,0,29.71m69.87-5.23a9.62,9.62,0,0,1-9.26-7h24.42l3.36-5.24H200.86a9.61,9.61,0,0,1,9.26-7h16.76l3.35-5.25h-20.5a14.86,14.86,0,0,0,0,29.71h17.63l3.35-5.23h-20.6" transform="translate(-0.02 0)" /></svg> </div> </a> </div> </div> <div id="u30nav" class="u30nav" data-closetxt="Close Menu" data-trackas="menu"> <nav id="u30navw1" aria-label="Oracle website"> <button data-navtarget="products" aria-controls="products" aria-expanded="false" class="u30navitem">Products</button> <button data-navtarget="industries" aria-controls="industries" aria-expanded="false" class="u30navitem">Industries</button> <button data-navtarget="resources" aria-controls="resources" aria-expanded="false" class="u30navitem">Resources</button> <button data-navtarget="customers" aria-controls="customers" aria-expanded="false" class="u30navitem">Customers</button> <button data-navtarget="partners" aria-controls="partners" aria-expanded="false" class="u30navitem">Partners</button> <button data-navtarget="developers" aria-controls="developers" aria-expanded="false" class="u30navitem">Developers</button> <button data-navtarget="company" aria-controls="company" aria-expanded="false" class="u30navitem">Company</button> </nav> </div> <div id="u30tools" class="u30tools"> <div id="u30search"> <div id="u30searchw1"> <div id="u30searchw2"> <form name="u30searchForm" id="u30searchForm" data-contentpaths="/content/Web/Shared/Auto-Suggest Panel Event" method="get" action="https://search.oracle.com/results"> <div class="u30s1"> <button id="u30closesearch" aria-label="Close Search" type="button"> <span>Close Search</span> <svg width="9" height="14" viewBox="0 0 9 14" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M8 13L2 7L8 1" stroke="#161513" stroke-width="2" /> </svg> </button> <span class="u30input"> <div class="u30inputw1"> <input id="u30input" name="q" value="" type="text" placeholder="Search" autocomplete="off" aria-autocomplete="both" aria-label="Search Oracle.com" role="combobox" aria-expanded="false" aria-haspopup="listbox" aria-controls="u30searchw3"> </div> <input type="hidden" name="size" value="10"> <input type="hidden" name="page" value="1"> <input type="hidden" name="tab" value="all"> <span id="u30searchw3title" class="u30visually-hidden">Search Oracle.com</span> <div id="u30searchw3" data-pagestitle="SUGGESTED LINKS" data-autosuggesttitle="SUGGESTED SEARCHES" data-allresultstxt="All results for" data-allsearchpath="https://search.oracle.com/results?q=u30searchterm&size=10&page=1&tab=all" role="listbox" aria-labelledby="u30searchw3title"> <ul id="u30quicklinks" class="autocomplete-items" role="group" aria-labelledby="u30quicklinks-title"> <li role="presentation" class="u30auto-title" id="u30quicklinks-title">QUICK LINKS</li> <li role="option"><a href="/cloud/" data-lbl="quick-links:oci">Oracle Cloud Infrastructure</a> </li> <li role=" option"><a href="/applications/" data-lbl="quick-links:applications">Oracle Fusion Cloud Applications</a></li> <li role="option"><a href="/database/technologies/" data-lbl="quick-links:database">Oracle Database</a></li> <li role="option"><a href="/java/technologies/downloads/" data-lbl="quick-links:download-java">Download Java</a> </li> <li role="option"><a href="/careers/" data-lbl="quick-links:careers">Careers at Oracle</a></li> </ul> </div> <span class="u30submit"> <input class="u30searchbttn" type="submit" value="Submit Search"> </span> <button id="u30clear" type="reset" aria-label="Clear Search"> <svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M7 7L13 13M7 13L13 7M19 10C19 14.9706 14.9706 19 10 19C5.02944 19 1 14.9706 1 10C1 5.02944 5.02944 1 10 1C14.9706 1 19 5.02944 19 10Z" stroke="#161513" stroke-width="2" /> </svg> </button> </span> </div> </form> <div id="u30announce" data-alerttxt="suggestions found to navigate use up and down arrows" class="u30visually-hidden" aria-live="polite"></div> </div> </div> <button class="u30searchBtn" id="u30searchBtn" type="button" aria-label="Open Search Field" aria-expanded="false"> <span>Search</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"> <path d="M15,15l6,6M17,10a7,7,0,1,1-7-7A7,7,0,0,1,17,10Z" /> </svg> </button> </div> <span id="ac-flag"> <a class="flag-focus" href="/countries-list.html#countries" data-ajax="true" rel="lightbox" role="button"> <span class="sr-only">Country</span> <img class="flag-image" src="" alt=""/> <svg class="default-globe" alt="Country" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <rect width="20" height="20" fill="url(#pattern0)"/> <defs> <pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> <use xlink:href="#image0_1_1830" transform="translate(-0.166667 -0.166667) scale(0.0138889)"/> </pattern> <image alt="" id="image0_1_1830" width="96" height="96" xlink:href="data:image/png;base64,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"/> </defs> </svg> </a> </span> <div id="u30-profile" class="u30-profile"> <button id="u30-flyout" data-lbl="sign-in-account" aria-expanded="false"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M17,19.51A3,3,0,0,0,14,17H10a3,3,0,0,0-3,2.51m9.92,0a9,9,0,1,0-9.92,0m9.92,0a9,9,0,0,1-9.92,0M15,10a3,3,0,1,1-3-3A3,3,0,0,1,15,10Z"/></svg> <span class="acttxt">View Accounts</span> </button> <div id="u30-profilew1"> <button id="u30actbck" aria-label="close account flyout"><span class="u30actbcktxt">Back</span></button> <div class="u30-profilew2"> <span class="u30acttitle">Cloud Account</span> <a href="/cloud/sign-in.html" class=" u30darkcta u30cloudbg" data-lbl="sign-in-to-cloud">Sign in to Cloud</a> <a href="/cloud/free/" class="u30lightcta" data-lbl="try-free-cloud-trial">Sign Up for Free Cloud Tier</a> </div> <span class="u30acttitle">Oracle Account</span> <ul class="u30l-out"> <li><a href="https://www.oracle.com/webapps/redirect/signon?nexturl=" data-lbl="profile:sign-in-account" class="u30darkcta">Sign-In</a></li> <li><a href="https://profile.oracle.com/myprofile/account/create-account.jspx" data-lbl="profile:create-account" class="u30lightcta">Create an Account</a></li> </ul> <ul class="u30l-in"> <li><a href="/corporate/contact/help.html" data-lbl="help">Help</a></li> <li><a href="javascript:sso_sign_out();" id="u30pfile-sout" data-lbl="signout">Sign Out</a></li> </ul> </div> </div> <div class="u30-contact"> <a href="/corporate/contact/" data-lbl="contact-us" title="Contact Sales"><span>Contact Sales</span></a> </div> <a href="/global-menu-v2/" id="u30ham" role="button" aria-expanded="false" aria-haspopup="true" aria-controls="u30navw1"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"> <title>Menu</title> <path d="M16,4 L2,4" class="p1"></path> <path d="M2,12 L22,12" class="p2"></path> <path d="M2,20 L16,20" class="p3"></path> <path d="M0,12 L24,12" class="p4"></path> <path d="M0,12 L24,12" class="p5"></path> </svg> <span>Menu</span> </a> </div> </div> <script> var u30min = [722,352,0,0]; var u30brsz = new ResizeObserver(u30 => { document.getElementById('u30').classList.remove('u30mobile','u30tablet','u30notitle'); let u30b = document.getElementById('u30brand').offsetWidth, u30t = document.getElementById('u30tools').offsetWidth ; u30v = document.getElementById('u30navw1'); u30w = document.getElementById('u30w1').offsetWidth - 48; if((u30b + u30t) > u30min[0]){ u30min[2] = ((u30b + u30t) > 974) ? u30b + u30t + 96 : u30b + u30t + 48; }else{ u30min[2] = u30min[0]; } u30min[3] = ((u30b + 112) > u30min[1]) ? u30min[3] = u30b + 112 : u30min[3] = u30min[1]; u30v.classList.add('u30navchk'); u30min[2] = (u30v.lastElementChild.getBoundingClientRect().right > u30min[2]) ? Math.ceil(u30v.lastElementChild.getBoundingClientRect().right) : u30min[2]; u30v.classList.remove('u30navchk'); if(u30w <= u30min[3]){ document.getElementById('u30').classList.add('u30notitle'); } if(u30w <= u30min[2]){ document.getElementById('u30').classList.add('u30mobile'); } }); var u30wrsz = new ResizeObserver(u30 => { let u30n = document.getElementById('u30navw1').getBoundingClientRect().height, u30h = u30[0].contentRect.height; let u30c = document.getElementById('u30').classList, u30w = document.getElementById('u30w1').offsetWidth - 48, u30m = 'u30mobile', u30t = 'u30tablet'; if(u30c.contains('navexpand') && u30c.contains(u30m) && u30w > u30min[2]){ if(!document.querySelector('button.u30navitem.active')){ document.getElementById('u30ham').click(); } u30c.remove(u30m); if(document.getElementById('u30').getBoundingClientRect().height > 80){ u30c.add(u30t); }else{ u30c.remove(u30t); } }else if(u30w <= u30min[2]){ if(getComputedStyle(document.getElementById('u30tools')).visibility != "hidden"){ u30c.add(u30m); u30c.remove(u30t); } }else if(u30n < 30 && u30h > 80){ u30c.add(u30t); u30c.remove(u30m); }else if(u30n > 30){ u30c.add(u30m); u30c.remove(u30t); }else if(u30n < 30 && u30h <= 80){ u30c.remove(u30m); if(document.getElementById('u30').getBoundingClientRect().height > 80){ u30c.add(u30t); }else{ u30c.remove(u30t); } } }); u30brsz.observe(document.getElementById('u30btitle')); u30wrsz.observe(document.getElementById('u30')); </script> </section> <!-- /U30v3 --> <!-- END: oWidget_C/_Raw-Text/Display --> <!-- end Common/Header --> <!-- U03v5 --> <nav class="u03 u03v5 u03bttns" data-trackas="breadcrumb" data-ocomid="u03"> <div class="cwidth"> <div class="u03w1"> <ul> <li><a href="/java/">Java</a></li> <li><a href="/java/technologies/">Technologies</a></li> </ul> <h1>JavaServer Pages Standard Tag Library</h1> </div> </div> <script type="text/javascript"> var pageData = pageData || {}; //page info pageData.pageInfo = pageData.pageInfo || {}; pageData.pageInfo.breadCrumbs = "Java / Technologies"; </script> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Java", "item": "https://www.oracle.com/java/" }, { "@type": "ListItem", "position": 2, "name": "Technologies", "item": "https://www.oracle.com/java/technologies/" } ] } </script> </nav> <!-- _Raw-Text --> <section class="cc01 cc01v0 cpad"> <div class="cc01w1 cwidth"> <h3>JavaServer Pages Standard Tag Library</h3> <p> JavaServer Pages Standard Tag Library (JSTL) encapsulates as simple tags the core functionality common to many Web applications. JSTL has support for common, structural tasks such as iteration and conditionals, tags for manipulating XML documents, internationalization tags, and SQL tags. It also provides a framework for integrating existing custom tags with JSTL tags.</p> <p> The JSTL 1.2 Maintenace Release aligns with the Unified Expression Language (EL) that is being delivered as part of the JavaServer Pages (JSP) 2.1 specification. Thanks to the Unified EL, JSTL tags, such as the JSTL iteration tags, can now be used with JavaServer Faces components in an intuitive way.</p> <p> JSTL 1.2 is part of the Java EE 5 platform.</p> <ul class="obullets"> <li><strong> <a href="//javaee.github.io/jstl-api/" target="">JSTL Project</a> </strong> Go to the JSTL project for the latest API and implementation of JSTL 1.2.</li> <li><strong><a href="//jcp.org/en/jsr/detail?id=52">JSTL 1.2 Maintenance Review Specification Available!</a> </strong> Find out how changes to the JSTL specification help support the alignment of Java-based web-tier technologies.</li> </ul> <h4>Learn More</h4> <p>To learn about Webtier technologies in GlassFish, please visit the <a target="_blank" href="//javaee.github.io/glassfish/">GlassFish Webtier page</a> and or send e-mail to <a href="mailto:webtier@glassfish.dev.java.net">webtier@glassfish.java.net</a></p> <p>JSP Tag Library Developers! The JavaServer Pages Technology Forum is a great place to learn more about developing with JSP technology.</p> </div> </section> <!-- / _Raw-Text --> <!-- U10v0 --> <!-- Dispatcher:null --> <!-- BEGIN: oWidget_C/_Raw-Text/Display --> <!-- U10v0 --> <footer id="u10" class="u10 u10v6" data-trackas="footer" type="redwood" data-ocomid="u10" data-a11y="true"> <nav class="u10w1" aria-label="Footer"> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">Resources for</div> <ul> <li><a data-lbl="resources-for:career" href="/careers/">Careers</a></li> <li><a data-lbl="resources-for:developers" href="/developer/">Developers</a></li> <li><a data-lbl="resources-for:investors" href="https://investor.oracle.com/home/default.aspx">Investors</a></li> <li><a data-lbl="resources-for:partners" href="/partner/">Partners</a></li> <li><a data-lbl="resources-for:researchers" href="/research/">Researchers</a></li> <li><a data-lbl="resources-for:students-educators" href="https://academy.oracle.com/en/oa-web-overview.html">Students and Educators</a></li> </ul> </div> </div> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">Why Oracle</div> <ul> <li><a data-lbl="why-oracle:analyst-reports" href="/corporate/analyst-reports/">Analyst Reports</a> </li> <li><a data-lbl="why-oracle:gartner-mq-erp-cloud" href="/erp/what-is-erp/best-erp/">Best cloud-based ERP</a></li> <li><a data-lbl="why-oracle:cloud-economics" href="/cloud/economics/">Cloud Economics</a></li> <li><a data-lbl="why-oracle:corporate-responsibility" href="/social-impact/">Social Impact</a></li> <li><a data-lbl="why-oracle:culture-inclusion" href="/careers/diversity-inclusion/">Culture and Inclusion</a></li> <li><a data-lbl="why-oracle:security-pracitices" href="/corporate/security-practices/">Security Practices</a></li> </ul> </div> </div> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">Learn</div> <ul> <li><a data-lbl="learn:cloud-computing" href="/cloud/what-is-cloud-computing/">What is cloud computing?</a></li> <li><a data-lbl="learn:crm" href="/cx/what-is-crm/">What is CRM?</a></li> <li><a data-lbl="learn:docker" href="/cloud/cloud-native/container-registry/what-is-docker/">What is Docker?</a></li> <li><a data-lbl="learn:kubernetes" href="/cloud/cloud-native/kubernetes-engine/what-is-kubernetes/">What is Kubernetes?</a></li> <li><a data-lbl="learn:python" href="/developer/what-is-python-for-developers/">What is Python?</a></li> <li><a data-lbl="learn:saas" href="/applications/what-is-saas/">What is SaaS?</a></li> </ul> </div> </div> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">News and Events</div> <ul> <li><a data-lbl="newsandevents:news" href="/news/">News</a></li> <li><a data-lbl="newsandevents:oracle-cloudworld" href="/cloudworld/">Oracle CloudWorld</a></li> <li><a data-lbl="newsandevents:oracle-cloudworld-tour" href="/cloudworld-tour/">Oracle CloudWorld Tour</a></li> <li><a data-lbl="newsandevents:oracle-health-summit" href="/health/health-summit/">Oracle Health Summit</a></li> <li><a data-lbl="newsandevents:devlive" href="/developer/devlive/">Oracle DevLive</a></li> <li><a data-lbl="newsandevents:search-all-events" href="https://search.oracle.com/events?q=&lang=english">Search all events</a></li> </ul> </div> </div> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">Contact Us</div> <ul> <li><a href="tel:18006330738">US Sales: +1.800.633.0738</a></li> <li><a data-lbl="contact-us:how-can-we-help" href="/corporate/contact/">How can we help?</a></li> <li><a data-lbl="contact-us:subscribe-to-emails" href="https://go.oracle.com/subscriptions">Subscribe to emails</a></li> <li><a data-lbl="contact-us:integrity-helpline" href="https://secure.ethicspoint.com/domain/media/en/gui/31053/index.html">Integrity Helpline</a></li> <li><a data-lbl="contact-us:accessibility" href="/corporate/accessibility/">Accessibility</a></li> </ul> </div> </div> <div class="u10w4"> <hr /> </div> </nav> <div class="u10w11"> <ul class="u10-cr"> <li class="u10mtool" id="u10cmenu"> <a data-lbl="country-region" class="u10ticon u10regn" href="/universal-menu/#u10countrymenu">Country/Region</a> </li> </ul> <nav class="u10w5 u10w10" aria-label="Site info"> <ul class="u10-links"> <li></li> <li><a data-lbl="copyright" href="/legal/copyright/">© 2024 Oracle</a></li> <li><a data-lbl="privacy" href="/legal/privacy/">Privacy</a><span>/</span><a data-lbl="do-not-sell-my-info" href="/legal/privacy/privacy-choices/">Do Not Sell My Info</a></li> <li> <div id="teconsent"></div> </li> <li><a data-lbl="ad-choices" href="/legal/privacy/privacy-policy/#adchoices">Ad Choices</a></li> <li><a data-lbl="careers" href="/corporate/careers/">Careers</a></li> </ul> </nav> <nav class="u10scl" aria-label="Social media links"> <ul class="scl-icons"> <li class="scl-facebook"><a data-lbl="scl-icon:facebook" href="https://www.facebook.com/Oracle/" target="_blank" title="Oracle on Facebook"></a></li> <li class="scl-twitter"><a data-lbl="scl-icon:twitter" href="https://twitter.com/oracle" target="_blank" title="Follow Oracle on Twitter"></a></li> <li class="scl-linkedin"><a data-lbl="scl-icon:linkedin" href="https://www.linkedin.com/company/oracle/" target="_blank" title="Oracle on LinkedIn"></a></li> <li class="scl-youtube"><a data-lbl="scl-icon:you-tube" href="https://www.youtube.com/oracle/" target="_blank" title="Watch Oracle on YouTube"></a></li> </ul> </nav> </div> </footer> <!-- /U10v6 --> <!-- END: oWidget_C/_Raw-Text/Display --> <!-- /U10v0 --> </div> <!-- Container/Display Start --> <!-- _Raw-Text --> <!-- www-us EndBodyAdminContainer --> <!-- Start SiteCatalyst code --> <script language="JavaScript" src="https://www.oracle.com/us/assets/metrics/ora_ocom.js"></script> <!-- End SiteCatalyst code --> <!-- www-us EndBodyAdminContainer --> <!-- / _Raw-Text --> <!-- Container/Display end --> </body> </html>