2010-12-01 2 views
0

JSP 파일의 줄 3에 ​​내 응용 프로그램을 실행할 때이 오류가 발생합니다. 내 tld 파일 또는 JSP 파일과 관련이 있습니까?이 오류는 JSP에서 무엇을 의미합니까? (특성에 알 수없는 요소 (rtexpvalue))

org.apache.jasper.JasperException : /DisplayAllOrders.jsp(3,62) PWC6106 : 특성의 알 수없는 요소 (rtexpvalue).

는 TLD 파일 :

<?xml version="1.0" encoding="UTF-8"?> 
<taglib version="2.0" xmlns="http://java.sun.com/xml/ns/j2ee" lns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd"> 
<tlib-version>1.0</tlib-version> 
<short-name>week07_portfolio</short-name> 
<uri>/WEB-INF/tlds/week07_portfolio</uri> 
<tag> 
<name>DisplayOrders</name> 
<tag-class>tags.DisplayOrders</tag-class> 
<body-content>JSP</body-content> 
<variable> 
    <name-given>order</name-given> 
    <variable-class>beans.Order</variable-class> 
    <declare>true</declare> 
    <scope>NESTED</scope> 
</variable>  
<attribute> 
     <name>ordersListName</name> 
     <required>true</required> 
     <rtexpvalue>false</rtexpvalue> 
</attribute> 
    </tag> 
    <tag> 
    <name>DisplayOrderLines</name> 
    <tag-class>tags.DisplayOrderLines</tag-class> 
    <body-content>JSP</body-content> 
<variable> 
    <name-given>orderLine</name-given> 
    <variable-class>beans.OrderLine</variable-class> 
    <declare>true</declare> 
    <scope>NESTED</scope> 
</variable>  
<attribute> 
     <name>linesListName</name> 
     <required>true</required> 
     <rtexpvalue>false</rtexpvalue> 
    </attribute>  
    </tag> 
</taglib> 

JSP 파일 :

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<%@ page import="java.util.*, java.text.*, beans.*" %> 
<%@ taglib uri="/WEB-INF/tlds/week07_portfolio" prefix="wk07" %> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 

<% if (session.getAttribute("orderList") == null) 
{ 
    throw new ServletException("No order list available"); 
} 

int ctr = 0; 
SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); 

%>

<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <title>Week 07, Portfolio Exercise</title> 
    <link rel="stylesheet" type="text/css" href="Week07_Portfolio.css"> 
    </head> 
    <body> 
    <h1>Week 07, Portfolio Exercise</h1> 
    <h2>Order list</h2> 

    <wk07:DisplayOrders ordersListName="orderList"> 
     <table> 
      <tr class="header"> 
       <td>Order Num: <%= order.getOrderNum() %></td> 
       <td>Customer: <%= order.getName() %></td> 
       <td>Date: <%= df.format(order.getOrderDate()) %></td> 
      </tr> 
     </table> 

     <% pageContext.setAttribute("orderLines", order.getOrderLines()); 
      ctr = 0; 
     %> 
     <table> 
      <tr> 
       <th>Ref. Code</th> 
       <th>Item</th> 
       <th>Qty</th> 
      </tr> 
     <wk07:DisplayOrderLines linesListName="orderLines"> 
      <tr<%= ctr++ % 2 == 0 ? " class=\"shaded\"" : ""%>> 
       <td><%= orderLine.getItem().getRefCode()%></td> 
       <td><%= orderLine.getItem().getName()%></td> 
       <td><%= orderLine.getQuantity()%></td> 
      </tr> 
     </wk07:DisplayOrderLines> 
     </table> 
     <p>&nbsp;</p> 
    </wk07:DisplayOrders>   
</body> 

답변

2

<rtexprvalue>이어야합니다.

+0

새 안경이 필요합니다! – BalusC

1

귀하의 taglib 루트 선언이 끊어집니다.

<taglib version="2.0" 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    lns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd"> 

lns

xmlns해야하며 j2eeweb-jsptaglibrary_2_0.xsd 사이 /이 있어야합니다. 사이드 참고로

<taglib version="2.0" 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"> 

, 당신의 web.xmlweb-app 루트 선언은 서블릿 2.4에 따라 적어도 있는지 확인 : 다음과 같이

올바른 선언입니다. 그렇지 않으면 여전히 작동하지 않습니다. JSP에서 십 년간 때문에 권장하지 않습니다 스크립틀릿을 사용하여 문제에 관련없는

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> 

.

+0

고마워, 나는 그것을 바꿨다. 플러스 다른 대답은 이제 작동 중이다. JSP에서 스크립틀릿을 더 이상 사용하지 않을 것이다. – kamweshi

+0

반갑습니다. – BalusC