




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
外文原文JSP74VALIDATIONTHEREAREANUMBEROFREASONSWHYTHESTRUCTUREOFAJSPPAGESHOULDCONFORMTOSOMEVALIDATIONRULESREQUESTTIMESEMANTICSEGASUBELEMENTMAYREQUIRETHEINFORMATIONFROMSOMEENCLOSINGELEMENTATREQUESTTIMEAUTHORINGTOOLSUPPORTEGATOOLMAYREQUIREANORDERINGINTHEACTIONSMETHODOLOGICALCONSTRAINTSEGADEVELOPMENTGROUPMAYWANTTOCONSTRAINTHEWAYSOMEFEATURESAREUSEDVALIDATIONCANBEDONEEITHERATTRANSLATIONTIMEORATREQUESTTIMEINGENERALTRANSLATIONTIMEVALIDATIONPROVIDESABETTERUSEREXPERIENCE,ANDTHEJSP20SPECIFICATIONPROVIDESAVERYFLEXIBLETRANSLATIONTIMEVALIDATIONMECHANISMJSP741TRANSLATIONTIMEMECHANISMSSOMETRANSLATIONTIMEVALIDATIONISREPRESENTEDINTHETAGLIBRARYDESCRIPTORINSOMECASESATAGEXTRAINFOCLASSNEEDSTOBEPROVIDEDTOSUPPLEMENTTHISINFORMATIONJSP7411ATTRIBUTEINFORMATIONTHETAGLIBRARYDESCRIPTORCONTAINSTHEBASICSYNTACTICINFORMATIONINPARTICULAR,THEATTRIBUTESAREDESCRIBEDINCLUDINGTHEIRNAME,WHETHERTHEYAREOPTIONALORMANDATORY,ANDWHETHERTHEYACCEPTREQUESTTIMEEXPRESSIONSADDITIONALLYTHEBODYCONTENTELEMENTCANBEUSEDTOINDICATETHATANACTIONMUSTBEEMPTYALLCONSTRAINTSDESCRIBEDINTHETLDMUSTBEENFORCEDATAGLIBRARYAUTHORCANASSUMETHATTHETAGHANDLERINSTANCECORRESPONDSTOANACTIONTHATSATISFIESALLCONSTRAINTSINDICATEDINTHETLDJSP7412VALIDATORCLASSESATAGLIBRARYVALIDATORCLASSMAYBELISTEDINTHETLDFORATAGLIBRARYTOREQUESTTHATAJSPPAGEBEVALIDATEDTHEXMLVIEWOFAJSPPAGEISEXPOSEDTHROUGHAPAGEDATACLASS,ANDTHEVALIDATORCLASSCANDOANYCHECKSTHETAGLIBRARYAUTHORMAYHAVEFOUNDAPPROPRIATETHEJSPCONTAINERMUSTUNIQUELYIDENTIFYALLXMLELEMENTSINTHEXMLVIEWOFAJSPPAGETHROUGHAJSPIDATTRIBUTETHISATTRIBUTECANUSEDTOPROVIDEBETTERINFORMATIONONTHELOCATIONOFANERRORTHEVALIDATORCLASSMECHANISMISNEWASOFTHEJSP12SPECIFICATIONATAGLIBRARYVALIDATORCANBEPASSEDSOMEINITIALIZATIONPARAMETERSINTHETLDTHISEASESTHEREUSEOFVALIDATORCLASSESWEEXPECTTHATVALIDATORCLASSESWILLBEWRITTENBASEDONDIFFERENTXMLSCHEMAMECHANISMSDTDS,XSCHEMA,RELAXX,OTHERSSTANDARDVALIDATORCLASSESMAYBEINCORPORATEDINTOALATERVERSIONOFTHEJSPSPECIFICATIONIFACLEARSCHEMASTANDARDAPPEARSATSOMEPOINTJSP7413TAGEXTRAINFOCLASSVALIDATIONTAGEXTRAINFOADDITIONALTRANSLATIONTIMEVALIDATIONCANBEDONEUSINGTHEVALIDATEMETHODINTHETAGEXTRAINFOCLASSTHEVALIDATEMETHODISINVOKEDATTRANSLATIONTIMEANDISPASSEDATAGDATAINSTANCEASITSARGUMENTASOFJSP20,THEDEFAULTBEHAVIOROFVALIDATEISTOCALLTHEISVALIDMETHODTHEISVALIDMECHANISMWASTHEORIGINALVALIDATIONMECHANISMINTRODUCEDINJSP11WITHTHERESTOFTHETAGEXTENSIONMACHINERYTAGLIBRARIESTHATAREDESIGNEDTORUNINJSP12CONTAINERSORHIGHERSHOULDUSETHEVALIDATORCLASSMECHANISMTAGLIBRARIESTHATAREDESIGNEDTORUNINJSP20CONTAINERSORHIGHERTHATWISHTOUSETHETAGEXTRAINFOVALIDATIONMECHANISMAREENCOURAGEDTOIMPLEMENTTHEVALIDATEMETHODINFAVOROFTHEISVALIDMETHODDUETOTHEABILITYTOIMPLEMENTINGBOTHISNOTRECOMMENDEDJSP742REQUESTTIMEERRORSINSOMECASES,ADDITIONALREQUESTTIMEVALIDATIONWILLBEDONEDYNAMICALLYWITHINTHEMETHODSINTHETAGHANDLERIFANERRORISDISCOVERED,ANINSTANCEOFJSPEXCEPTIONCANBETHROWNIFUNCAUGHT,THISOBJECTWILLINVOKETHEERRORPAGEMECHANISMOFTHEJSPSPECIFICATIONJSP75CONVENTIONSANDOTHERISSUESTHISSECTIONISNOTNORMATIVE,ALTHOUGHITREFLECTSGOODDESIGNPRACTICESJSP751HOWTODEFINENEWIMPLICITOBJECTSWEADVOCATETHEFOLLOWINGSTYLEFORTHEINTRODUCTIONOFIMPLICITOBJECTSDEFINEATAGLIBRARYADDANACTIONCALLEDDEFINEOBJECTSTODEFINETHEDESIREDOBJECTSTHEJSPPAGECANMAKETHESEOBJECTSAVAILABLEASFOLLOWSSTARTUSINGTHEOBJECTSTHISAPPROACHHASTHEADVANTAGEOFREQUIRINGNONEWMACHINERYANDOFMAKINGVERYEXPLICITTHEDEPENDENCYINSOMECASESTHEREMAYBEANIMPLEMENTATIONDEPENDENCYINMAKINGTHESEOBJECTSAVAILABLEFOREXAMPLE,THEYMAYBEPROVIDINGACCESSTOSOMEFUNCTIONALITYTHATEXISTSONLYINAPARTICULARIMPLEMENTATIONTHISCANBEDONEBYHAVINGTHETAGEXTENSIONCLASSTESTATRUNTIMEFORTHEEXISTENCEOFSOMEIMPLEMENTATIONDEPENDENTFEATUREANDRAISEARUNTIMEERRORTHIS,OFCOURSE,MAKESTHEPAGENOTJ2EECOMPLIANTTHISMECHANISM,TOGETHERWITHTHEACCESSTOMETADATAINFORMATIONALLOWSFORVENDORSTOINNOVATEWITHINTHESTANDARDNOTEIFAFEATUREISADDEDTOAJSPSPECIFICATION,ANDAVENDORALSOPROVIDESTHATFEATURETHROUGHITSVENDORSPECIFICMECHANISM,THESTANDARDMECHANISM,ASINDICATEDINTHEJSPSPECIFICATIONWILL“WIN”THISMEANSTHATVENDORSPECOFICMECHANISMSCANSLOWLYMIGRATEINTOTHESPECIFICATIONASTHEYPROVETHEIRUSEFULNESSJSP752ACCESSTOVENDORSPECIFICINFORMATIONIFAVENDORWANTSTOASSOCIATESOMEINFORMATIONTHATISNOTDESCRIBEDINTHECURRENTVERSIONOFTHETLDWITHSOMETAGLIBRARY,ITCANDOSOBYINSERTINGTHEINFORMATIONINADOCUMENTITCONTROLS,INSERTINGTHEDOCUMENTINTHEWEBINFPORTIONOFTHEWEBAPPLICATIONWHERETHETAGLIBRARYRESIDES,ANDUSINGTHESTANDARDSERVLET24MECHANISMSTOACCESSTHATINFORMATIONJSP753CUSTOMIZINGATAGLIBRARYATAGLIBRARYCANBECUSTOMIZEDATASSEMBLYANDDEPLOYMENTTIMEFOREXAMPLE,ATAGLIBRARYTHATPROVIDESACCESSTODATABASESMAYBECUSTOMIZEDWITHLOGINANDPASSWORDINFORMATIONTHEREISNOCONVENIENTPLACEINWEBXMLINTHESERVLET24SPECFORCUSTOMIZATIONINFORMATIONASTANDARDIZEDMECHANISMISPROBABLYGOINGTOBEPARTOFAFORTHCOMINGJSPSPECIFICATION,BUTINTHEMEANTIMETHESUGGESTIONISTHATATAGLIBRARYAUTHORPLACETHISINFORMATIONINAWELLKNOWNLOCATIONATSOMERESOURCEINTHEWEBINF/PORTIONOFTHEWEBAPPLICATIONANDACCESSITVIATHEGETRESOURCECALLONTHESERVLETCONTEXTCHAPTERJSP8TAGFILESTHISCHAPTERDESCRIBESTHEDETAILSOFTAGFILES,AJSP20FACILITYTHATALLOWSPAGEAUTHORSTOAUTHORTAGEXTENSIONSUSINGONLYJSPSYNTAXINTHEPAST,THEABILITYTOENCAPSULATEPRESENTATIONLOGICINTOREUSABLE,FULLFEATUREDTAGLIBRARIESWASONLYAVAILABLETODEVELOPERSTHATHADAREASONABLEAMOUNTOFJAVAEXPERIENCETAGFILESBRINGTHEPOWEROFREUSETOTHEBASICPAGEAUTHOR,WHOARENOTREQUIREDTOKNOWJAVAWHENUSEDTOGETHERWITHJSPFRAGMENTSANDSIMPLETAGHANDLERS,THESECONCEPTSHAVETHEABILITYTOSIMPLIFYJSPDEVELOPMENTSUBSTANTIALLY,EVENFORDEVELOPERSWHODOKNOWJAVAJSP81OVERVIEWASOFJSPVERSION20,THEJSPCOMPILERISREQUIREDTORECOGNIZETAGFILESATAGFILEISASOURCEFILETHATPROVIDESAWAYFORAPAGEAUTHORTOABSTRACTASEGMENTOFJSPCODEANDMAKEITREUSABLEVIAACUSTOMACTIONTAGFILESALLOWAJSPPAGEAUTHORTOCREATETAGLIBRARIESUSINGJSPSYNTAXTHISMEANSTHATPAGEAUTHORSNOLONGERNEEDTOKNOWJAVAORASKSOMEONEWHOKNOWSJAVATOWRITEATAGEXTENSIONEVENFORPAGEAUTHORSORTAGLIBRARYDEVELOPERSWHOKNOWJAVA,WRITINGTAGFILESISMORECONVENIENTWHENDEVELOPINGTAGSTHATPRIMARILYOUTPUTTEMPLATETEXTTHEREQUIREDFILEEXTENSIONFORATAGFILEARETAGORTAGXASISTHECASEWITHJSPFILES,THEACTUALTAGMAYBECOMPOSEDOFATOPFILETHATINCLUDESOTHERFILESTHATCONTAINEITHERACOMPLETETAGORASEGMENTOFATAGFILEJUSTASTHERECOMMENDEDEXTENSIONFORASEGMENTOFAJSPFILEISJSPF,THERECOMMENDEDEXTENSIONFORASEGMENTOFATAGFILEISTAGFJSP82SYNTAXOFTAGFILESTHESYNTAXOFATAGFILEISSIMILARTOTHATOFAJSPPAGE,WITHTHEFOLLOWINGEXCEPTIONSDIRECTIVESSOMEDIRECTIVESARENOTAVAILABLEORHAVELIMITEDAVAILABILITY,ANDSOMETAGFILESPECIFICDIRECTIVESAREAVAILABLESEESECTIONJSP85,”TAGFILEDIRECTIVES”FORADISCUSSIONONTAGFILEDIRECTVESTHEANDSTANDARDACTIONSCANONLYBEUSEDINTAGFILESTHEEBNFGRAMMARINSECTIONJSP1310,”JSPSYNTAXGRAMMAR”DESCRIBESTHESYNTAXOFTAGFILESTHEROOTPRODUCTIONFORATAGFILESISJSPTAGDEFSEESECTIONJSP86FORDETAILSONTAGFILESINXMLSYNTAXJSP83SEMANTICSOFTAGFILESFOREACHTAGFILEINTHEWEBAPPLICATION,ATAGHANDLERISMADEAVAILABLETOJSPPAGESANDOTHERTAGFILESTHESPECIFICSOFHOWTHISISDONEARELEFTUPTOTHECONTAINERIMPLEMENTATIONFOREXAMPLE,SOMECONTAINERSMAYCHOOSETOCOMPILETAGFILESINTOJAVATAGHANDLERS,WHEREASOTHERSMAYDECIDETOINTERPRETTHETAGHANDLERSHOWEVERTHECONTAINERCHOOSESTOPREPARETHETAGHANDLER,THEFOLLOWINGCONDITIONMUSTHOLDTRUEFORALLTAGHANDLERSDEFINEDASTAGFILESTHETAGFILEIMPLEMENTATIONMUSTKEEPACOPYOFTHEJSPCONTEXTINSTANCEPASSEDTOITBYTHEINVOKINGPAGEVIATHESETJSPCONTEXTMETHODTHISISCALLEDTHEINVOKINGJSPCONTEXTTHETAGFILEIMPLEMENTATIONMUSTCREATEANDMAINTAINASECONDINSTANCEOFJSPCONTEXTCALLEDAJSPCONTEXTWRAPPERIFTHEINVOKINGJSPCONTEXTISANINSTANCEOFPAGECONTEXT,THEJSPCONTEXTWRAPPERMUSTALSOBEANINSTANCEOFPAGECONTEXTTHISWRAPPERMUSTBERETURNEDWHENGETJSPCONTEXTISCALLEDFOREACHINVOCATIONTOTHETAG,THEJSPCONTEXTWRAPPERMUSTPRESENTACLEANPAGESCOPEMUSTBEIDENTICALTOTHOSEINTHEINVOKINGJSPCONTEXTANDMUSTBEMODIFIEDACCORDINGLYWHENUPDATESAREMADETOTHOSESCOPESINTHEJSPCONTEXTWRAPPERANYMODIFICATIONSTOTHEPAGESCOPE,HOWEVER,MUSTNOTAFFECTTHEINVOKINGJSPCONTEXTFOREACHATTRIBUTEDECLAREDANDSPECIFIED,APAGESCOPEDVARIABLEMUSTBECREATEDINTHEPAGESCOPEOFTHEJSPCONTEXTWRAPPERTHENAMEOFTHEVARIABLEMUSTBETHESAMEASTHEDECLAREDATTRIBUTENAMETHEVALUEOFTHEVARIABLEMUSTBETHEVALUEOFTHEATTRIBUTEPASSEDINDURINGINVOCATIONFOREACHATTRIBUTEDECLAREDASOPTIONALANDNOTSPECIFIED,NOPAGESCOPEDVARIABLEISCREATEDIFTHETAGACCEPTSDYNAMICATTRIBUTES,THENTHENAMESANDVALUESOFTHOSEDYNAMICATTRIBUTESMUSTBEEXPOSEDTOTHETAGFILEASSPECIFIEDINTABLEJSP82FORALLINTENTSANDPURPOSESOTHERTHANFORSYNCHRONIZINGTHEAT_BEGIN,NESTED,ANDAT_ENDSCRIPTINGVARIABLES,THEEFFECTIVEJSPCONTEXTFORTHETAGFILEISTHEJSPCONTEXTWRAPPERFOREXAMPLE,THEJSPCONTEXTSCRIPTINGVARIABLEMUSTPOINTTOTHEJSPCONTEXTWRAPPERINSTEADOFTHEINVOKINGJSPCONTEXTTHETAGHANDLERMUSTBEHAVEASTHOUGHATAGLIBRARYDESCRIPTORENTRYWASDEFINEDFORIT,INACCORDANCEWITHTHETAG,ATTRIBUTE,ANDVARIABLEDIRECTIVESTHATAPPEARINTHETAGFILETRANSLATIONUNITITISLEGALFORATAGFILETOFORWARDTOAPAGEVIATHESTANDARDACTIONJUSTASFORJSPPAGES,THEFORWARDISHANDLEDTHROUGHTHEREQUESTDISPATCHERUPONRETURNFROMTHEREQUESTDISPATCHERFORWARDMETHOD,THEGENERATEDTAGHANDLERMUSTSTOPPROCESSINGOFTHETAGFILEANDTHROWJAVAXSERVLETJSPSKIPPAGEEXCEPTIONSIMILARLY,IFATAGFILEINVOKESACLASSICTAGHANDLERWHICHRETURNSSKIP_PAGEFROMTHEDOENDTAGMETHOD,ORIFITINVOKESASIMPLETAGHANDLERWHICHTHROWSSKIPPAGEEXCEPTIONINTHEDOTAGMETHOD,THEGENERATEDTAGHANDLERMUSTTERMINATEANDSKIPPAGEEXCEPTIONMUSTBETHROWNINEITHEROFTHESETWOCASES,THEDOCATCHANDDOFINALLYMETHODSMUSTBECALLEDONENCLOSINGTAGSTHATIMPLEMENTTHETRYCATCHFINALLYINTERFACEBEFORERETURNINGTHEDOENDTAGMETHODSOFENCLOSINGCLASSICTAGSMUSTNOTBECALLEDCARESHOULDBETAKENWHENINVOKINGACLASSICTAGHANDLERFROMATAGFILEINGENERAL,SIMPLETAGEXTENSIONSCANBEUSEDINENVIRONMENTSOTHERTHANSERLETENVIRONMENTSHOWEVER,BECAUSETHETAGINTERFACERELIESONPAGECONTEXT,WHICHINTURNASSUMESASERVLETENVIRONMENT,USINGCLASSICTAGHANDLERSINDIRECTLYBINDSTHEUSEOFTHETAGFILETOSERLETENVIRONMRNTSNONETHELESS,THEJSPCONTAINERMUSTALLOWSUCHANINVOCATIONTOOCCURWHENATAGFILEATTEMPTSTOINVOKEACLASSICTAGHANDLERIEONETHATIMPLEMENTSTHETAGINTERFACE,ITMUSTCASTTHEJSPCONTEXTPASSEDTOTHESIMPLETAGINTOAPAGECONTEXTINTHEEVENTTHATTHECLASSCASTFAILS,THEINVOCATIONOFTHEECLASSICTAGFAILS,ANDAJSPEXCEPTIONMUSTBETHROWNJSP84PACKAGINGTAGFILESONEOFTHEGOALSOFTAGFILESASATECHNOLOGYISTOMAKEITASEASYTOWRITEATAGHANDLERASITISTOWRITEAJSPTRADITIONALLY,WRITINGTAGHANDLERHASBEENATEDIOUSTASK,WITHALOTOFTIMESPENTCOMPILINGANDPACKAGINGTHETAGHANDLERSANDWRITINGATLDTOPROVIDINGINFORMATIONTOTOOLSANDPAGEAUTHORSABOUTTHECUSTOMACTIONTHERULESFORPACKAGINGTAGFILESAREDESIGNEDTOMAKEITVERYSIMPLEANDFASTTOWRITESIMPLETAGS,WHILESTILLPROVIDINGASMUCHPOWERANDFLEXIBILITYASCLASSICTAGHANDLERSHAVEJSP841LOCATIONOFTAGFILESTAGEXTENSIONSWRITTENINJSPUSINGTAGFILESCANBEPLACEDINONEOFTWOLOCATIONSTHEFIRSTPOSSIBILITYISINTHE/METAINF/TAGS/DIRECTORYORASUBDIRECTORYOF/METAINF/TAGS/INAJARFILEINSTALLEDINTHE/WEBINF/LIB/DIRECTORYOFTHEWEBAPPLICATIONTAGSPLACEDHEREARETYPICALLYPARTOFAREUSABLELIBRARYOFTAGSTHATCANBEEASILYDROPPEDINTOANYWEBAPPLICATIONTHESECONDPOSSIBILITYISINTHE/WEBINF/TAGS/DIRECTORYORASUBDIRECTORYOF/WEBINF/TAGS/OFTHEWEBAPPLICATIONTAGSPLACEDHEREAREWITHINEASYREACHANDREQUIRELITTLEPACKAGINGONLYFILESWITHATAGORTAGXEXTENSIONARERECOGNIZEDBYTHECONTAINERTOBETAGFILESTAGFILESTHATAPPEARINANYOTHERLOCATIONARENOTCONSIDEREDTAGEXTENSIONSANDMUSTBEIGNOREDBYTHEJSPCONTAINERFOREXAMPLE,ATAGFILETHATAPPEARSINTHEROOTOFAWEBAPPLICATIONWOULDBETREATEDASCONTENTTOBESERVEDJSP842PACKAGINGINAJARTOBEACCESSIBLE,TAGFILESBUNDLEDINAJARREQUIREATAGLIBRARYDESCRIPTORTAGFILESTHATAPPEARINAJARBUTARENOTDEFINEDINATLDMUSTBEIGNOREDBYTHEJSPCONTAINERJSP20ADDSANADDITIONALTLDELEMENTTODESCRIBETAGSWITHINATAGLIBRARY,NAMELYTHEELEMENTREQUIRESANDSUBELEMENTS,WHICHDEFINETHETAGNAMEANDTHEFULLPATHOFTHETAGFILEFROMTHEROOTOFTHEJAR,RESPECTIVELYINAJARFILE,THEELEMENTMUSTALWAYSBEGINWITH/METAINF/TAGSTHEVALUESFORTHEOTHERSUBELEMENTSOFOVERRIDETHEDEFAULTSSPECIFIEDINTHETAGDIRECTIVENOTETHATITISPOSSIBLETOCOMBINEBOTHCLASSICTAGHANDLERSANDTAGHANDLERSIMPLEMENTEDUSINGTAGFILESINTHESAMETAGLIBRARYBYCOMBININGTHEUSEOFANDELEMENTSUNDERTHEELEMENTTHISMEANSTHATINMOSTINSTANCESTHECLIENTISUNAWAREOFHOWTHETAGEXTENSIONWASIMPLEMENTEDGIVENTHATANDSHAREANAMESPACE,ATAGLIBRARYISCONSIDEREDINVALIDANDMUSTBEREJECTEDBYTHECONTAINERIFAELEMENTHASASUBELEMENTWITHTHESAMECONTENTASASUBELEMENTINAELEMENTANYATTEMPTTOUSEANINVALIDTAGLIBRARYMUSTTRIGGERATRANSLATIONERRORJSP85THEATTRIBUTEDIRECTIVETHEATTRIBUTEDIRECTIVEISANALOGOUSTOTHEELEMENTINTHETAGLIBRARYDESCRIPTOR,ANDALLOWSFORTHEDECLARATIONOFCUSTOMACTIONATTRIBUTESEXAMLESSYNTAXATTRIBUTE_DIRECTIVE_ATTR_LISTNAME”ATTRIBUTENAME”REQUIRED”TRUEFALSE”FRAGMENT”TRUEFALSE”RTEXPRVALUE”TRUEFALSE”TYPE”TYPE”DESCRIPTION”DESCRIPTION”JSP86THEVARIABLEDIRECTIVETHEVARIABLEDIRECTIVEISANALOGOUSTOTHEELEMENTINTHETAGLIBRARYDESCRIPTOR,ANDDEFINESTHEDETAILSOFAVARIABLEEXPOSEDBYTHETAGHANDLERTOTHECALLINGPAGESEESECTIONJSP7147,“ACTIONDEFININGSCRIPTINGVARIABLES”FORMOREDETAILSEXAMPLESSYNTAXVARIABLE_DIRECTIVE_ATTR_LISTNAMEGIVEN”OUTPUTNAME”|NAMEFROMATTRIBUTE”ATTRNAME”ALIASLOCALNAME”VARIABLECLASS”OUTPUTTYPE”DECLARE”TRUEFALSE”SCOPE”AT_BEGINAT_ENDNESTED”DESCRIPTION”DESCRIPTION”THEDETAILSOFTHEATTRUBUTESAREASFOLLOWJSP87XMLVIEWOFATAGFILESIMILARTOJSPPAGES,TAGFILESHAVEANEQUIVALENTXMLDOCUMENT,THEXMLVIEWOFATAGFILE,THATISEXPOSEDTOTHETRANSLATIONPHASEFORVALIDATIONDURINGTHETRANSLATIONPHASEFORATAGFILE,ATAGXMLVIEWISCREATEDANDPASSEDTOALLTLVSDECLAREDINALLTAGLIBRARIESDECLAREDINTHETAGFILETHEXMLVIEWOFATAGFILEISIDENTICALTOTHEXMLVIEWOFAJSP,EXCEPTTHATTHEREAREADDITIONALXMLELEMENTSDEFINEDTOHANDLETAGFILESPECIFICFEATURETHEXMLVIEWOFATAGFILEISOBTAINEDINTHESAMEWAYTHATTHEXMLVIEWOFAJSPPAGEISOBTAINEDSEECHAPTERJSP10JSP88IMPLICITOBJECTSTAGLIBRARYDEVELOPERSWRITINGTAGFILESHAVEACCESSTOCERTAINIMPLICITOBJECTSTHATAREALWAYSAVAILABLEFORUSEWITHINSCRIPTLETSANDEXPRESSIONSTHROUGHSCRIPTINGVARIABLESTHATAREDECLAREDIMPLICITLYATTHEBEGINNINGOFTHETAGHANDLERIMPLEMENTATIONALLSCRIPTINGLANGUAGESAREREQUIREDTOPROVIDEACCESSTOTHESEOBJECTSEACHIMPLICITOBJECTHASACLASSORINTERFACETYPEDEFINEDINACOREJAVATECHNOLOGYORJAVASERVLETAPIPACKAGE,ASSHOWNINTABLEJSP85中文翻译JSP74验证有许多为什么架构一个JSP页面要符合一些验证规则的原因REQUESTTIME语义学例如一个低级的要素可能需要从一些相关的元素中获得信息在REQUESTTIME。创作工具支持例如工具在运转时可以命令一个调整。方法上的限制例如发展组可能想制约一些功能使用的方式。验证既可以在翻译时间使用也可以在要求时间使用。通常在翻译时间的验证提供了一个更好的用户体验,以及JSP的20规范中提供了一个非常灵活的翻译时间的验证机制。JSP741翻译时间机制有些翻译兼职的审定是有代表在标签库描述符。在某些情况下,为了补充这方面的资料,一个TAGEXTRAINFO阶层需要被提供。JSP7411属性信息该标签库描述符包含了基本语法信息。尤其是,属性的描述,包括他们的姓名,无论他们是任择性或强制性的,以及他们是否接受请求时的用语。此外,BODYCONTENT的内容单元,可以用来显示一个行动都必须是空的。所有的限制记叙了TLD势在必行。一个标签图书馆作者可以假定标签处理程序实例对应于一个行动,即在TLD满足所有约束表示。JSP7412校验阶级一个TAGLIBRARYVALIDATORCLASS可列在TLD的一个标签库,以请求一个JSP页面予以审定。XML对于一个JSP页面的看法是透过PAGEDATA阶级,标签库作者们可能已经找到了合适的阶级校验器可以做任何检查。JSP容器一定要非常确定所有的XML元素在XML鉴于一项JSP页面通过一个JSP中的ID属性。这个属性可以用来对位置的一个错误提供更好的信息。校验阶级机制,是作为新的JSP的12规格。一个TAGLIBRARYVALIDATOR可以在TLD中通过一些初始化参数。本例重新用校验阶级。我们期待校验阶级将被写入基于不同的XMLSCHEMA的机制(DTDS,XSCHEMA,RELAXX,其他)。如果一个明确的标准模式出现在某时刻,标准校验阶级可能被纳入最新版本的JSP的规范。JSP7413阶级验证额外的翻译时间验证可以利用验证法在TAGEXTRAINFO阶层完成。校验方法是引用翻译时间,而且通过了一项TAGDATA比如作为支持其论点。截至JSP的20,验证的默认行为被叫做ISVALID方法。ISVALID机制,是原来的验证机制引入JSP11与其余标签延期机器。标签库是经过特别设计,运行在JSP12的容器或更高应该使用校验阶级的机制。标签库是经过特别设计,运行在JSP20的容器或更高,希望用来使用TAGEXTRAINFO验证机制,这是被鼓励实行验证法主张的ISVALID方法,因为执行能力都是不推荐的。JSP742要求时间误差在某些情况下,额外要求的时间验证将在标签的处理器的方法中完成。如果错误被发现,一个JSPEXCEPTION的建议可以被提出。如果没发现,这个对象将调用JSP规范中的ERRORPAGE机制。JSP75协定和其他问题本节是不规范的,虽然它反映了良好的设计手法。JSP751如何界定新的固有物体我们主张下列类型来介绍固有物体定义一个标签库。添加了一项叫做DEFINEOBJECTS的行动来界定理想的对象。该JSP页面,可以用如下方法使这些物体可利用开始使用物体这种办法的优点是不需要新的机器和制作非常明确的从属物。在某些情况下在这些可利用的物体中有可能有一个执行从属物。举例来说,他们可能会提供有权使用一些只存在于某一特定的执行的功能。由标签扩展类测试在运行时间上存在某些执行依赖特征及提出一个运行时间错误这是可以做到的(当然,这使网页的J2EE兼容)。这个机制,加上有权使用元始据信息允许提供给厂商,使厂商的创新符合标准。注释如果一个特点被增加了一个JSP的规范,并且厂商还提供了通过其供应商的具体运作机制的功能,标准的机制也显示出JSP的规范将“胜利“。这意味着厂商规格机制可以慢慢迁移到规范的,因为它们证明了其有效性。JSP752获得供应商的具体信息如果供应商联合一些资料,这没有被描述在目前版本的TLD的一些标签库,它可以这样做通过插上的一份它控制的资料文件,在在标签库居住的网站应用的WEBINF部分插入该文件,并使用标准的SERVLET24机制,以获得这方面的资料。JSP753定制标签库一个标签库可以在装配和部署时间进行定制。例如,一个标签库,可提供存取至数据库,可定制的登录名和密码信息。在SERVLET的24规格中为用户化信息的WEBXML中有没有方便的地方。一个规范的机制可能是一个即将到来的JSP规范的一部分,但在这段期间的建议是一个标签库作者把这个信息放置在一个中所周知的地点在一些资源在WEBINF/WEB应用的一部分和获得它通过GETRESOURCE号召SERVLETCONTEXT中。CHAPTERJSP8标签档案这一章描述了标签档案的细节,一个JSP的20设施,承认网页作者对作者标签延期只使用JSP的语法。在过去,概括陈述逻辑的可重新使用的能力,功能齐全的标签库只是提供给开发人员进行了合理数量的JAVA经验。标签档案,把重用的能力带给现有的基本页作者,他们不需要知道JAVA语言。当连同JSP的碎片和简单的标签处理使用时,这些观念有能力简化JSP大幅度开发,甚至使那些知道JAVA语言的开发者。JSP81总的看法截至JSP的20版本,JSP的编译器必须承认标签档案。标签文件是一个源文件,提它为一页作者提供了JSP代码的摘要部分的方法,并使之通过一个可以再用的定制的行动。标签文件允许JSP页面作者使用JSP语法创造标签库。这意味着页面作者不再需要知道JAVA或去问谁知道怎样用JAVA写标签扩展名。即使是页面作者或知道JAVA的标签库的开发者,当发展的标签主要输出模板文本时,写标签档案也会更方便。所需文件扩展为一个标签档案是TAG或者TAGX。如本例用JSP档案,但实际标签,可组成一个最高档案,其中包括其它文件,它们中包含或一个完整的标签或部分标签档案。正如一个JSP的文件被建议延长为一个部分是JSPF,建议延长为一个部分的标签档案是TAGF。JSP82标签文件的语法一个标签文件的语法类似一个JSP页面,符合下列情况除外指令一些指令,不具备或只具备有限的可用性,并为一些标签文件的具体指示是可利用的。见第JSP85,“标记的文件指示,“来直接讨论标签档案。和标准行动只可能用在标签档案上。在JSP1310节中的EBNF语法,“JSP语法文法”叙述了标记档案的语法。生产赞助的标签档案是JSPTAGDEF。详情见标签档案的XML语法中的JSP86。JSP83标签档案的语义学对于每个标签文件中的WEB应用,标签处理器使JSP页面和其他标签档案可利用。如何这么做的具体情况被放在容器实施。举例来说,有些容器可以选择编译标签档案转换成JAVA的标签处理,而其他的可能决定解释标签处理。但是容器选择编写标签处理程序,下列条件必须适用于所有的标签处理程序定义为标签档案标签文件的执行必须保留一份该JSPCONTEXT的实例通过给它援引页面经SETJSPCONTEXT方法。这就是所谓援引JSP的背景。标签文件的执行必须创造并维持一个第二审的JSPCONTEXT,称为JSP的背景封套。如果援引JSP的背景是一个实例PAGECONTEXT,JSP的背景封套还必须是一个实例PAGECONTEXT。GETJSPCONTEXT()被调用时这个封套必须被归还。对于每次调用标签,JSP的背景封套必须出示一个明确的页面范围,它们必须对那些在援引JSP的背景相同,在JSP的背景封套时作出上述范围时必须作相应的修改更新工作。然而,任何页面范围的修改,必须不影响援引JSP的背景。对于每个公布和指定的属性,一个可变的网页必须建立在一个JSP的背景封套的页面范围。变量的名字必须和申报的属性名称相同。变量的价值必须在调用时通过的属性的价值。每个宣布的属性为可选并没有具体说明的,没有页面范围的变量就诞生了。如果标签接受动态属性,然后名字和价值观这些动态属性必须揭露以标签文件,详见作为表JSP82。对于所有意图和目的不同于同步的AT_BEGIN,NESTED,和AT_END脚本变量,有效的JSPCONTEXT标签文件是JSP的背景封套。举例来说,JSPCONTEXT脚本变量必须点到JSP的背景封套,而非援引JSP的背景。标签处理程序必须表现得好象标签库描述符登陆被界定为它一样,根据标签,属性,和可变指示出现在标签文件的翻译单位。对于一个将来的网页标签档案它是合法的标准行动。正如为JSP页面,远期是经过处理的请求调度。从REQUESTDISPATCHERFORWARD方法返回后,生成的标记处理器必须停止加工标签文件并扔出JAVAXSERVLETJSPSKIPPAGEEXCEPTION。同样,如果一个标签文件引用的一个典型标签处理程序,其中从DOENDTAG方法返回的SKIP_PAGE,或者如果它引用一个简单的标签处理,其中在DOTAGMETHOD中扔出SKIPPAGEEXCEPTION,生成的标记处理程序必须终止并且SKIPPAGEEXCEPTION必须被抛出。无论是这两种情况下,DOCATCH和DOFINALLY方法,必须被迫圈中标签,它在返回前执行TRYCATCHFINALLY接口。该圈中经典标签的DOENDTAG方法不能被执行。当从标签档案调用一个典型标签处理程序应该小心。一般来说,SIMPLETAG扩展可用于除SERLE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 惠东消防知识培训课件
- 文库发布:情景式课件
- 甘肃省天水市甘谷县第一中学2026届化学高一第一学期期末质量跟踪监视试题含解析
- 2026届江苏省常州市奔牛高级中学化学高一上期末调研试题含解析
- 学校四班级新学期方案
- 陕西化学试题及答案
- 酒水知识试题及答案
- 探险之旅:技能揭秘
- 喉镜操作考试题及答案
- 家电公司采购档案管理细则
- 体育场看台座椅施工方案
- 老年人消毒护理与急救技术
- 2025 年艺术新课程标准试题与答案(2022 版)
- 数据中心列头柜基础知识
- 数据中心项目实施计划与时间安排
- 2025矿山承包合同范文
- 人教版(2024)数学七年级上册期末测试卷(含答案)
- 警务应急处突
- 锁骨骨折的护理课件
- 2024华为干部管理资料第7版
- 超级动漫IP奶龙-品牌手册
评论
0/150
提交评论