java
  • jsp
  • custom-tag
  • 2009-07-03 51 views 0 likes 
    0

    嗨自定义标签,我有一个自定义标签的JSP问题在JSP

    <dc:drawMultiSelect 
        availableLabel='<%=request.getAttribute("availableCoreColumn").toString()%>' 
        selectedLabel='<%=request.getAttribute("selectedCoreColumns").toString()%>' 
        availableCName="selectCol" 
        selectedCName="selectedCol" 
        availableCId="select1" 
        selectedCId="select2" 
        sort="off" 
        columnHelp="on" 
        helpURL='<%=((Map)request.getAttribute("constants")).get("WEB_CONTEXT").toString()%>/web/ABCGlossary.jsp' 
        selectSize="8" 
        selectWidth="250px" 
        selectMultiple="true" 
        availableMap='<%=((HashMap) request.getAttribute("availableColMap"))%>' 
        selectedMap='<%=((HashMap) request.getAttribute("selectedColMap"))%>'> 
    

    除了 HELPURL =” <%=这是工作的罚款((图)request.getAttribute( “常数”))获得( “WEB_CONTEXT”)。的toString()%> /网络/ ABCGlossary.jsp”

    它是没有得到在JSP 它给输出被翻译的一些像 (%)=((MAP)request.getAttribute(”常量“))。get(”WEB_CONTEXT“)。toString()%>/web/ABCGlossary.jsp

    你能帮我解决它有什么问题吗?rtexprvalue

    回答

    2

    这很可能是你混合脚本表达式和文字的方式,你混淆了JSp编译器。

    如果这是JSP 2.0或更高版本,可以让这个更可读,通过使用EL表达式,而不是小脚本,像这样:

    helpURL="${requestScope.constants.WEB_CONTEXT + '/web/ABCGlossary.jsp'}" 
    

    做不到这一点,只是让你的生活更轻松通过指定的值helpURL到一个单独的变量,然后在您的标签中提到它

    <% String helpURL = ((Map)request.getAttribute("constants")).get("WEB_CONTEXT").toString() + '/web/ABCGlossary.jsp' %> 
    
    helpURL='<%= helpURL %>' 
    
    +0

    好的建议。 +1 – 2009-07-03 09:18:30

    相关问题